从支持向量机移动到神经网络(反向传播)

时间:2014-03-06 13:21:53

标签: neural-network svm encog

我正在使用文本识别,目前我正在使用支持向量机方法。我也想尝试使用神经网络。我读了一些关于神经网络是如何工作的文件,但理论很重,我不确切知道它将如何适用于我的案例。因此,如果有人可以帮我说清楚,特别是神经网络的架构,那将是一件好事。

  • 目前,在SVM中,我有200个功能(分为4个主要功能 categories),用于识别文本。如果我转向神经 网络,有200个特征,是否意味着我将在输入层中有200个中子?
  • 有200个功能,这将如何导致神经系统的架构 网络(在数字层(隐藏层)和 中子)?
  • 在SVM中,我有一个类别分类(基本上是真假)和多类别分类(标签),这种差异将如何应用于神经网络的输出层?

我还有几个一般性问题:

  • 什么有助于确定隐藏层的数量和每个隐藏层内的中子数?
  • 隐藏层的数量是否与准确度有关?

我是神经网络的新手,所以如果你能以一种明智的方式向我解释,那就太好了。 :)
非常感谢你。

1 个答案:

答案 0 :(得分:1)

第1点 - 它将是200个输入神经元,其中每个神经元被输入二进制数或浮点数(最好在-1到1范围内归一化)。

第2/4点 - 大多数问题都是通过一个隐藏层解决的。当然,如果你开始使用神经网络,你应该坚持一个隐藏层。我还建议从少于200个输入神经元开始,尝试5或10.在复杂问题中使用多个隐藏层,例如,第一个隐藏层学习像狗,猫,马等宏观特征,下一个隐藏层学习更精细眼睛,鼻子,耳朵等功能。

没有明确的程序来决定隐藏神经元的数量。问题越复杂,理论上它需要的隐藏神经元就越多。如果您有10个输入神经元,请从20个隐藏神经元开始。如果它不起作用,其他地方可能出现问题。如果它确实有效,你可以减少隐藏神经元的数量直到它失败 你也可以从低位开始工作。

第3点 - 对于真假分类,使用单个输出神经元,并使用0或1训练它。对于n个类,使用n个编码中的1个。

第5点 - 没有。准确性是通过网络可以概括的程度来衡量的 - 即,它如何对数据执行前所未有的。一般来说,更多的训练数据=更准确。