Tôi muốn âm mưu đầu ra của mạng nơron đơn giản này:Keras - đào tạo Lô, xác nhận và tập kiểm tra độ chính xác
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
history = model.fit(x_test, y_test, nb_epoch=10, validation_split=0.2, shuffle=True)
model.test_on_batch(x_test, y_test)
model.metrics_names
Tôi đã vẽ chính xác và mất đào tạo và xác nhận:
print(history.history.keys())
# "Accuracy"
plt.plot(history.history['acc'])
plt.plot(history.history['val_acc'])
plt.title('model accuracy')
plt.ylabel('accuracy')
plt.xlabel('epoch')
plt.legend(['train', 'validation'], loc='upper left')
plt.show()
# "Loss"
plt.plot(history.history['loss'])
plt.plot(history.history['val_loss'])
plt.title('model loss')
plt.ylabel('loss')
plt.xlabel('epoch')
plt.legend(['train', 'validation'], loc='upper left')
plt.show()
Bây giờ tôi muốn thêm và cốt truyện của độ chính xác của bộ thử nghiệm từ model.test_on_batch(x_test, y_test)
, nhưng từ model.metrics_names
Tôi nhận được cùng một giá trị 'acc' được sử dụng để vẽ chính xác trên dữ liệu đào tạo plt.plot(history.history['acc'])
. Làm thế nào tôi có thể âm mưu chính xác của bộ thử nghiệm?
Tôi xin lỗi, tôi đào tạo luôn luôn đã sử dụng thiết lập để đào tạo NN, nó được một giám sát. Tôi mới học máy, và tôi hơi bối rối về kết quả của 'model.fit (...)', tôi nhận _loss_, _acc_, _val__loss_ và _val__acc_, tôi giả sử rằng các giá trị đại diện cho sự mất mát và chính xác về đào tạo và xác thực , nhưng tôi có thể tìm thấy giá trị mất mát về thử nghiệm ở đâu? – Simone
@Simone Bạn có thể sử dụng model.evaluate trên tập kiểm tra để nhận được số liệu và số liệu mất trên tập kiểm tra. Chỉ cần đảm bảo bạn sử dụng đúng biến. –
Tôi đã sử dụng _model.evaluete_ và tôi nhận được _accuracy_ và _loss_, nhưng tôi không thể vẽ chúng vì tôi không thể phân biệt _accuracy_ thu được khi đào tạo, từ _accuracy_ thu được khi kiểm tra. – Simone