【发布时间】:2016-11-18 06:58:31
【问题描述】:
我正在卷积神经网络上测试打印的数字 (0-9)。它在 MNIST 数据集上提供了 99+ % 的准确率,但是当我使用计算机上安装的字体(Ariel、Calibri、Cambria、Cambria math、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 可以处理大量数据变化。
【问题讨论】:
-
您使用的完整拓扑是什么?是原来的 LeNet5,还是你改变了任何隐藏层?如果你从头开始训练一个新模型,过拟合应该看起来还有 99+% 的成功率;你的 20% 表明了某种完全不同的问题。
-
是的,它是原始的 LeNet5,层如上所述,它适用于 MNIST 数据集,但不适用于我的数据集,我的数据集大小是 1036 幅图像,每个数字 104 幅。
标签: machine-learning ocr deep-learning image-recognition handwriting-recognition