Spec-Zone.ru › TensorFlow 2.4

tf.feature_column.embedding_column

Просмотреть исходный код на GitHub

DenseColumn преобразующий разреженные категориальные входные данные.

Просмотр псевдонимов

Псевдонимы для миграции

См. Руководство по миграции для получения более подробной информации.

tf.compat.v1.feature_column.embedding_column

tf.feature_column.embedding_column(
    categorical_column, dimension, combiner='mean', initializer=None,
    ckpt_to_load_from=None, tensor_name_in_ckpt=None, max_norm=None, trainable=True,
    use_safe_embedding_lookup=True
)

Используйте этот класс, когда ваши входные данные разреженные, но вы хотите преобразовать их в плотное представление (например, для подачи в DNN).

Входные данные должны быть CategoricalColumn созданным с помощью любой из функций categorical_column_*. Вот пример использования embedding_column с DNNClassifier:

video_id = categorical_column_with_identity(
    key='video_id', num_buckets=1000000, default_value=0)
columns = [embedding_column(video_id, 9),...]

estimator = tf.estimator.DNNClassifier(feature_columns=columns, ...)

label_column = ...
def input_fn():
  features = tf.io.parse_example(
      ..., features=make_parse_example_spec(columns + [label_column]))
  labels = features.pop(label_column.name)
  return features, labels

estimator.train(input_fn=input_fn, steps=100)

Вот пример использования embedding_column с моделью fn:

def model_fn(features, ...):
  video_id = categorical_column_with_identity(
      key='video_id', num_buckets=1000000, default_value=0)
  columns = [embedding_column(video_id, 9),...]
  dense_tensor = input_layer(features, columns)
  # Form DNN layers, calculate loss, and return EstimatorSpec.
  ...
Аргументы
categorical_column CategoricalColumn , созданный функцией categorical_column_with_*. Этот столбец генерирует разреженные идентификаторы, которые являются входными данными для поиска вложения.
dimension Целое число, определяющее размер вложения, должно быть > 0.
combiner Строка, определяющая способ уменьшения, если в одной строке несколько записей. В настоящее время поддерживаются 'mean', 'sqrtn' и 'sum', по умолчанию используется 'mean'. 'sqrtn' часто обеспечивает хорошую точность, особенно со столбцами «мешок слов». Каждый из них можно рассматривать как нормализацию на уровне примера для столбца. Для получения дополнительной информации см. tf.embedding_lookup_sparse.
initializer Функция инициализации переменной, используемая при инициализации переменной вложения. Если не указано, по умолчанию используется truncated_normal_initializer со средним значением 0.0 и стандартным отклонением 1/sqrt(dimension)
ckpt_to_load_from Строка, представляющая имя/шаблон контрольной точки, из которой следует восстановить веса столбца. Требуется, если tensor_name_in_ckpt не None
tensor_name_in_ckpt Название Tensor в ckpt_to_load_from из которого следует восстановить веса столбца. Требуется, если ckpt_to_load_from не None
max_norm Если не None, значения вложения нормируются по L2 до этого значения.
trainable Флаг, указывающий, обучается ли вложение. По умолчанию True.
use_safe_embedding_lookup Если true, используется safe_embedding_lookup_sparse вместо embedding_lookup_sparse. safe_embedding_lookup_sparse гарантирует отсутствие пустых строк и всех положительных значений весов и идентификаторов за счет дополнительных вычислительных затрат. Это относится только к входным тензорам формы rank 2 (NxM). По умолчанию true, рассмотрите возможность отключения, если вышеупомянутые проверки не нужны. Обратите внимание, что наличие пустых строк не вызовет ошибки, хотя результат вывода может быть 0 или опущен.
Возвращаемое значение
DenseColumn , преобразующий разреженный ввод.
Исключения
ValueError если dimension не > 0.
ValueError если точно один из ckpt_to_load_from и tensor_name_in_ckpt указан.
ValueError если initializer указан и не является вызываемым.
RuntimeError Если включено выполнение eager.

© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.4/api_docs/python/tf/feature_column/embedding_column

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API