Spec-Zone.ru › TensorFlow 2.4

tf.lookup.experimental.DenseHashTable

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

Реализация обобщённой изменяемой хэш-таблицы, использующей тензоры в качестве хранилища.

Псевдонимы

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

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

tf.compat.v1.lookup.experimental.DenseHashTable

tf.lookup.experimental.DenseHashTable(
    key_dtype, value_dtype, default_value, empty_key, deleted_key,
    initial_num_buckets=None, name='MutableDenseHashTable',
    checkpoint=True
)

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

Он использует "открытую адресацию" с квадратичным перепробованием для разрешения коллизий. По сравнению с MutableHashTable операции вставки, удаления и поиска в DenseHashTable обычно быстрее, но использование памяти может быть выше. Однако, DenseHashTable не требует дополнительной памяти для временных тензоров, созданных во время операций сохранения и восстановления контрольных точек.

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

table = tf.lookup.experimental.DenseHashTable(
    key_dtype=tf.string,
    value_dtype=tf.int64,
    default_value=-1,
    empty_key='',
    deleted_key='$')
keys = tf.constant(['a', 'b', 'c'])
values = tf.constant([0, 1, 2], dtype=tf.int64)
table.insert(keys, values)
table.remove(tf.constant(['c']))
table.lookup(tf.constant(['a', 'b', 'c','d'])).numpy()
array([ 0,  1, -1, -1])
Аргументы
key_dtype тип тензоров ключа.
value_dtype тип тензоров значения.
default_value Значение, используемое, если ключ отсутствует в таблице.
empty_key значение ключа, используемое для представления пустых ячеек внутри. Не должно использоваться в операциях вставки, удаления или поиска.
deleted_key значение ключа, используемое для представления удалённых ячеек внутри. Не должно использоваться в операциях вставки, удаления или поиска и должно отличаться от empty_key.
initial_num_buckets начальное количество ячеек.
name Имя операции (необязательно).
checkpoint если True, содержимое таблицы сохраняется и восстанавливается из контрольных точек. Если shared_name пусто для таблицы контрольной точки, она используется с именем узла таблицы.
Исключения
ValueError Если checkpoint равен True и имя не было указано.
Атрибуты
key_dtype Тип данных ключа таблицы.
name Имя таблицы.
resource_handle Возвращает дескриптор ресурса, связанный с этим ресурсом.
value_dtype Тип данных значения таблицы.

Методы

erase

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

erase(
    keys, name=None
)

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

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

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

export

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

export(
    name=None
)

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

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

insert

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

insert(
    keys, values, name=None
)

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

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

insert_or_assign

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

insert_or_assign(
    keys, values, name=None
)

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

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

lookup

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

lookup(
    keys, name=None
)

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

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

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

remove

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

remove(
    keys, name=None
)

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

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

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

size

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

size(
    name=None
)

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

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

__getitem__

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

__getitem__(
    keys
)

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

© 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/r2.4/api_docs/python/tf/lookup/experimental/DenseHashTable

Spec-Zone.ru

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