tf.feature_column.shared_embeddings
Список плотных столбцов, преобразующих разреженный категориальный вход. (устарело)
tf.feature_column.shared_embeddings(
categorical_columns,
dimension,
combiner='mean',
initializer=None,
shared_embedding_collection_name=None,
ckpt_to_load_from=None,
tensor_name_in_ckpt=None,
max_norm=None,
trainable=True,
use_safe_embedding_lookup=True
)
Это аналогично embedding_column, за исключением того, что он генерирует список столбцов встраивания, которые используют одни и те же весовые коэффициенты встраивания.
Используйте этот метод, когда ваши входные данные разреженные и одного типа (например, идентификаторы просмотренных и просмотренных видео, которые используют один и тот же словарь), и вы хотите преобразовать их в плотное представление (например, для подачи в DNN).
Входные данные должны быть списком категориальных столбцов, созданных любой из функций categorical_column_*. Все они должны быть одного типа и иметь одинаковые аргументы, за исключением key. Например, они могут быть categorical_column_with_vocabulary_file с одним и тем же vocabulary_file. Некоторые или все столбцы также могут быть weighted_categorical_column.
| Аргументы | |
|---|---|
categorical_columns | Список категориальных столбцов, созданных функцией categorical_column_with_*. Эти столбцы генерируют разреженные идентификаторы, которые являются входными данными для поиска встраивания. Все столбцы должны быть одного типа и иметь одинаковые аргументы, за исключением key. Например, они могут быть categorical_column_with_vocabulary_file с одним и тем же vocabulary_file. Некоторые или все столбцы также могут быть weighted_categorical_column. |
dimension | Целое число, определяющее размер встраивания, должно быть > 0. |
combiner | Строка, определяющая способ уменьшения, если в одной строке есть несколько записей. В настоящее время поддерживаются 'mean', 'sqrtn' и 'sum', по умолчанию используется 'mean'. 'sqrtn' часто обеспечивает хорошую точность, особенно с bag-of-words столбцами. Каждый из этих вариантов можно рассматривать как нормализацию на уровне примера для столбца. Более подробную информацию см. в tf.embedding_lookup_sparse. |
initializer | Функция инициализации переменной, которая используется при инициализации переменной встраивания. Если не указано, по умолчанию используется truncated_normal_initializer со средним значением 0.0 и стандартным отклонением 1/sqrt(dimension). |
shared_embedding_collection_name | Необязательное общее имя этих столбцов. Если не указано, будет выбрано разумное имя на основе имён categorical_columns. |
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 гарантирует отсутствие пустых строк и все весовые коэффициенты и идентификаторы являются положительными за счет дополнительных вычислительных затрат. Это относится только к тензорам входных данных размера 2 (NxM). По умолчанию True, рассмотрите возможность отключения, если вышеуказанные проверки не требуются. Обратите внимание, что наличие пустых строк не вызовет никакой ошибки, хотя результат вывода может быть 0 или опущен. |
| Возвращаемое значение | |
|---|---|
Список плотных столбцов, преобразующих разреженный вход. Порядок результатов соответствует порядку categorical_columns. |
| Возможные исключения | |
|---|---|
ValueError | если dimension не > 0. |
ValueError | если любой из переданных categorical_columns имеет другой тип или другие аргументы, чем другие. |
ValueError | если ровно один из ckpt_to_load_from и tensor_name_in_ckpt указан. |
ValueError | если initializer указан и не является вызываемым объектом. |
RuntimeError | если включено выполнение eager. |
© 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/api_docs/python/tf/feature_column/shared_embeddings