diff --git a/function.py b/function.py index 0acbd86..16424fd 100644 --- a/function.py +++ b/function.py @@ -87,18 +87,17 @@ def accuracy(X, y, weights): if __name__ == "__main__": X_train, y_train = load_data("./data/horse-colic.data") - X_train, X_val, y_train, y_val = train_test_split(X_train, y_train, test_size=0.2, random_state=42) + X_test, y_test = load_data("./data/horse-colic.test") kf = KFold(n_splits=5, shuffle=True, random_state=42) - accuracies = [accuracy(X_val_kf, y_val_kf, train_logreg(X_train_kf, y_train_kf, batch_size=32)) + accuracies = [accuracy(X_test_kf, y_test_kf, train_logreg(X_train_kf, y_train_kf, batch_size=32)) for train_index, val_index in kf.split(X_train) - for X_train_kf, X_val_kf in [(X_train[train_index], X_train[val_index])] - for y_train_kf, y_val_kf in [(y_train[train_index], y_train[val_index])]] + for X_train_kf, X_test_kf in [(X_train[train_index], X_train[test_index])] + for y_train_kf, y_test_kf in [(y_train[train_index], y_train[test_index])]] print(f"K折交叉验证得分: {accuracies}") print(f"平均准确率: {np.mean(accuracies):.4f}") - X_test, y_test = load_data("./data/horse-colic.test") final_weights = train_logreg(X_train, y_train, batch_size=32) test_accuracy = accuracy(X_test, y_test, final_weights) print(f"测试集的准确率: {test_accuracy:.4f}")