检查通过不可见数据评估keras模型的方法是否正确

检查通过不可见数据评估keras模型的方法是否正确,keras,neural-network,Keras,Neural Network,我研究了Keras,创建了我的第一个神经网络模型,如下所示: from keras.layers import Dense import keras from keras import Sequential from sklearn.metrics import accuracy_score tr_X, tr_y = getTrainingData() # NN Architecture model = Sequential() model.add(Dense(16, input_dim=t

我研究了
Keras
,创建了我的第一个神经网络模型,如下所示:

from keras.layers import Dense
import keras
from keras import Sequential
from sklearn.metrics import accuracy_score

tr_X, tr_y = getTrainingData()

# NN Architecture
model = Sequential()
model.add(Dense(16, input_dim=tr_X.shape[1]))
model.add(keras.layers.advanced_activations.PReLU())

model.add(Dense(16))
model.add(keras.layers.advanced_activations.PReLU())

model.add(Dense(1, activation='sigmoid'))

# Compile the Model
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])

# Fit the Model
model.fit(tr_X, tr_y, epochs=1000, batch_size=200, validation_split=0.2)

# ----- Evaluate the Model (Using UNSEEN data) ------
ts_X, ts_y = getTestingData()
yhat_classes = model.predict_classes(ts_X, verbose=0)[:, 0]
accuracy = accuracy_score(ts_y, yhat_classes)
print(accuracy)
我不确定代码的最后一部分,即使用
model.predict\u classes()
进行模型评估,通过自定义方法
getTestingData()
加载新数据。看,我的目标是使用新的看不见的数据测试最终模型,以评估其预测。我的问题是关于这一部分:我是否正确评估了模型


谢谢你,

是的,没错。您可以使用predict或predict_类来获得对测试数据的预测。如果您直接需要损失和度量,您可以通过输入ts_X和ts_y来使用评估方法

y_pred = model.predict(ts_X)

loss, accuracy = model.evaluate(ts_X, ts_y)

预测和预测课程之间的差异: