tf.contrib.layers.scattered_embedding_column
Создаёт колонку встраивания для разреженного признака с использованием хэширования параметров.
tf.contrib.layers.scattered_embedding_column(
column_name, size, dimension, hash_key, combiner='mean', initializer=None
)
Это полезное сокращение, когда у вас есть разреженный признак, для которого вы хотите использовать встраивание, но также хотите хешировать значения встраивания по каждой размерности в переменную на основе другого хеша.
Конкретно, i-й компонент встраивания значения v находится путём извлечения весового встраивания, индекс которого является отпечатком пары (v,i).
Колонку встраивания с sparse_column_with_hash_bucket, например
embedding_column( sparse_column_with_hash_bucket(column_name, bucket_size), dimension)
можно заменить на
scattered_embedding_column( column_name, size=bucket_size * dimension, dimension=dimension, hash_key=tf.contrib.layers.SPARSE_FEATURE_CROSS_DEFAULT_HASH_KEY)
для того же числа параметров встраивания. Это, надеюсь, уменьшит влияние коллизий, но увеличит затраты на замедление обучения.
| Аргументы | |
|---|---|
column_name | Строка, определяющая имя разреженной колонки. |
size | Целое число, определяющее количество параметров в слое встраивания. |
dimension | Целое число, определяющее размерность встраивания. |
hash_key | Укажите hash_key, который будет использоваться функцией FingerprintCat64 для объединения отпечатков перекрёстных ссылок в SparseFeatureCrossOp. |
combiner | Строка, определяющая способ уменьшения, если в одной строке есть несколько записей. В настоящее время поддерживаются "mean", "sqrtn" и "sum", по умолчанию "mean". "sqrtn" часто достигает хорошей точности, особенно с колонками "мешок слов". Каждый из них можно рассматривать как нормализацию на уровне примера для колонки:
|
initializer | Функция инициализации переменной, используемая при инициализации переменных встраивания. Если не указано, по умолчанию используется tf.compat.v1.truncated_normal_initializer со средним значением 0 и стандартным отклонением 0,1. |
| Возвращаемые значения | |
|---|---|
| _ScatteredEmbeddingColumn. |
| Исключения | |
|---|---|
ValueError | если размерность или размер не являются положительными целыми числами; или если combiner не поддерживается. |
© 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/r1.15/api_docs/python/tf/contrib/layers/scattered_embedding_column