tf.lookup.StaticHashTable
Обобщённая хеш-таблица, которая становится неизменяемой после инициализации.
tf.lookup.StaticHashTable(
initializer, default_value, name=None
)
Пример использования:
keys_tensor = tf.constant(['a', 'b', 'c'])
vals_tensor = tf.constant([7, 8, 9])
input_tensor = tf.constant(['a', 'f'])
table = tf.lookup.StaticHashTable(
tf.lookup.KeyValueTensorInitializer(keys_tensor, vals_tensor),
default_value=-1)
table.lookup(input_tensor).numpy()
array([ 7, -1], dtype=int32)
Или для более питонического кода:
table[input_tensor].numpy()
array([ 7, -1], dtype=int32)
Результат операции поиска имеет такую же форму, как и аргумент:
input_tensor = tf.constant([['a', 'b'], ['c', 'd']])
table[input_tensor].numpy()
array([[ 7, 8],
[ 9, -1]], dtype=int32)
| Аргументы |
initializer | Инициализатор таблицы. См. HashTable для поддерживаемых типов ключей и значений. |
default_value | Значение по умолчанию, используемое, если ключ отсутствует в таблице. |
name | Имя операции (необязательно). |
| Атрибуты |
default_value | Значение по умолчанию таблицы. |
key_dtype | Тип данных ключей таблицы. |
name | Имя таблицы. |
resource_handle | Возвращает дескриптор ресурса, связанный с этим ресурсом. |
value_dtype | Тип данных значений таблицы. |
Методы
export
Просмотреть исходный код
export(
name=None
)
Возвращает тензоры всех ключей и значений в таблице.
| Аргументы |
name | Имя операции (необязательно). |
| Возвращаемые значения |
| Пара тензоров, первый из которых содержит все ключи, а второй — все значения в таблице. |
lookup
Просмотреть исходный код
lookup(
keys, name=None
)
Ищет keys в таблице, возвращает соответствующие значения.
default_value используется для ключей, отсутствующих в таблице.
| Аргументы |
keys | Ключи для поиска. Может быть как SparseTensor , так и плотным Tensor. |
name | Имя операции (необязательно). |
| Возвращаемые значения |
SparseTensor , если ключи являются разреженными, RaggedTensor , если ключи являются фрагментированными, в противном случае плотный Tensor. |
| Исключения |
TypeError | при keys или default_value не совпадают с типами данных таблицы. |
size
Просмотреть исходный код
size(
name=None
)
Вычисляет количество элементов в этой таблице.
| Аргументы |
name | Имя операции (необязательно). |
| Возвращаемые значения |
| Скалярный тензор, содержащий количество элементов в этой таблице. |
__getitem__
Просмотреть исходный код
__getitem__(
keys
)
Ищет keys в таблице, возвращает соответствующие значения.