Spec-Zone.ru › TensorFlow 2.4

tf.compat.v1.feature_column.categorical_column_with_vocabulary_file

Столбец категориальных признаков с файлом словаря.

tf.compat.v1.feature_column.categorical_column_with_vocabulary_file(
    key, vocabulary_file, vocabulary_size=None, num_oov_buckets=0,
    default_value=None, dtype=tf.dtypes.string
)

Используйте этот столбец, когда ваши входные данные представлены в строчном или целочисленном формате, и у вас есть файл словаря, который сопоставляет каждое значение целочисленному идентификатору. По умолчанию значения, отсутствующие в словаре, игнорируются. Используйте либо (но не оба) num_oov_buckets и default_value, чтобы указать, как обрабатывать значения, отсутствующие в словаре.

Для входного словаря features, features[key] является либо Tensor, либо SparseTensor. Если Tensor, пропущенные значения могут быть представлены -1 для целых чисел и '' для строк, которые будут пропущены этим столбцом признаков.

Пример с num_oov_buckets: файл '/us/states.txt' содержит 50 строк, каждая из которых содержит сокращение штата США из 2 символов. Все входные значения, присутствующие в этом файле, получают ID от 0 до 49, соответствующие номеру строки. Все другие значения хэшируются и получают ID от 50 до 54.

states = categorical_column_with_vocabulary_file(
    key='states', vocabulary_file='/us/states.txt', vocabulary_size=50,
    num_oov_buckets=5)
columns = [states, ...]
features = tf.io.parse_example(..., features=make_parse_example_spec(columns))
linear_prediction = linear_model(features, columns)

Пример с default_value: файл '/us/states.txt' содержит 51 строку — первая строка — 'XX', а остальные 50 — сокращения штатов США из 2 символов. Как буквальное 'XX' на входе, так и другие значения, отсутствующие в файле, будут получать ID 0. Все остальные получают соответствующий номер строки от 1 до 50.

states = categorical_column_with_vocabulary_file(
    key='states', vocabulary_file='/us/states.txt', vocabulary_size=51,
    default_value=0)
columns = [states, ...]
features = tf.io.parse_example(..., features=make_parse_example_spec(columns))
linear_prediction, _, _ = linear_model(features, columns)

И для создания встраивающего столбца (embedding):

columns = [embedding_column(states, 3),...]
features = tf.io.parse_example(..., features=make_parse_example_spec(columns))
dense_tensor = input_layer(features, columns)
Аргументы
key Уникальная строка, идентифицирующая входной признак. Она используется в качестве имени столбца и ключа словаря для конфигурации разбора признаков, объектов признаков Tensor и столбцов признаков.
vocabulary_file Имя файла словаря.
vocabulary_size Количество элементов в словаре. Должно быть не больше длины vocabulary_file, если меньше, то последующие значения игнорируются. Если None, то устанавливается в длину vocabulary_file.
num_oov_buckets Неотрицательное целое число, количество ведер для значений, отсутствующих в словаре. Все значения, отсутствующие в словаре, будут назначены ID в диапазоне [vocabulary_size, vocabulary_size+num_oov_buckets) на основе хэша входного значения. Положительное значение num_oov_buckets не может быть указано вместе с default_value.
default_value Целочисленное значение ID, которое нужно возвращать для значений признаков, отсутствующих в словаре, по умолчанию -1. Не может быть указано вместе с положительным num_oov_buckets.
dtype Тип признаков. Поддерживаются только строковый и целочисленный типы.
Возвращаемое значение
Столбец категориальных признаков с файлом словаря.
Исключения
ValueError Файл vocabulary_file отсутствует или недоступен.
ValueError Файл vocabulary_size отсутствует или содержит менее 1 элемента.
ValueError num_oov_buckets имеет отрицательное значение.
ValueError Одновременно указаны num_oov_buckets и default_value.
ValueError Тип dtype не является ни строковым, ни целочисленным.

© 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/compat/v1/feature_column/categorical_column_with_vocabulary_file

Spec-Zone.ru

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