Neural network 使用真输出和假输出的神经网络
由于我是神经网络新手,为了更清楚地理解它,我想问几个问题Neural network 使用真输出和假输出的神经网络,neural-network,encog,Neural Network,Encog,由于我是神经网络新手,为了更清楚地理解它,我想问几个问题 问题1:我想测试真/假结果(模式识别),那么这是否意味着我的输出层将有2个中子 问题2:继续问题1,如果在训练数据中,它只包含真实数据,那么测试数据中的所有结果总是真实的?(因为我遇到了这个问题,而Encog库不允许我指定两个输出中子,因为我在训练数据中只有一种类型的输出) 我的培训数据: 1,2,3,4 Pattern1 6,7,8,9 Pattern1 我的测试数据: 4,3,2,1 Pattern2 这是我从encog得到的
- 问题1:我想测试真/假结果(模式识别),那么这是否意味着我的输出层将有2个中子
- 问题2:继续问题1,如果在训练数据中,它只包含真实数据,那么测试数据中的所有结果总是真实的?(因为我遇到了这个问题,而Encog库不允许我指定两个输出中子,因为我在训练数据中只有一种类型的输出)
1,2,3,4 Pattern1
6,7,8,9 Pattern1
我的测试数据:
4,3,2,1 Pattern2
这是我从encog得到的结果:
神经网络结果:
0.0,0.0, actual=-0.05972914453206861,ideal=1.0
有人能告诉我哪里错了吗?
非常感谢。如果您只需要一个真/假响应,那么您的输出层应该只有一个神经元。如果那一个神经元是活跃的,就当作是真的。如果未激活,则将其视为false 如果您的训练数据只有真实值,那么它就是坏数据,不会真正起作用。你只需要训练你的人际网络,使其始终以真实的方式回应。也许您应该找出一些可能导致错误结果的数据,并将其添加到训练数据中 如果您的培训数据只有两种情况,并且它们都是正确的,那么您的网络将不会真正学到任何东西。你需要更多的数据来明确模式 去问一个聪明人(我们拥有的最好的神经网络)以下问题:
1,2,3,4 is true; 6,7,8,9 is true. Is 4,3,2,1 true?
他们不知道。我不知道。没人知道。我不知道标准是什么。它可以是任何数量的事物来决定序列是否正确。包括:
- 数字在上升
- 它们朝着同一个方向移动
- 他们总是分开的
- 所有的数字都在10以下
最后一个音符。人们常说,神经网络擅长“模式匹配”。这是真的。然而,数字序列通常不是“模式匹配”的意思。任何需要算术运算的东西都不会被神经网络很好地服务。它们在算术上不够精确。因此,你永远无法训练一个神经网络,例如识别一个双倍数序列。在输出字段中,将模式1转换为0,将模式2转换为1。然后确保训练和测试数据中都有0和1个样本,正如@Damien Black所提到的。我想1,2,3,4只是@Xitrium给出的一个例子。假设真实数据不太几何谢谢你的回答,还有一点我想澄清的是,由于神经网络需要真实和错误的数据进行操作,这是否也适用于支持向量机的一类分类?