0

分類タスクを行うために、nolearn ライブラリの NeuralNet クラスを使用しています。コードは次のとおりです。

layers0 = [('input', InputLayer),
           ('hidden', DenseLayer),
           ('output', DenseLayer)]

net0 = NeuralNet(layers=layers0,
                 input_shape=(None, 7),
                 hidden_num_units=7,
                 output_num_units=6,
                 output_nonlinearity=softmax,
                 update=nesterov_momentum,
                 update_learning_rate=0.1,
                 update_momentum=0.2,
                 train_split=TrainSplit(eval_size=0),
                 verbose=0,
                 max_epochs=200)
                 net0.fit(X, y)

predict = net0.predict(X_test)
print confusion_matrix(ids, predict)
print "accuracy: ", accuracy_score(ids, predict)

このコードは、NeuralNet をトレーニングし、テスト セットでテストします。しかし、複数回実行すると、それぞれ異なる結果が得られます。では、与えられたパラメータ、トレーニング セット、およびテスト セットから 1 つの結果のみを与えるように NeuralNet をトレーニングするにはどうすればよいでしょうか?

4

1 に答える 1

0

net0.fit() を呼び出す前に、乱数ジェネレーターにシードを使用するだけです。例えば...

numpy.random.seed(123)
于 2016-04-29T04:41:56.057 に答える