tf.feature_column.bucketized_column
| Просмотреть исходный код на GitHub |
Представляет дискретизированный плотный ввод, разбиение которого выполняется по boundaries.
tf.feature_column.bucketized_column(
source_column, boundaries
)
Ведра включают левую границу и исключают правую границу. А именно, boundaries=[0., 1., 2.] создает ведра (-inf, 0.), [0., 1.), [1., 2.), и [2., +inf).
Например, если входные данные равны
boundaries = [0, 10, 100]
input tensor = [[-5, 10000]
[150, 10]
[5, 100]]
то выход будет равен
output = [[0, 3]
[3, 2]
[1, 3]]
Пример:
price = tf.feature_column.numeric_column('price')
bucketized_price = tf.feature_column.bucketized_column(
price, boundaries=[...])
columns = [bucketized_price, ...]
features = tf.io.parse_example(
..., features=tf.feature_column.make_parse_example_spec(columns))
dense_tensor = tf.keras.layers.DenseFeatures(columns)(features)
Столбец bucketized_column также можно пересечь с другим категориальным столбцом с помощью crossed_column:
price = tf.feature_column.numeric_column('price')
# bucketized_column converts numerical feature to a categorical one.
bucketized_price = tf.feature_column.bucketized_column(
price, boundaries=[...])
# 'keywords' is a string feature.
price_x_keywords = tf.feature_column.crossed_column(
[bucketized_price, 'keywords'], 50K)
columns = [price_x_keywords, ...]
features = tf.io.parse_example(
..., features=tf.feature_column.make_parse_example_spec(columns))
dense_tensor = tf.keras.layers.DenseFeatures(columns)(features)
linear_model = tf.keras.experimental.LinearModel(units=...)(dense_tensor)
| Аргументы | |
|---|---|
source_column | Одномерный плотный столбец, сгенерированный с помощью numeric_column. |
boundaries | Отсортированный список или кортеж чисел с плавающей точкой, определяющий границы. |
| Возвращаемое значение | |
|---|---|
Столбец BucketizedColumn. |
| Исключения | |
|---|---|
ValueError | Если source_column не является числовым столбцом или не является одномерным. |
ValueError | Если boundaries не является отсортированным списком или кортежем. |
© 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/bucketized_column