PyBrain を使用して単純なニューラル ネットワークを作成しました。
from pybrain.tools.shortcuts import buildNetwork
from pybrain.datasets import SupervisedDataSet
from pybrain.supervised.trainers import BackpropTrainer
L_Z = [
0b111111,
0b000010,
0b000100,
0b001000,
0b010000,
0b111111
]
C_Z = [
0b111111,
0b100001,
0b000110,
0b000001,
0b100001,
0b111111
]
net = buildNetwork(6, 3, 1)
ds = SupervisedDataSet(6, 1)
ds.addSample(tuple(L_Z), (1,))
ds.addSample(tuple(C_Z), (0,))
trainer = BackpropTrainer(net, ds)
trainer.trainUntilConvergence()
print net.activate(L_Z)
print net.activate(C_Z)
しかし、プログラムを実行するたびに異なる結果が表示されます。私のネットワークは、英語の「Z」文字とキリル文字の「З」文字を見つけることを学習する必要があります。なにが問題ですか?