我正在卷积神经网络上测试打印的数字(0-9)。它在MNIST数据集上提供了99+ %的准确率,但当我尝试使用安装在计算机上的字体(Ariel,Calibri,Cambria,Cambria Mathematic,Times New Roman)并训练由字体生成的图像(每种字体104张图像(总共25种字体-每种字体4张图像(差别很小))时,训练错误率不低于80%,即20%的准确率。为什么?
这是"2“个图片样本-

我调整了每个图像的大小为28 x 28。
以下是更多细节:
训练数据大小= 28 x 28图像。网络参数-作为网络的LeNet5架构-
Input Layer -28x28
| Convolutional Layer - (Relu Activation);
| Pooling Layer - (Tanh Activation)
| Convolutional Layer - (Relu Activation)
| Local Layer(120 neurons) - (Relu)
| Fully Connected (Softmax Activation, 10 outputs)这是可行的,在MNIST上保证了99+%的准确性。为什么计算机生成的字体如此糟糕?CNN可以处理数据中的大量差异。
发布于 2016-07-17 19:24:35
我认为有两个可能的问题:
Preprocessing:MNIST不仅是28px x 28px,而且:
来自NIST的原始黑白(双层)图像的大小进行了归一化,以适合20x20像素的方框,同时保留了它们的纵横比。作为归一化算法使用的反走样技术的结果,结果图像包含灰度等级。通过计算像素的质心并平移图像以将该点定位在28x28场的中心,将图像置于28x28图像的中心。
来源:MNIST website
过拟合
备注
有趣的想法!您是否尝试过简单地将经过训练的MNIST网络应用于您的数据?结果是什么?
发布于 2016-07-15 16:01:40
这可能是一个过度拟合的问题。当您的网络太复杂而无法解决问题时,可能会发生这种情况。查看这篇文章:http://es.mathworks.com/help/nnet/ug/improve-neural-network-generalization-and-avoid-overfitting.html
发布于 2016-07-17 17:13:27
这看起来肯定是一个过度拟合的问题。我看到你有两个卷积层,两个最大池层和两个完全连接的层。但是总共有多少个权重呢?你每个类只有96个例子,这肯定比你在CNN中的权重要少。请记住,您希望训练集中的实例数量至少是CNN中权重的5倍。
你有两个解决方案来提高你的CNN:
https://stackoverflow.com/questions/38389785
复制相似问题