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