tf.lookup.TextFileInitializer
| Просмотреть исходный код на GitHub |
Инициализаторы таблицы из текстового файла.
tf.lookup.TextFileInitializer(
filename, key_dtype, key_index, value_dtype, value_index, vocab_size=None,
delimiter='\t', name=None
)
Этот инициализатор назначает одну запись в таблицу для каждой строки в файле.
Тип ключа и значения таблицы для инициализации задаётся key_dtype и value_dtype.
Содержание ключа и значения, которые нужно получить из каждой строки, задаётся key_index и value_index.
-
TextFileIndex.LINE_NUMBERозначает использование номера строки, начиная с нуля, ожидается тип данных int64. -
TextFileIndex.WHOLE_LINEозначает использование всего содержимого строки, ожидается тип данных строка. - Значение
>=0означает использование индекса (начиная с нуля) разделённой строки на основеdelimiter.
Например, если у нас есть файл со следующим содержимым:
emerson 10 lake 20 palmer 30
Следующий фрагмент кода инициализирует таблицу с первым столбцом в качестве ключей и вторым столбцом в качестве значений:
emerson -> 10lake -> 20palmer -> 30
table = tf.lookup.StaticHashTable(tf.lookup.TextFileInitializer(
"test.txt", tf.string, 0, tf.int64, 1, delimiter=" "), -1)
...
table.init.run()
Аналогично, для инициализации всей строки в качестве ключей и номера строки в качестве значений.
emerson 10 -> 0lake 20 -> 1palmer 30 -> 2
table = tf.lookup.StaticHashTable(tf.lookup.TextFileInitializer(
"test.txt", tf.string, tf.lookup.TextFileIndex.WHOLE_LINE,
tf.int64, tf.lookup.TextFileIndex.LINE_NUMBER, delimiter=" "), -1)
...
table.init.run()
| Аргументы | |
|---|---|
filename | Имя файла текстового файла, который будет использоваться для инициализации. Путь должен быть доступен из места, где инициализируется граф (например, рабочие процессы трейнера или оценки). Имя файла может быть скаляром Tensor. |
key_dtype | Тип данных key. |
key_index | Индекс, представляющий информацию о строке для получения значений ключей таблицы. |
value_dtype | Тип данных value. |
value_index | Индекс, представляющий информацию о строке для получения значений значений таблицы. |
vocab_size | Количество элементов в файле, если известно. |
delimiter | Разделитель для разделения полей в строке. |
name | Имя операции (необязательно). |
| Исключения | |
|---|---|
ValueError | при пустом имени файла или когда типы данных ключа и значения таблицы не совпадают с ожидаемыми типами данных. |
| Атрибуты | |
|---|---|
key_dtype | Ожидаемый тип данных ключа таблицы. |
value_dtype | Ожидаемый тип данных значения таблицы. |
Методы
initialize
initialize(
table
)
Инициализирует таблицу из текстового файла.
| Аргументы | |
|---|---|
table | Таблица, которая должна быть инициализирована. |
| Возвращаемое значение | |
|---|---|
| Операция, которая инициализирует таблицу. |
| Исключения | |
|---|---|
TypeError | при несовпадении типов данных ключей и значений с типами данных ключа и значения таблицы. |
© 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.3/api_docs/python/tf/lookup/TextFileInitializer