Spec-Zone.ru › TensorFlow

tf.nn.embedding_lookup

Ищет вложения для заданных ids из списка тензоров.

tf.nn.embedding_lookup(
    params, ids, max_norm=None, name=None
)

Используется в блокнотах

Используется в руководстве Используется в учебниках
  • Разреженные тензоры
  • Понимание маскирования и заполнения
  • Обучение нейронных структур на основе графов в TFX

Эта функция используется для выполнения параллельных поисков в списке тензоров в params. Это обобщение tf.gather, где params интерпретируется как разбиение большого тензора вложений.

Если len(params) > 1, каждый элемент id из ids разбивается между элементами params в соответствии с стратегией разбиения «div», что означает, что мы назначаем идентификаторы разделам непрерывным образом. Например, 13 идентификаторов разбиты на 5 разделов следующим образом: [[0, 1, 2], [3, 4, 5], [6, 7, 8], [9, 10], [11, 12]].

Если пространство идентификаторов не делится равномерно на количество разделов, каждому из первых (max_id + 1) % len(params) разделов будет назначен ещё один идентификатор.

Результаты поиска объединяются в плотный тензор. Возвращаемый тензор имеет форму shape(ids) + shape(params)[1:].

Аргументы
params Один тензор, представляющий полный тензор вложений, или список тензоров, все с одинаковой формой, за исключением первого измерения, представляющих фрагментированные тензоры вложений, следуя стратегии разбиения «div».
ids Tensor типа int32 или int64, содержащий идентификаторы для поиска в params.
max_norm Если не None, каждое вложение усекается, если его l2-норма больше этого значения.
name Имя операции (необязательно).
Возвращаемое значение
Tensor с тем же типом, что и тензоры в params.

Например, если params — это матрица 5x2:

[[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]]

или список матриц:

params[0]: [[1, 2], [3, 4]]
params[1]: [[5, 6], [7, 8]]
params[2]: [[9, 10]]

и ids это:

[0, 3, 4]

Результат будет матрицей 3x2:

[[1, 2], [7, 8], [9, 10]]
Исключения
ValueError Если params пусто.

© 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/nn/embedding_lookup

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API