Python 如何在PyBrain中进行有监督的深度信念训练?

Python 如何在PyBrain中进行有监督的深度信念训练?,python,machine-learning,neural-network,pybrain,dbn,Python,Machine Learning,Neural Network,Pybrain,Dbn,我很难让DeepBeliefTrainer使用PyBrain/Python处理我的数据。由于除了如何在无人监督的情况下使用PyBrain中的深度学习之外,我找不到任何其他例子,我希望有人能给出一些例子来说明使用的基本概念 我已尝试使用以下方法初始化: epochs = 100 layerDims = [768,100,100,1] net = buildNetwork(*layerDims) dataset = self.dataset trainer = DeepBeliefTrainer(

我很难让DeepBeliefTrainer使用PyBrain/Python处理我的数据。由于除了如何在无人监督的情况下使用PyBrain中的深度学习之外,我找不到任何其他例子,我希望有人能给出一些例子来说明使用的基本概念

我已尝试使用以下方法初始化:

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

net = buildNetwork(*layerDims)
dataset = self.dataset
trainer = DeepBeliefTrainer(net, dataset=dataSet)
trainer.trainEpochs(epochs)
我尝试使用受监控的数据集进行回归,但培训失败了。是否有人成功使用deeplearning trainer进行有监督的机器学习?你是怎么做到的

我得到的错误是:

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

这是因为您最初的网络:
net=buildNetwork(*layerDims)
在您的深度信念网络中没有一个名为“可见”的可见层。因此,为了在初始网络中找到它的映射,您可以执行以下操作:

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