我目前正致力于手写数字识别问题。
首先,我已经针对MNIST数据集测试了样本手写数字。
我的准确度达到53%,我需要90%以上的准确率。
以下是我迄今为止为提高准确性而尝试过的事情。
创建了我自己的数据集
我创建了41,000个示例。为了开始,我做了一个小数据集,它有10000个例子(每个数字1000个)。
数据集是在mnist格式的行上创建的(可能是想在后期使用数据集和mnist数据集进行处理)。 基于此建立的模型的准确率接近65%。
方法
所以我的问题是:
是否有其他方法/算法可以更准确地检测数字。
我是否需要更多地训练模型?
我需要清理图像吗?
我正在研究mnist数据集和我的数据集(41,000位数据),看它是否能提高准确度。
代码
针对mnist测试我的图像(在此代码之前运行mnist)
您可以找到Ipyhton笔记本电脑:
根据MNIST(脚本 - 1)
根据我的数据集测试我的样本数字(脚本 - 2)
此link
提供了脚本和图片答案 0 :(得分:3)
首先注意几点:
假设您执行了所有这些并且您没有看到改进,则可能意味着您的数据存在问题。 查看混淆矩阵以查看模型出现问题的位置。看一些错误分类的例子。根据我的经验,我在数据集中看到过1和7,几乎是不可媲美的。这不是一个完全解决方案,但应该指出你需要修复的正确方向。
答案 1 :(得分:0)
您可以尝试使图片单色化(例如在Mnist中,每个像素值在0到255之间),并使用“像素i> 0”进行测试。这将我们的算法提高到80%。 另外,您可以尝试将图片划分为帧(尝试4或8)。 此外,您可以基于直线,曲线等来构建测试。
您可以看一下我的实现,该实现使我达到了91%: https://github.com/orlevy08/Data-Analysis