kos*_*ta5 5 python xor neural-network pybrain
我想知道我做错了什么或结果真的那么差.让我们假设最简单的NN示例如文档中所示:
>>>net = buildNetwork(2, 3, 1, bias=True)
>>> ds = SupervisedDataSet(2, 1)
>>> ds.addSample((0, 0), (0,))
>>> ds.addSample((0, 1), (1,))
>>> ds.addSample((1, 0), (1,))
>>> ds.addSample((1, 1), (0,))
>>> trainer = BackpropTrainer(net, ds)
>>> trainer.trainUntilConvergence()
>>> print net.activate((0,0))
>>> print net.activate((0, 1))
>>> print net.activate((1, 0))
>>> print net.activate((1, 1))
Run Code Online (Sandbox Code Playgroud)
例如
>>> print net.activate((1,0))
[ 0.37855891]
>>> print net.activate((1,1))
[ 0.6592548]
Run Code Online (Sandbox Code Playgroud)
预计是0.我知道我可以明显地圆但仍然我会期望网络对于这样一个简单的例子更精确.它可以被称为"工作"在这里,但我怀疑我错过了一些重要的原因,这是非常无法使用的......
问题是,如果你设置verbose=True为你的教练你可以看到很小的错误(如总错误:0.0532936260399)
我认为网络的错误是5%,那么之后如何在激活功能中关闭呢?
我明显使用pybrain来做更复杂的事情,但我有同样的问题.即使网络说错误大约是0.09左右,我也会得到大约50%的测试样本错误.
有任何帮助吗?
| 归档时间: |
|
| 查看次数: |
5420 次 |
| 最近记录: |