"../../models/dlmodel10_5.h5" ] model_types = ["pca_split", "pca_split", "pca_split", "pca_split", "pca_split"] # load model and transform inputs members = load_keras_models(model_files) [ensembleX_train, ensembleX_test] = transform_inputs(x_train, x_test, model_types) # result dictionary to keep track of model results results = {} # SVM ensemble print("\nSVM ENSEMBLE:") from sklearn.svm import SVC model = SVC(verbose=True, max_iter=1e5) params = {"kernel": ["linear", "rbf", "poly", "sigmoid"], "C": [0.1, 1, 10]} ensemble_model = fit_ensemble(members, ensembleX_train, y_train, train_size, model, params) # grid search results ensemble_results = pd.DataFrame.from_dict(ensemble_model.cv_results_) print(ensemble_results) ensemble_results.to_csv("../../results/ensembles_svm.csv") print("Best model score:", ensemble_model.best_score_) print(ensemble_model.best_params_) # predict output using ensemble model yhat_train = ensemble_predict(members, ensemble_model, ensembleX_train, train_size) train_acc = accuracy_score(y_train, yhat_train) print("Train accuracy:", train_acc) yhat_test = ensemble_predict(members, ensemble_model, ensembleX_test, test_size) test_acc = accuracy_score(y_test, yhat_test) print("Test accuracy:", test_acc)
model_files = ["../models/dlmodel10_1.h5", "../models/dlmodel10_2.h5", "../models/dlmodel10_3.h5", "../models/dlmodel10_4.h5", "../models/dlmodel10_5.h5"] model_types = ["pca_split", "pca_split", "pca_split", "pca_split", "pca_split"] # load model and transform inputs members = load_keras_models(model_files) [ensembleX_train, ensembleX_test] = transform_inputs(x_train, x_test, model_types) # result dictionary to keep track of model results results = {} # Naive Bayes ensemble print("\nNAIVE BAYES ENSEMBLE:") from sklearn.naive_bayes import GaussianNB ensemble_model = fit_ensemble(members, ensembleX_train, y_train, train_size, GaussianNB(), {}) # predict output using ensemble model yhat_train = ensemble_predict(members, ensemble_model, ensembleX_train, train_size) train_acc = accuracy_score(y_train, yhat_train) print("Train accuracy:", train_acc) yhat_test = ensemble_predict(members, ensemble_model, ensembleX_test, test_size) test_acc = accuracy_score(y_test, yhat_test) print("Test accuracy:", test_acc) results["GaussianNB(E)"] = {"Train": train_acc, "Test": test_acc} # results to data frame df = pd.DataFrame.from_dict(results, orient = "index") df = df.reset_index() df = df.rename(columns = {"index": "Model", "Train": "Train Accuracy", "Test": "Test Accuracy"}) # save results df.to_csv("../results/ensembleresults.csv", mode = "a", header = False)
"../models/dlmodel10_1.h5", "../models/dlmodel10_2.h5", "../models/dlmodel10_3.h5", "../models/dlmodel10_4.h5", "../models/dlmodel10_5.h5" ] model_types = ["pca_split", "pca_split", "pca_split", "pca_split", "pca_split"] # load model and transform inputs members = load_keras_models(model_files) [ensembleX_train, ensembleX_test] = transform_inputs(x_train, x_test, model_types) # result dictionary to keep track of model results results = {} # LDA ensemble print("\nLDA ENSEMBLE:") from sklearn.discriminant_analysis import LinearDiscriminantAnalysis ensemble_model = fit_ensemble(members, ensembleX_train, y_train, train_size, LinearDiscriminantAnalysis(), {}) # predict output using ensemble model yhat_train = ensemble_predict(members, ensemble_model, ensembleX_train, train_size) train_acc = accuracy_score(y_train, yhat_train) print("Train accuracy:", train_acc) yhat_test = ensemble_predict(members, ensemble_model, ensembleX_test, test_size) test_acc = accuracy_score(y_test, yhat_test) print("Test accuracy:", test_acc) results["LDA(E)"] = {"Train": train_acc, "Test": test_acc} # results to data frame df = pd.DataFrame.from_dict(results, orient="index") df = df.reset_index() df = df.rename(columns={
"../../models/dlmodel10_1.h5", "../../models/dlmodel10_2.h5", "../../models/dlmodel10_3.h5", "../../models/dlmodel10_4.h5", "../../models/dlmodel10_5.h5" ] model_types = ["pca_split", "pca_split", "pca_split", "pca_split", "pca_split"] # load model and transform inputs members = load_keras_models(model_files) [ensembleX_train, ensembleX_test] = transform_inputs(x_train, x_test, model_types) # result dictionary to keep track of model results results = {} # QDA ensemble print("\nQDA ENSEMBLE:") from sklearn.discriminant_analysis import QuadraticDiscriminantAnalysis ensemble_model = fit_ensemble(members, ensembleX_train, y_train, train_size, QuadraticDiscriminantAnalysis(), {}) # predict output using ensemble model yhat_train = ensemble_predict(members, ensemble_model, ensembleX_train, train_size) train_acc = accuracy_score(y_train, yhat_train) print("Train accuracy:", train_acc) yhat_test = ensemble_predict(members, ensemble_model, ensembleX_test, test_size) test_acc = accuracy_score(y_test, yhat_test) print("Test accuracy:", test_acc) results["QDA(E)"] = {"Train": train_acc, "Test": test_acc} # results to data frame df = pd.DataFrame.from_dict(results, orient="index") df = df.reset_index() df = df.rename(columns={