我是Keras的新人。当我完成Iris分类教程时,我只是对此感到困惑,因为我们编码了这3种鸢尾花,例如,单热编码。我们应该得到3个正交向量吗?
setosa [1 0 0]
versicolor [0 1 0]
virginica [0 0 1]
我的模型与教程相同:
http://machinelearningmastery.com/multi-class-classification-tutorial-keras-deep-learning-library/
我的问题是虽然我得到了结果:
Baseline: 95.33% (4.27%)
但是当我打电话给训练有素的深层网络模型时:
prediction = baseline_model().predict(X)
其中X是我训练网络时的原始输入
我得到了非常有线的预测:
print prediction
0,0,0
0,0,0
0,0,0
0,0,0
所有零向量,我应该得到一些单热编码结果吗?确定花应该是哪一类。
那么如何在输入相同的输入X并获得分类结果来绘制图形时如何利用我训练过的Keras模型?
答案 0 :(得分:0)
您需要训练您的网络,然后才能将其用于预测。使用教程中的符号,您可以:
estimator = KerasClassifier(build_fn=baseline_model, nb_epoch=200, batch_size=5, verbose=0)
X_train, X_test, Y_train, Y_test = train_test_split(X, dummy_y, test_size=0.33, random_state=seed)
estimator.fit(X_train, Y_train)
predictions = estimator.predict(X)