Функция to_categorical
Функция to_categorical преобразует целочисленные метки классов
в бинарную матрицу в формате one-hot. Первым параметром функция
принимает массив или тензор с целочисленными метками. Вторым
параметром можно передать общее количество классов num_classes.
Если параметр не указан, количество классов определяется
автоматически как максимальное значение метки плюс один.
Функция возвращает матрицу, в которой каждая строка соответствует
одной метке, а столбец с индексом метки содержит единицу,
остальные элементы равны нулю.
Синтаксис
tf.keras.utils.to_categorical(y, [num_classes])
Пример
Давайте преобразуем метки 0, 1, 2 в one-hot
представление:
import tensorflow as tf
labels = [0, 1, 2]
res = tf.keras.utils.to_categorical(labels)
print(res)
Результат выполнения кода:
[[1. 0. 0.]
[0. 1. 0.]
[0. 0. 1.]]
Пример
Давайте укажем количество классов явно через параметр
num_classes:
import tensorflow as tf
labels = [0, 1, 2]
res = tf.keras.utils.to_categorical(labels, num_classes=5)
print(res)
Результат выполнения кода:
[[1. 0. 0. 0. 0.]
[0. 1. 0. 0. 0.]
[0. 0. 1. 0. 0.]]
Пример
Давайте преобразуем метки, представленные в виде тензора:
import tensorflow as tf
labels = tf.constant([1, 0, 2, 1])
res = tf.keras.utils.to_categorical(labels, num_classes=3)
print(res)
Результат выполнения кода:
[[0. 1. 0.]
[1. 0. 0.]
[0. 0. 1.]
[0. 1. 0.]]
Смотрите также
-
функцию
normalize,
которая нормализует данные -
функцию
mnist,
которая загружает датасет MNIST -
функцию
fashion_mnist,
которая загружает датасет Fashion MNIST -
функцию
cifar10,
которая загружает датасет CIFAR-10