在Keras試樣評估這樣如何獲得預測Keras值?
score = model.evaluate(testx, testy, verbose=1)
這不返回預測值進行。有其返回預測值
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
的預測值或方法predict
如何將預測值轉換爲一個熱編碼?
注:我的模型看起來像這樣
# 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))
返回的值是概率值,而不是對數似然值。 –
@MatiasValdenegro謝謝你用來捕獲 –
什麼詳細= 1嗎? – Eddy