卷积神经网络中二分类的问题研究

卷积神经网络中二分类的问题研究
深度学习中典型的一个模型就是卷积神经网络,利用神经网络对模板进行训练,所用到的模板为手写数字样本数据库mnist_uint8.mat,其中保存了6000个训练样本和10000个测试样本。其中:
train_x为一个60000*784的矩阵,其中784为24*24,即样本图像的分辨率转换成线性的数据表示。在卷积神经网络中,要使用到的是24*24的矩阵进入通道,故在使用之前还要对该矩阵进行重新整形,即使用reshape函数进行。
train_y为一个60000*10的矩阵其中10代表数字一共有10个分类,对应train_x中每一行的分类位置,将该类置为1,比如说,第一个样本为第二类,则在train_y中的第一个样本中的第二类的值置为1,其他九个值为0.
更改分类样本。
将train_y中的数据进行更改,改为两类,train_y中的矩阵有10列,将其中的第一列放到一个两列的矩阵trainy中,trainy的第二列的值根据第一列确定,如果第一列的值为1,则第二列的值为0,如此就改成了两类的问题,即将train_x中所有的样本都改成两类。
更改代码如下:

trainy=zeros(60000,2);
for i=1:60000
    trainy(i,1)=train_y(i,1);
end
for i=1:60000
    if trainy(i,1)==1;
        trainy(i,2)=0;
    else
        trainy(i,2)=1;
    end
end
save trainy;

修改好样本之后将样本加载到代码中,替换之前的样本,运行之后得到结果如下:
一次迭代的错误率为0.0125
五次迭代的错误率为0.0075
十次迭代的错误率为0.0049
卷积神经网络中二分类的问题研究_第1张图片
卷积神经网络中二分类的问题研究_第2张图片
卷积神经网络中二分类的问题研究_第3张图片
本人为初学,欢迎大家批评指正!!

你可能感兴趣的:(深度学习)