Spec-Zone.ru › TensorFlow 2.9

tf.tpu.experimental.embedding.TPUEmbeddingForServing

Среднеуровневый API TPUEmbedding, работающий на CPU для обслуживания.

Просмотр псевдонимов

Псевдонимы совместимости для миграции

См. Руководство по миграции для получения дополнительной информации.

tf.compat.v1.tpu.experimental.embedding.TPUEmbeddingForServing

tf.tpu.experimental.embedding.TPUEmbeddingForServing(
    feature_config: Union[tf.tpu.experimental.embedding.FeatureConfig, Iterable],
    optimizer: Optional[tpu_embedding_v2_utils._Optimizer]
)
Примечание: Этот класс предназначен для использования с таблицами встраивания, обученными на TPU и предназначенными для обслуживания на CPU. Поэтому класс должен быть инициализирован только в стратегии, отличной от TPU. В противном случае будет выведено сообщение об ошибке.

Сначала можно обучить свою модель с помощью класса TPUEmbedding и сохранить контрольные точки. Затем используйте этот класс для восстановления контрольных точек для обслуживания.

Сначала обучите модель и сохраните контрольные точки.

model = model_fn(...)
strategy = tf.distribute.TPUStrategy(...)
with strategy.scope():
  embedding = tf.tpu.experimental.embedding.TPUEmbedding(
      feature_config=feature_config,
      optimizer=tf.tpu.experimental.embedding.SGD(0.1))

# Your custom training code.

checkpoint = tf.train.Checkpoint(model=model, embedding=embedding)
checkpoint.save(...)

Затем восстановите контрольные точки и выполните обслуживание.

# Restore the model on CPU.
model = model_fn(...)
embedding = tf.tpu.experimental.embedding.TPUEmbeddingForServing(
      feature_config=feature_config,
      optimizer=tf.tpu.experimental.embedding.SGD(0.1))

checkpoint = tf.train.Checkpoint(model=model, embedding=embedding)
checkpoint.restore(...)

result = embedding(...)
table = embedding.embedding_table
Примечание: Этот класс также можно использовать для обучения встраиванию на CPU. Но это требует преобразования между оптимизаторами Keras и оптимизаторами встраивания, чтобы переменные слотов оставались согласованными между ними.
Аргументы
feature_config Вложенная структура конфигураций tf.tpu.experimental.embedding.FeatureConfig.
optimizer Экземпляр одного из tf.tpu.experimental.embedding.SGD, tf.tpu.experimental.embedding.Adagrad или tf.tpu.experimental.embedding.Adam. При создании вне TPUStrategy может быть задан в значение None, чтобы избежать создания переменных слотов оптимизатора, что полезно для оптимизации использования памяти при экспорте модели для обслуживания, где переменные слотов не нужны.
Исключения
RuntimeError Если создано в TPUStrategy.
Атрибуты
embedding_tables Возвращает словарь таблиц встраивания, индексированных по TableConfig.

Методы

build

Просмотреть исходный код

build()

Создание переменных и переменных слотов для встраивания TPU.

embedding_lookup

Просмотреть исходный код

embedding_lookup(
    features: Any, weights: Optional[Any] = None
) -> Any

Применение стандартных операций поиска по встраиванию на CPU.

Аргументы
features Вложенная структура tf.Tensorов, tf.SparseTensorов или tf.RaggedTensorов, с той же структурой, что и feature_config. Входные данные будут приведены к типу tf.int32. Поддерживается только один тип из tf.SparseTensor или tf.RaggedTensor на вызов.
weights Если не None, вложенная структура tf.Tensorов, tf.SparseTensorов или tf.RaggedTensorов, соответствующая вышеупомянутой, за исключением того, что тензоры должны иметь тип с плавающей точкой (и они будут приведены к типу tf.float32). Для tf.SparseTensorов мы предполагаем, что indices одинаковы для параллельных записей из features, и аналогично для tf.RaggedTensorов мы предполагаем, что row_splits одинаковы.
Возвращаемое значение
Вложенная структура тензоров с той же структурой, что и входные признаки.

__call__

Просмотреть исходный код

__call__(
    features: Any, weights: Optional[Any] = None
) -> Any

Вызов среднеуровневого API для выполнения поиска встраивания.

© 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/tpu/experimental/embedding/TPUEmbeddingForServing

Spec-Zone.ru

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