如何在PyBrain中进行监督深信网络训练?

10 投票
1 回答
1607 浏览
提问于 2025-04-17 17:35

我在使用PyBrain/Python中的DeepBeliefTrainer处理我的数据时遇到了问题。因为我找不到除了无监督学习以外的任何示例来说明如何在PyBrain中使用深度学习,所以希望有人能给出一些示例,帮助我理解基本的使用概念。

我尝试用以下方式初始化:

epochs = 100
layerDims = [768,100,100,1]

net = buildNetwork(*layerDims)
dataset = self.dataset
trainer = DeepBeliefTrainer(net, dataset=dataSet)
trainer.trainEpochs(epochs)

我想用一个监督数据集进行回归,但训练总是失败。有没有人成功地使用深度学习训练器进行监督机器学习?你是怎么做到的?

我遇到的错误是:

File "/Library/Python/2.7/site-packages/PyBrain-0.3.1-py2.7.egg/pybrain/structure/networks/rbm.py", line 39, in __init__
self.con = self.net.connections[self.visible][0]
KeyError: None

1 个回答

4

这是因为你最开始创建的网络:net = buildNetwork(*layerDims)里没有一个叫“visible”的层,而这个“visible”层是你深度信念网络中的一个层。所以,为了在最开始的网络中找到这个层,你可以这样做:

net.addInputModule(LinearLayer(input_dim, 'visible'))
[...]
trainer = DeepBeliefTrainer(net, dataset=dataSet)

撰写回答