1

我是人工神经网络的新手,但请帮我解决这个问题?

我正在尝试实现用于字符识别的人工神经网络(使用 MLP 和 SNN),我是否需要在输出层中具有与需要识别的字符数量相同数量的神经元。例如,如果我希望我的网络能够识别大写字母、小写字母和数字,我是否需要在输出层有 26+26+10 个神经元。

如果我必须识别 Unicode 字符集中的所有字符,我需要多少输出层中的神经元。

是否有任何方法(动态阈值)来减少这个数字或在输出层动态添加神经元?

如果可能,请提供研究文章的链接。谢谢。

4

1 回答 1

5

不,您不需要输出层大小来匹配类的数量。

我认为您需要了解的是输出层的输出只是网络输入的表示。话虽如此,您可以拥有任何想要的输出层。如果您想要一种反映您的类的编码,减少层中节点数量的最简单方法是使用二进制编码。

示例:您可以使用 3 个神经元,而不是对 8 个类使用 8 个节点(每个类 1 个节点):
0 类是输出 0-0-0
1 类是输出 0-0-1
...
7 类是输出 1-1-1

我想你应该已经明白了。当然,您不仅可以使用二进制,还可以使用您能想到的任何编码方法(或谷歌)。

于 2014-02-17T17:44:52.010 回答