特定の商品セットの販売価格を予測しようとしています。pybrainでRecurrentNetworkとBackpropTrainerを使用しています。これが私のコードです、
def nnet(train, target, valid):
ds = SupervisedDataSet(52-len(NU)+5, 1)
for i in range(len(train)):
ds.appendLinked(train[i], target[i])
n = RecurrentNetwork()
n.addInputModule(LinearLayer(52-len(NU)+5, name='in'))
n.addModule(SigmoidLayer(3, name='hidden'))
n.addOutputModule(LinearLayer(1, name='out'))
n.addConnection(FullConnection(n['in'], n['hidden'], name='c1'))
n.addConnection(FullConnection(n['hidden'], n['out'], name='c2'))
n.addRecurrentConnection(FullConnection(n['hidden'], n['hidden'], name='c3'))
n.sortModules()
t = BackpropTrainer(n,learningrate=0.001,verbose=True)
t.trainOnDataset(ds, 20)
prediction = np.zeros((11573, 1), dtype = int)
for i in range(11573):
prediction[i] = n.activate(valid[i])
return prediction
ここでは、numpy配列であるtrainとtargetを使用してモデルをトレーニングし、52-len(NU)+5は属性(機能)の数です。有効なアイテムごとに、販売価格を予測する必要があります。問題は、有効なすべてのアイテムについて、最初のアイテムを除いて同じセール価格を取得することです。私は何を間違えましたか?前もって感謝します。
配列の寸法は次のとおりです。
電車-401125、52-len(NU)+5
ターゲット-401125、1
有効-11573、52-len(NU)+5