Spec-Zone.ru › TensorFlow 2.3

tf.keras.layers.experimental.preprocessing.CategoryEncoding

Слой категориального кодирования.

tf.keras.layers.experimental.preprocessing.CategoryEncoding(
    max_tokens=None, output_mode=BINARY, sparse=False, **kwargs
)

Этот слой предоставляет варианты сжатия данных в категориальное кодирование. Он принимает целочисленные значения в качестве входных данных и выводит плотное представление (один образец = тензор с 1 индексом из значений с плавающей точкой, представляющий данные о токенах образца) этих входных данных.

Примеры:

layer = tf.keras.layers.experimental.preprocessing.CategoryEncoding(
          max_tokens=4, output_mode="count")
layer([[0, 1], [0, 0], [1, 2], [3, 1]])
<tf.Tensor: shape=(4, 4), dtype=float32, numpy=
  array([[1., 1., 0., 0.],
         [2., 0., 0., 0.],
         [0., 1., 1., 0.],
         [0., 1., 0., 1.]], dtype=float32)>

Примеры со взвешенными входными данными:

layer = tf.keras.layers.experimental.preprocessing.CategoryEncoding(
          max_tokens=4, output_mode="count")
count_weights = np.array([[.1, .2], [.1, .1], [.2, .3], [.4, .2]])
layer([[0, 1], [0, 0], [1, 2], [3, 1]], count_weights=count_weights)
<tf.Tensor: shape=(4, 4), dtype=float64, numpy=
  array([[0.1, 0.2, 0. , 0. ],
         [0.2, 0. , 0. , 0. ],
         [0. , 0.2, 0.3, 0. ],
         [0. , 0.2, 0. , 0.4]])>

Аргументы вызова:

  • inputs: Двухмерный тензор (samples, timesteps).
  • count_weights: Двухмерный тензор с такой же формой, как inputs , указывающий на вес каждого значения образца при суммировании в режиме count. Не используется в режимах binary или tfidf.
Атрибуты
max_tokens Максимальный размер словаря для этого слоя. Если None, размер словаря не ограничен.
output_mode Спецификация для вывода слоя. По умолчанию "binary". Значения могут быть "binary", "count" или "tf-idf", настраивая слой следующим образом: "binary": Выводит один целочисленный массив на пакет, размером vocab_size или max_tokens, содержащий 1 в каждом элементе, где токен, сопоставленный с этим индексом, встречается хотя бы один раз в элементе пакета. "count": Как "binary", но целочисленный массив содержит количество раз, которое токен в этом индексе появился в элементе пакета. "tf-idf": Как "binary", но применяется алгоритм TF-IDF для поиска значения в каждом слоте токена.
sparse Булево значение. Если True, возвращает SparseTensor вместо плотного Tensor. По умолчанию False.

Методы

adapt

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

adapt(
    data, reset_state=True
)

Подстраивает состояние слоя предварительной обработки к набору данных.

Переопределяет метод adapt по умолчанию, чтобы применить соответствующую предварительную обработку к входам перед передачей в комбинировщик.

Аргументы
data Данные для обучения. Их можно передать либо как tf.data Dataset, либо как массив NumPy.
reset_state Необязательный аргумент, указывающий, нужно ли очистить состояние слоя в начале вызова adapt. Для данного слоя это должно быть True, так как он не поддерживает повторные вызовы adapt.
Исключения
RuntimeError если слой нельзя подстроить в данный момент.

set_num_elements

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

set_num_elements(
    num_elements
)

set_tfidf_data

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

set_tfidf_data(
    tfidf_data
)

© 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/keras/layers/experimental/preprocessing/CategoryEncoding

Spec-Zone.ru

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