Spec-Zone.ru › TensorFlow 1.15

tf.contrib.lookup.IdTableWithHashBuckets

Обёртка таблицы соответствия «строка — идентификатор», которая назначает ключи вне словаря в корзины.

Наследуется от: LookupInterface

tf.contrib.lookup.IdTableWithHashBuckets(
    table, num_oov_buckets, hasher_spec=tf.contrib.lookup.FastHashSpec, name=None,
    key_dtype=None
)

Например, если экземпляр IdTableWithHashBuckets инициализирован таблицей соответствия «строка — идентификатор», которая отображает:

  • emerson -> 0
  • lake -> 1
  • palmer -> 2

Объект IdTableWithHashBuckets будет выполнять следующее отображение:

  • emerson -> 0
  • lake -> 1
  • palmer -> 2
  • <other term> -> bucket_id, где идентификатор корзины будет находиться между 3 и 3 + num_oov_buckets - 1, вычисляемый по формуле: hash(<term>) % num_oov_buckets + vocab_size

Если входной тензор ["emerson", "lake", "palmer", "king", "crimson"], результат поиска — [0, 1, 2, 4, 7].

Если table равно None, используются только корзины для ключей вне словаря.

Пример использования:

num_oov_buckets = 3
input_tensor = tf.constant(["emerson", "lake", "palmer", "king", "crimnson"])
table = tf.IdTableWithHashBuckets(
    tf.StaticHashTable(tf.TextFileIdTableInitializer(filename),
                       default_value),
    num_oov_buckets)
out = table.lookup(input_tensor).
table.init.run()
print(out.eval())

Функция хеширования, используемая для генерации идентификаторов корзин для ключей вне словаря, обрабатывается hasher_spec.

Аргументы
table Таблица, которая сопоставляет ключи tf.string или tf.int64 с идентификаторами tf.int64.
num_oov_buckets Количество корзин для ключей вне словаря.
hasher_spec Функция хеширования для назначения корзин для ключей вне словаря (необязательно).
name Имя операции (необязательно).
key_dtype Тип данных ключей, передаваемых в lookup. По умолчанию table.key_dtype , если указан table, в противном случае tf.string. Должен быть строкой или целым числом, и должен быть приводимым к типу table.key_dtype.
Исключения
ValueError при table равно None и num_oov_buckets не положительно.
TypeError при hasher_spec некорректный.
Атрибуты
init УСТАРЕВШАЯ ФУНКЦИЯ
Предупреждение: ЭТА ФУНКЦИЯ УСТАРЕЛА. Она будет удалена после 2018-12-15. Инструкции по обновлению: Используйте initializer вместо неё.
initializer
key_dtype Тип данных ключей таблицы.
name Имя таблицы.
resource_handle Возвращает дескриптор ресурса, связанный с этим ресурсом.
value_dtype Тип данных значений таблицы.

Методы

lookup

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

lookup(
    keys, name=None
)

Ищет keys в таблице, выводит соответствующие значения.

Ключи вне словаря назначаются корзинам на основе их хэшей.

Аргументы
keys Ключи для поиска. Может быть разреженным SparseTensor или плотным Tensor.
name Необязательное имя для операции.
Возвращаемое значение
Разреженный SparseTensor , если ключи разреженные, в противном случае плотный Tensor.
Исключения
TypeError при keys не соответствует типу данных ключей таблицы.

size

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

size(
    name=None
)

Вычисление количества элементов в таблице.

© 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/r1.15/api_docs/python/tf/contrib/lookup/IdTableWithHashBuckets

Spec-Zone.ru

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