tf.raw_ops.DynamicEnqueueTPUEmbeddingArbitraryTensorBatch
Упрощает перенос кода, использующего tf.nn.embedding_lookup_sparse().
tf.raw_ops.DynamicEnqueueTPUEmbeddingArbitraryTensorBatch(
sample_indices_or_row_splits,
embedding_indices,
aggregation_weights,
mode_override,
device_ordinal,
combiners=[],
name=None
)
embedding_indices[i] и aggregation_weights[i] соответствуют i-му признаку.
У тензоров в соответствующих позициях в трёх списках входных данных (sample_indices, embedding_indices и aggregation_weights) должна быть одинаковая форма, то есть ранг 1 с размером dim, равным общему количеству обращений к таблице, описанной соответствующим признаком.
| Аргументы | |
|---|---|
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 | Tensor типа int32. 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/versions/r2.9/api_docs/python/tf/raw_ops/DynamicEnqueueTPUEmbeddingArbitraryTensorBatch