def evaluate(self, wopt, int_opt, X_test, base_model=None):
# get the true class labels
y_true = self.query(X_test)
if X_test.shape[1] != self.num_features():
X_test = self.encode(X_test)
# predict classes using the optimized coefficients
y_pred = predict_classes(X_test, wopt, int_opt, self.classes)
"""
_, _, X, _, _ = utils.prepare_data(self.model_id, onehot=False)
X = X.values
for i in range(len(y_true)):
if y_true[i] != y_pred[i]:
print y_true[i], y_pred[i], X[i]
"""
if base_model is not None:
y_pred_base = base_model.predict(X_test)
return accuracy_score(y_true, y_pred), \
accuracy_score(y_true, y_pred_base)
return accuracy_score(y_true, y_pred)
评论列表
文章目录