首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >神经网络字符识别

神经网络字符识别
EN

Stack Overflow用户
提问于 2016-09-21 17:03:33
回答 1查看 147关注 0票数 1

假设我试图创建一个神经网络来识别简单的5x5像素网格上的字符。我只有6个可能的字符(符号)- X,+,/,\,|

目前我有一个前馈神经网络-有25个输入节点,6个隐藏节点和一个输出节点(0到1乙状结肠之间)。

输出对应于符号。如'X' = 0.125'+' = 0.275'/' = 0.425等。

无论网络的输出(测试)是什么,都对应于任何数字上最接近的字符。i.e - 0.13 = 'X'

在输入时,0.1表示像素根本没有阴影,0.9表示完全阴影。

在对网络进行6个符号的训练后,我增加了一些噪声来测试它。

不幸的是,如果我给'/‘加上一点噪音,网络就会认为它是'\’。

我想,6种符号的顺序(即,e-它们对应的数字表示)可能会产生不同的效果。

可能是隐藏节点的数量导致了这个问题。

也许我把字符映射到数字的一般概念导致了这个问题。

任何帮助都将是非常感谢的,以使网络更加准确。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-21 18:01:12

输出编码是最大的问题。最好对输出使用一次热编码,以便有六个输出节点。

例如,

代码语言:javascript
复制
-   1 0 0 0 0 0
X   0 1 0 0 0 0
+   0 0 1 0 0 0
/   0 0 0 1 0 0
\   0 0 0 0 1 0
|   0 0 0 0 0 1

这对于神经网络来说要容易得多。在预测时,选择值最高的节点作为预测。例如,如果在每个输出节点上有以下输出值:

代码语言:javascript
复制
-   0.01
X   0.5
+   0.2
/   0.1
\   0.2
|   0.1

预测字符为"X“。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39622507

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档