表示實值或數值特征。
用法
tf.feature_column.numeric_column(
key, shape=(1,), default_value=None, dtype=tf.dtypes.float32, normalizer_fn=None
)
參數
-
key
標識輸入特征的唯一字符串。它用作特征解析配置、特征Tensor
對象和特征列的列名和字典鍵。 -
shape
整數的可迭代指定Tensor
的形狀。可以給出一個整數,這意味著具有給定寬度的單個維度Tensor
。表示列的Tensor
的形狀為 [batch_size] +shape
。 -
default_value
與dtype
兼容的單個值或與dtype
兼容的值的可迭代,如果數據丟失,列在tf.Example
解析期間將采用該值。如果示例不包含此列,則默認值None
將導致tf.io.parse_example
失敗。如果提供了單個值,則將應用相同的值作為每個項目的默認值。如果提供了可迭代的值,則default_value
的形狀應等於給定的shape
。 -
dtype
定義值的類型。默認值為tf.float32
。必須是非量化的實整數或浮點類型。 -
normalizer_fn
如果不是None
,則應用可用於對default_value
之後的張量值進行歸一化的函數進行解析。 Normalizer 函數將輸入Tensor
作為其參數,並返回輸出Tensor
。 (例如 lambda x:(x - 3.0) /4.2)。請注意,即使此函數最常見的用例是規範化,它也可用於任何類型的 Tensorflow 轉換。
返回
-
一個
NumericColumn
。
拋出
-
TypeError
如果 shape 中的任何維度不是 int -
ValueError
如果形狀中的任何維度不是正整數 -
TypeError
如果default_value
是可迭代的但與shape
不兼容 -
TypeError
如果default_value
與dtype
不兼容。 -
ValueError
如果dtype
不能轉換為tf.float32
。
例子:
假設我們有兩個特征 a
和 b
的數據。
data = {'a':[15, 9, 17, 19, 21, 18, 25, 30],
'b':[5.0, 6.4, 10.5, 13.6, 15.7, 19.9, 20.3 , 0.0]}
讓我們將特征a
和b
表示為數字特征。
a = tf.feature_column.numeric_column('a')
b = tf.feature_column.numeric_column('b')
特征列說明了一組對輸入的轉換。
例如,對於 "bucketize" 函數 a
,將 a
列包裝在 feature_column.bucketized_column
中。提供5
桶邊界,bucketized_column api 將桶這個特征總共6
桶。
a_buckets = tf.feature_column.bucketized_column(a,
boundaries=[10, 15, 20, 25, 30])
創建一個DenseFeatures
層,該層將應用由tf.feature_column
對象集說明的變換:
feature_layer = tf.keras.layers.DenseFeatures([a_buckets, b])
print(feature_layer(data))
tf.Tensor(
[[ 0. 0. 1. 0. 0. 0. 5. ]
[ 1. 0. 0. 0. 0. 0. 6.4]
[ 0. 0. 1. 0. 0. 0. 10.5]
[ 0. 0. 1. 0. 0. 0. 13.6]
[ 0. 0. 0. 1. 0. 0. 15.7]
[ 0. 0. 1. 0. 0. 0. 19.9]
[ 0. 0. 0. 0. 1. 0. 20.3]
[ 0. 0. 0. 0. 0. 1. 0. ]], shape=(8, 7), dtype=float32)
相關用法
- Python tf.feature_column.crossed_column用法及代碼示例
- Python tf.feature_column.sequence_categorical_column_with_identity用法及代碼示例
- Python tf.feature_column.categorical_column_with_vocabulary_list用法及代碼示例
- Python tf.feature_column.categorical_column_with_hash_bucket用法及代碼示例
- Python tf.feature_column.bucketized_column用法及代碼示例
- Python tf.feature_column.categorical_column_with_identity用法及代碼示例
- Python tf.feature_column.sequence_numeric_column用法及代碼示例
- Python tf.feature_column.sequence_categorical_column_with_vocabulary_file用法及代碼示例
- Python tf.feature_column.sequence_categorical_column_with_vocabulary_list用法及代碼示例
- Python tf.feature_column.sequence_categorical_column_with_hash_bucket用法及代碼示例
- Python tf.feature_column.shared_embeddings用法及代碼示例
- Python tf.feature_column.categorical_column_with_vocabulary_file用法及代碼示例
- Python tf.feature_column.indicator_column用法及代碼示例
- Python tf.feature_column.weighted_categorical_column用法及代碼示例
- Python tf.feature_column.embedding_column用法及代碼示例
- Python tf.feature_column.make_parse_example_spec用法及代碼示例
- Python tf.function用法及代碼示例
- Python tf.fingerprint用法及代碼示例
- Python tf.foldl用法及代碼示例
- Python tf.foldr用法及代碼示例
注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.feature_column.numeric_column。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。