Keras中的np_utilsto_categorical()函数的参数和返回值解释
发布时间:2023-12-28 07:43:30
Keras中的np_utils.to_categorical()函数是一个用于将标签(整数形式)转换为one-hot编码的函数。下面详细解释一下其参数和返回值,并提供一个使用例子。
参数:
- y:需要转换的标签数据。可以是整数数组或一维整数向量。
- num_classes:整数,指定输出的one-hot编码的维度。默认值为None,此时函数会自动根据y中的最大值确定维度。如果指定了num_classes的值,但是y中的最大值仍然超过了num_classes-1,则会抛出一个错误。
返回值:
- one-hot编码的标签数据。返回一个二维数组,shape为 (len(y), num_classes)。
例子:
假设我们有一个包含5个样本的标签数组y,数组中的值的范围为0到2。我们可以使用np_utils.to_categorical()函数将其转换为one-hot编码。
import numpy as np from keras.utils import np_utils y = np.array([0, 1, 2, 1, 0]) one_hot_y = np_utils.to_categorical(y) print(one_hot_y)
输出结果将会是:
[[ 1. 0. 0.] [ 0. 1. 0.] [ 0. 0. 1.] [ 0. 1. 0.] [ 1. 0. 0.]]
在上面的例子中,原始的标签数组y包含了5个样本,并且值的范围是从0到2。通过调用np_utils.to_categorical(y),我们将标签数组转换为了one-hot编码。输出结果是一个二维数组,每一行代表一个样本的one-hot编码。在one-hot编码中,只有对应的标签类别的位置为1,其他位置为0。
