tf.raw_ops.EnqueueTPUEmbeddingRaggedTensorBatch
Упрощает портирование кода, использующего tf.nn.embedding_lookup().
tf.raw_ops.EnqueueTPUEmbeddingRaggedTensorBatch(
sample_splits, embedding_indices, aggregation_weights, mode_override, table_ids,
device_ordinal=-1, combiners=[], max_sequence_lengths=[], name=None
)
sample_splits[i], embedding_indices[i] и aggregation_weights[i] соответствуют i-ому признаку. table_ids[i] указывает, какую таблицу встраивания следует использовать для поиска i-го признака.
У тензоров в соответствующих позициях в двух списках входных данных, embedding_indices и aggregation_weights, должна быть одинаковая форма, т.е. ранг 1 с размером dim_size() равным общему числу поисков в таблице, описываемой соответствующим признаком.
| Аргументы | |
|---|---|
sample_splits | Список из как минимум 1 Tensor объектов с одинаковым типом в: int32, int64. Список тензоров ранга 1, определяющих точки разрыва для разделения embedding_indices и aggregation_weights на строки. Соответствует ids.row_splits в embedding_lookup(), когда ids является RaggedTensor. |
embedding_indices | Список с длиной, равной sample_splits, Tensor объектов с одинаковым типом в: int32, int64. Список тензоров ранга 1, индексов встраиваемых таблиц. Соответствует ids.values в embedding_lookup(), когда ids является RaggedTensor. |
aggregation_weights | Список с длиной, равной sample_splits, Tensor объектов с одинаковым типом в: float32, float64. Список тензоров ранга 1, содержащих весовые коэффициенты агрегирования для каждого примера обучения. Соответствует полю values объекта RaggedTensor с теми же row_splits, что и ids в embedding_lookup(), когда ids является RaggedTensor. |
mode_override | Tensor типа string. Строковый вход, который переопределяет режим, указанный в TPUEmbeddingConfiguration. Поддерживаемые значения: {'unspecified', 'inference', 'training', 'backward_pass_only'}. Если установлено 'unspecified', используется режим, установленный в TPUEmbeddingConfiguration, в противном случае используется mode_override. |
table_ids | Список ints. Список целых чисел, определяющих идентификатор таблицы встраивания (смещение TableDescriptor в TPUEmbeddingConfiguration) для поиска соответствующего входного значения. i-й вход ищется с помощью table_ids[i]. Размер списка table_ids должен быть равен размеру списков sample_indices, embedding_indices и aggregation_weights. |
device_ordinal | Необязательный int. По умолчанию -1. TPU-устройство для использования. Должно быть >= 0 и меньше числа TPU-ядер в задаче, на которой размещен узел. |
combiners | Необязательный список strings. По умолчанию []. Список строковых скаляров, по одному для каждой таблицы встраивания, определяющие, как нормализовать активации встраивания после взвешенного суммирования. Поддерживаемые комбинирующие методы — 'mean', 'sum' или 'sqrtn'. Недопустимо, чтобы сумма весов была 0 для 'mean' или сумма квадратов весов была 0 для 'sqrtn'. Если combiners не указан, используется 'sum' для всех таблиц. |
max_sequence_lengths | Необязательный список ints. По умолчанию []. |
name | Имя операции (необязательно). |
| Возвращаемое значение | |
|---|---|
| Созданная операция. |
© 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/raw_ops/EnqueueTPUEmbeddingRaggedTensorBatch