Keras中的to_categorical()函数详解及用法示例
发布时间:2023-12-17 09:32:44
在Keras中,to_categorical()函数被用于将整数型的类别标签转换为独热编码(One-Hot Encoding)格式。整数型的类别标签通常用于分类问题的标签,但在一些情况下,我们需要将这些整数型的标签转换为独热编码的格式进行处理。
该函数的语法如下:
to_categorical(y, num_classes=None)
参数说明:
- y:待转换的整数型的标签列表或数组。
- num_classes:标签的总类别数,默认为None。如果不指定该参数,则根据y中的类别数自动推断。
该函数将输入的整数型的标签列表或数组y转换为独热编码的格式,并返回一个二维数组。
下面是一个使用to_categorical()函数的示例:
from keras.utils import to_categorical # 假设我们有一个包含6个样本的分类问题标签列表 labels = [0, 1, 2, 1, 3, 2] # 将标签转换为独热编码 one_hot_labels = to_categorical(labels) print(one_hot_labels)
输出结果为:
[[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 1, 0, 0], [0, 0, 0, 1], [0, 0, 1, 0]]
在上述示例中,我们定义了一个包含6个样本的分类问题的标签列表labels,这些标签的取值范围为0到3。然后,我们使用to_categorical()函数将这些整数型的标签转换为独热编码的格式。输出结果为一个大小为6x4的二维数组,每行表示一个样本的独热编码。
需要注意的是,to_categorical()函数默认会根据标签列表中的类别数自动推断总共有多少个类别。在上述示例中,一共有4个类别,因此输出结果为大小为6x4的二维数组。如果标签列表中的类别数为3,那么输出结果的二维数组大小将为6x3。
这就是Keras中to_categorical()函数的详解及用法示例。该函数对于将整数型的标签转换为独热编码的格式非常有用,在处理分类问题时十分方便。
