Spec-Zone.ru › TensorFlow 2.9

tf.lookup.experimental.MutableHashTable

Реализация универсальной изменяемой таблицы хешей.

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

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

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

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

tf.compat.v1.lookup.experimental.MutableHashTable

tf.lookup.experimental.MutableHashTable(
    key_dtype,
    value_dtype,
    default_value,
    name='MutableHashTable',
    checkpoint=True,
    experimental_is_anonymous=False
)

Данные можно вставить, вызвав метод insert, и удалить, вызвав метод remove. Он не поддерживает инициализацию через метод init.

MutableHashTable требует дополнительной памяти во время операций сохранения и восстановления для создания временных тензоров ключей и значений.

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

table = tf.lookup.experimental.MutableHashTable(key_dtype=tf.string,
                                                value_dtype=tf.int64,
                                                default_value=-1)
keys_tensor = tf.constant(['a', 'b', 'c'])
vals_tensor = tf.constant([7, 8, 9], dtype=tf.int64)
input_tensor = tf.constant(['a', 'f'])
table.insert(keys_tensor, vals_tensor)
table.lookup(input_tensor).numpy()
array([ 7, -1])
table.remove(tf.constant(['c']))
table.lookup(keys_tensor).numpy()
array([ 7, 8, -1])
sorted(table.export()[0].numpy())
[b'a', b'b']
sorted(table.export()[1].numpy())
[7, 8]
Аргументы
key_dtype тип тензоров ключей.
value_dtype тип тензоров значений.
default_value Значение по умолчанию, если ключ отсутствует в таблице.
name Имя операции (необязательно).
checkpoint Если True, содержимое таблицы сохраняется и восстанавливается из контрольных точек. Если shared_name пусто для таблицы с контрольными точками, она используется совместно с именем узла таблицы.
experimental_is_anonymous Использовать анонимный режим для таблицы (по умолчанию False). В анонимном режиме к ресурсу таблицы можно получить доступ только через дескриптор ресурса. Его нельзя найти по имени. Когда все дескрипторы ресурсов, указывающие на этот ресурс, исчезнут, ресурс будет автоматически удален.
Исключения
ValueError Если checkpoint равен True, а имя не было указано.
Атрибуты
key_dtype Тип данных ключа таблицы.
name Имя таблицы.
resource_handle Возвращает дескриптор ресурса, связанный с этим ресурсом.
value_dtype Тип данных значения таблицы.

Методы

export

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

export(
    name=None
)

Возвращает тензоры всех ключей и значений в таблице.

Аргументы
name Имя операции (необязательно).
Возвращаемое значение
Пара тензоров, первый тензор содержит все ключи, а второй — все значения в таблице.

insert

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

insert(
    keys, values, name=None
)

Связывает keys с values.

Аргументы
keys Вставляемые ключи. Может быть тензором любой формы. Должен соответствовать типу ключа таблицы.
values Значения, которые будут связаны с ключами. Должен быть тензор такой же формы, как keys, и соответствовать типу значения таблицы.
name Имя операции (необязательно).
Возвращаемое значение
Созданная операция.
Исключения
TypeError когда keys или values не соответствуют типам данных таблицы.

lookup

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

lookup(
    keys, dynamic_default_values=None, name=None
)

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

Значение по умолчанию используется для ключей, отсутствующих в таблице.

Аргументы
keys Ключи для поиска. Может быть тензором любой формы. Должен соответствовать типу key_dtype таблицы.
dynamic_default_values Значения, которые нужно использовать, если ключ отсутствует в таблице. Если None (по умолчанию), используется table.default_value. Форма dynamic_default_values должна быть такой же, как у table.default_value или тензора результата поиска. В последнем случае каждый ключ будет иметь свое значение по умолчанию.

Например:

keys = [0, 1, 3]
dynamic_default_values = [[1, 3, 4], [2, 3, 9], [8, 3, 0]]

# The key '0' will use [1, 3, 4] as default value.
# The key '1' will use [2, 3, 9] as default value.
# The key '3' will use [8, 3, 0] as default value.
name Имя операции (необязательно).
Возвращаемое значение
Тензор, содержащий значения в той же форме, что и keys, используя тип значения таблицы.
Исключения
TypeError когда keys не соответствуют типам данных таблицы.

remove

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

remove(
    keys, name=None
)

Удаляет keys и связанные с ним значения из таблицы.

Если ключ отсутствует в таблице, он игнорируется.

Аргументы
keys Ключи для удаления. Может быть тензором любой формы. Должен соответствовать типу ключа таблицы.
name Имя операции (необязательно).
Возвращаемое значение
Созданная операция.
Исключения
TypeError когда keys не соответствуют типам данных таблицы.

size

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

size(
    name=None
)

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

Аргументы
name Имя операции (необязательно).
Возвращаемое значение
Скалярный тензор, содержащий количество элементов в этой таблице.

__getitem__

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

__getitem__(
    keys
)

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

© 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/lookup/experimental/MutableHashTable

Spec-Zone.ru

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