tf.feature_column.numeric_column
| Просмотреть исходный код на GitHub |
Представляет числовые или вещественные признаки.
tf.feature_column.numeric_column(
key,
shape=(1,),
default_value=None,
dtype=tf.dtypes.float32,
normalizer_fn=None
)
Пример:
Предположим, у нас есть данные с двумя признаками 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')
Столбец признаков описывает набор преобразований входных данных.
Например, чтобы «разбить» признак a, оберните столбец a в feature_column.bucketized_column. Указав границы разбиения 5, API `bucketized_column` разделит этот признак на всего 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)
| Аргументы | |
|---|---|
key | Уникальная строка, идентифицирующая входной признак. Она используется в качестве имени столбца и ключа словаря для конфигураций разбора признаков, объектов признаков Tensor и столбцов признаков. |
shape | Итерируемый объект целых чисел, определяющий форму Tensor. Целое число может быть предоставлено, что означает одно измерение Tensor заданной ширины. Столбец Tensor будет иметь форму [размер_пакета] + shape. |
default_value | Одно значение, совместимое с dtype, или итерируемый объект значений, совместимых с dtype, которое столбец принимает во время разбора tf.Example данных, если данные отсутствуют. Значение по умолчанию None приведет к ошибке tf.io.parse_example, если пример не содержит этот столбец. Если указано одно значение, то это значение будет применено в качестве значения по умолчанию для каждого элемента. Если указан итерируемый объект значений, то форма default_value должна быть равна указанной форме shape. |
dtype | Определяет тип значений. Значение по умолчанию — tf.float32. Должно быть неквантованным, вещественным целым или плавающим типом. |
normalizer_fn | Если не None, функция, которая может быть использована для нормализации значения тензора после применения default_value для разбора. Функция нормализации принимает входной Tensor в качестве аргумента и возвращает выходной Tensor. (например, lambda x: (x - 3.0) / 4.2). Обратите внимание, что, хотя наиболее распространенное применение этой функции — нормализация, она может использоваться для любых типов преобразований Tensorflow. |
| Возвращаемое значение | |
|---|---|
A NumericColumn. |
| Исключения | |
|---|---|
TypeError | если любое измерение в форме не является целым числом |
ValueError | если любое измерение в форме не является положительным целым числом |
TypeError | если default_value является итерируемым объектом, но не совместим с shape |
TypeError | если default_value не совместим с dtype. |
ValueError | если dtype не может быть преобразован в tf.float32. |
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.9/api_docs/python/tf/feature_column/numeric_column