Spec-Zone.ru › TensorFlow 1.15

tf.one_hot

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

Возвращает тензор one-hot.

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

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

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

tf.compat.v1.one_hot, `tf.compat.v2.one_hot`

tf.one_hot(
    indices, depth, on_value=None, off_value=None, axis=None, dtype=None, name=None
)

Позиции, представленные индексами в indices, принимают значение on_value, а все остальные позиции — значение off_value.

on_value и off_value должны иметь совпадающие типы данных. Если dtype также предоставлен, они должны иметь тот же тип данных, что и указано в dtype.

Если on_value не предоставлен, он будет по умолчанию иметь значение 1 с типом dtype.

Если off_value не предоставлен, он будет по умолчанию иметь значение 0 с типом dtype.

Если входной indices имеет ранг N, выходной тензор будет иметь ранг N+1. Новая ось создается на измерении axis (по умолчанию новая ось добавляется в конец).

Если indices — скаляр, форма вывода будет вектором длины depth.

Если indices — вектор длиной features, форма вывода будет:

features x depth if axis == -1
depth x features if axis == 0

Если indices — матрица (пакет) с формой [batch, features], форма вывода будет:

batch x features x depth if axis == -1
batch x depth x features if axis == 1
depth x batch x features if axis == 0

Если indices — RaggedTensor, аргумент 'axis' должен быть положительным и ссылаться на ось, не являющуюся ragged. Вывод будет эквивалентен применению 'one_hot' к значениям RaggedTensor и созданию нового RaggedTensor из результата.

Если dtype не предоставлен, он попытается предположить тип данных on_value или off_value, если один или оба из них переданы. Если ни on_value, ни off_value, ни dtype не предоставлены, dtype по умолчанию будет иметь значение tf.float32.

Примечание: Если требуется выходной тип данных, не являющийся числовым (tf.string, tf.bool и т. д.), то и on_value, и off_value должны быть предоставлены функции one_hot.

Пример:

indices = [0, 1, 2]
depth = 3
tf.one_hot(indices, depth)  # output: [3 x 3]
# [[1., 0., 0.],
#  [0., 1., 0.],
#  [0., 0., 1.]]

indices = [0, 2, -1, 1]
depth = 3
tf.one_hot(indices, depth,
           on_value=5.0, off_value=0.0,
           axis=-1)  # output: [4 x 3]
# [[5.0, 0.0, 0.0],  # one_hot(0)
#  [0.0, 0.0, 5.0],  # one_hot(2)
#  [0.0, 0.0, 0.0],  # one_hot(-1)
#  [0.0, 5.0, 0.0]]  # one_hot(1)

indices = [[0, 2], [1, -1]]
depth = 3
tf.one_hot(indices, depth,
           on_value=1.0, off_value=0.0,
           axis=-1)  # output: [2 x 2 x 3]
# [[[1.0, 0.0, 0.0],   # one_hot(0)
#   [0.0, 0.0, 1.0]],  # one_hot(2)
#  [[0.0, 1.0, 0.0],   # one_hot(1)
#   [0.0, 0.0, 0.0]]]  # one_hot(-1)

indices = tf.ragged.constant([[0, 1], [2]])
depth = 3
tf.one_hot(indices, depth)  # output: [2 x None x 3]
# [[[1., 0., 0.],
#   [0., 1., 0.]],
#  [[0., 0., 1.]]]
Аргументы
indices Список индексов.
depth Скаляр, определяющий глубину измерения one-hot.
on_value Скаляр, определяющий значение заполнения выхода, когда indices[j] = i. (по умолчанию: 1)
off_value Скаляр, определяющий значение заполнения выхода, когда indices[j] != i. (по умолчанию: 0)
axis Ось заполнения (по умолчанию: -1, новая внутренняя ось).
dtype Тип данных выходного тензора.
name Имя операции (необязательно).
Возвращает
output Тензор one-hot.
Возбуждает
TypeError Если тип данных on_value или off_value не совпадает с dtype
TypeError Если тип данных on_value и off_value не совпадают

© 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/r1.15/api_docs/python/tf/one_hot

Spec-Zone.ru

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