Neural network 输出层神经元数

Neural network 输出层神经元数,neural-network,adaptive-threshold,Neural Network,Adaptive Threshold,我不熟悉人工神经网络,但请帮我解决这个问题 我正在尝试实现一个用于字符识别的人工神经网络(使用MLP和SNN),我是否需要在输出层拥有与需要识别的字符数量相同的神经元数量。例如,如果我希望我的网络能够识别大写字母、小写字母和数字,我需要在输出层有26+26+10个神经元吗 如果我必须识别Unicode字符集中的所有字符,那么输出层中需要多少神经元呢 是否有任何方法(动态阈值)来减少这个数量或在输出层中动态添加神经元 如果可能,请提供研究文章的链接。 谢谢。不,您不需要输出层大小来匹配类的数量 我

我不熟悉人工神经网络,但请帮我解决这个问题

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

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

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

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

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

我认为您需要了解的是,输出层的输出只是网络输入的表示。也就是说,您可以拥有任何想要的输出层。如果您希望使用镜像类的编码,减少层中节点数的最简单方法是使用二进制编码

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

第7类是输出1-1-1


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

不,您不需要outputlayer大小来匹配类的数量

我认为您需要了解的是,输出层的输出只是网络输入的表示。也就是说,您可以拥有任何想要的输出层。如果您希望使用镜像类的编码,减少层中节点数的最简单方法是使用二进制编码

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

第7类是输出1-1-1


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

这篇研究文章提供了一种使用神经网络的字符识别方法,在这种方法中,你不需要特别具有与输出数相同的输出神经元数:。。。它基本上提供了一种方法,通过组合激活输出神经元,您将能够预测输出。这篇研究文章提供了一种使用神经网络的字符识别方法,其中您不需要特别具有与输出神经元数量相同的输出神经元数:。。。它基本上提供了一种方法,通过对输出神经元的激活组合,你可以预测输出。谢谢,我知道了。这就是我所期待的。我很惊讶为什么我不能考虑它。二进制编码假定类标签中的顺序性,而这可能并不存在。@gunes实际上,它假定的是标称标签。正常的MLP自然不会将“100”视为“011”的延续,因此特定的编码不需要顺序。无论如何,自从我最初发布这篇文章以来,这种编码已经过时了。现在它都是一个热编码,softmax或其他非二进制输出编码。谢谢,我知道了。这就是我所期待的。我很惊讶为什么我不能考虑它。二进制编码假定类标签中的顺序性,而这可能并不存在。@gunes实际上,它假定的是标称标签。正常的MLP自然不会将“100”视为“011”的延续,因此特定的编码不需要顺序。无论如何,自从我最初发布这篇文章以来,这种编码已经过时了。现在它都是一个热编码,softmax或其他非二进制输出编码。