label数据预处理

label(数字图像真实值)标签字段原本是0~9的数字,必须以one-hot encoding(一位有效编码)转换为10个0或1的组合,例如数字7经过one-hot encoding转换后是0000000100,正好对应10个输出神经元
1.查看原本的label标签字段
以下列指令来查看训练数据label标签字段的前5项训练数据,我们可以看到这是0~9的数字

print(y_train_label[:5])
[5 0 4 1 9]
2.label标签字段进行 one-hot-encoding转换
下面的程序代码使用np_utils.to_categorical 分别传入参数 y_train_label(训练数据),y_test_label(测试数据)的label标签字段,进行one-hot encoding转换

y_trainOneHot = np_utils.to_categorical(y_train_label)
y_testOneHot = np_utils.to_categorical(y_test_label)
3.查看进行one-hot encoding转换之后的label标签字段
进行one-hot encoding转换之后,查看训练数据label标签字段的前5项数据,我们可以看到转换后的结果

print(y_trainOneHot[:5])
[[0. 0. 0. 0. 0. 1. 0. 0. 0. 0.]
[1. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
[0. 0. 0. 0. 1. 0. 0. 0. 0. 0.]
[0. 1. 0. 0. 0. 0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0. 0. 0. 0. 0. 1.]]