From 54ea59c0cfaeaf1649a27e033fd1065a89d8a94a Mon Sep 17 00:00:00 2001 From: Mark Aron Szulyovszky Date: Tue, 11 Jan 2022 10:33:18 +0100 Subject: [PATCH] feat(Sweep): try to filter out some not great models (#144) * feat(Sweep): try to filter out some not great models * fix(Sweep): yaml * fix(Sweep): yaml * fix(Config): remove some models that do not perform well --- config/config.py | 2 +- models/model_map.py | 3 +-- sweep_ensemble.yaml | 15 ++++++++++----- 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/config/config.py b/config/config.py index 8108cd3..a6fdd43 100644 --- a/config/config.py +++ b/config/config.py @@ -73,7 +73,7 @@ def get_default_ensemble_config() -> tuple[dict, dict, dict]: ) regression_models = ["Lasso", "KNN", "RF"] - classification_models = ['LR_two_class', 'SVC', 'KNN', 'CART', 'NB', 'AB', 'RF', 'XGB_two_class', 'LGBM', 'StaticMom'] + classification_models = ["LR_two_class", "LDA", "NB", "RF", "XGB_two_class", "LGBM", "StaticMom"] meta_labeling_models = ['LR_two_class', 'LGBM'] ensemble_model = 'Average' diff --git a/models/model_map.py b/models/model_map.py index ca5547f..98b3aff 100644 --- a/models/model_map.py +++ b/models/model_map.py @@ -5,7 +5,7 @@ from sklearn.tree import DecisionTreeClassifier from sklearnex.neighbors import KNeighborsRegressor, KNeighborsClassifier from sklearn.discriminant_analysis import LinearDiscriminantAnalysis from sklearnex.svm import SVR, SVC -from sklearn.naive_bayes import GaussianNB, MultinomialNB +from sklearn.naive_bayes import GaussianNB from sklearn.neural_network import MLPRegressor, MLPClassifier from sklearn.ensemble import AdaBoostRegressor, RandomForestRegressor, ExtraTreesRegressor, AdaBoostClassifier, GradientBoostingClassifier, ExtraTreesClassifier from sklearnex.ensemble import RandomForestClassifier @@ -51,7 +51,6 @@ model_map = { KNN= SKLearnModel(KNeighborsClassifier()), CART= SKLearnModel(DecisionTreeClassifier(max_depth=15, random_state=1)), NB= SKLearnModel(GaussianNB()), - MNB = SKLearnModel(MultinomialNB()), AB= SKLearnModel(AdaBoostClassifier(n_estimators=15)), RF= SKLearnModel(RandomForestClassifier(n_jobs=-1, max_depth=20, random_state=1)), SVC = SKLearnModel(SVC(kernel='rbf', C=1e3, probability=True, random_state=1)), diff --git a/sweep_ensemble.yaml b/sweep_ensemble.yaml index 3ea323e..5bb9147 100644 --- a/sweep_ensemble.yaml +++ b/sweep_ensemble.yaml @@ -21,9 +21,11 @@ parameters: sliding_window_size_primary: value: 380 sliding_window_size_meta_labeling: - value: 380 + values: [250, 300, 380] + distribution: categorical n_features_to_select: - value: 50 + values: [40, 50, 60] + distribution: categorical dimensionality_reduction: value: True retrain_every: @@ -43,10 +45,13 @@ parameters: index_column: value: 'int' primary_models: - value: ["LDA", "KNN", "SVC", "CART", "NB", "AB", "RF", "XGB_two_class", "LGBM", "StaticMom"] - meta_labeling_models: - values: [["LDA"], ["XGB_two_class"], ["LR_two_class"], ["LGBM"], ["LGBM", "LR_two_class"], ["XGB_two_class", "LDA"], ["XGB_two_class", "LR_two_class"]] distribution: categorical + values: + - ["LDA", "LR_two_class", "KNN", "SVC", "CART", "NB", "AB", "RF", "XGB_two_class", "LGBM", "StaticMom"] + - ["LR_two_class", "LDA", "NB", "RF", "XGB_two_class", "LGBM", "StaticMom"] + - ["LR_two_class", "LDA", "LGBM", "RF", "XGB_two_class"] + meta_labeling_models: + value: ["LGBM", "LR_two_class"] own_features: value: ['date_days', 'level_2', 'lags_up_to_5'] other_features: