1

我有一个代码,它构建了一个 [2,3,1] 神经网络,其中一些值具有完全连接。

from pybrain.structure import FeedForwardNetwork, LinearLayer, SigmoidLayer, FullConnection
from pybrain.tools.shortcuts import buildNetwork

n = FeedForwardNetwork()

inLayer = LinearLayer(2)
hiddenLayer = SigmoidLayer(3)
outLayer = LinearLayer(1)

n.addInputModule(inLayer)
n.addModule(hiddenLayer)
n.addOutputModule(outLayer)

in2hidden = FullConnection(inLayer, hiddenLayer)
hidden2out = FullConnection(hiddenLayer, outLayer)
n.addConnection(in2hidden)
n.addConnection(hidden2out)

print n.activate([1, 2])

这是代码。很明显,activate() 函数将列表作为输入。我无法理解列表的内容是什么。请帮忙。

4

1 回答 1

1

您快到了。我刚刚对您的代码底部进行了以下更改:

n.addConnection(in2hidden)
n.addConnection(hidden2out)
n.sortModules()
testactivate = n.activate([0.6, 0.6])
print testactivate

我得到如下输出:[0.54307993]

n.activate 的输入,在这种情况下 ([0.6, 0.6]),是前馈网络输入层的输入(在这种情况下需要两个输入)。

当然,您的输出每次都会不同,因为初始权重(在任何训练之前)将是随机分配的。

于 2014-11-01T20:59:43.720 回答