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 -> 0lake -> 1palmer -> 2
Объект IdTableWithHashBuckets будет выполнять следующее отображение:
emerson -> 0lake -> 1palmer -> 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 | УСТАРЕВШАЯ ФУНКЦИЯ |
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