【发布时间】:2017-08-09 09:57:05
【问题描述】:
在 Keras 测试样本评估是这样完成的
score = model.evaluate(testx, testy, verbose=1)
这不会返回预测值。有一个方法predict 返回预测值
model.predict(testx, verbose=1)
返回
[
[.57 .21 .21]
[.19 .15 .64]
[.23 .16 .60]
.....
]
testy 是一种热编码,它的值是这样的
[
[1 0 0]
[0 0 1]
[0 0 1]
]
testy 之类的预测值如何转换为热编码?
注意:我的模型是这样的
# setup the model, add layers
model = Sequential()
model.add(Conv2D(32, kernel_size=(3,3), activation='relu', input_shape=input_shape))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(64, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(classes, activation='softmax'))
# compile model
model.compile(loss=keras.losses.categorical_crossentropy, optimizer=keras.optimizers.Adadelta(), metrics=['accuracy'])
# fit the model
model.fit(trainx, trainy, batch_size=batch_size, epochs=iterations, verbose=1, validation_data=(testx, testy))
【问题讨论】:
标签: python neural-network keras