From c8d7dd3fc0a87c13f0c4379f705de173b60c3727 Mon Sep 17 00:00:00 2001 From: Floke Date: Wed, 18 Jun 2025 14:40:12 +0000 Subject: [PATCH] bugfix --- brancheneinstufung.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/brancheneinstufung.py b/brancheneinstufung.py index 5d71c5c9..1bdcae45 100644 --- a/brancheneinstufung.py +++ b/brancheneinstufung.py @@ -9235,7 +9235,7 @@ class DataProcessor: # Definieren der Hyperparameter, die getestet werden sollen. # WICHTIG: Die Parameternamen müssen mit dem Namen des Schritts in der Pipeline beginnen (z.B. 'classifier__...') param_grid = { - 'classifier__n_estimators': [100, 200], # Anzahl der Bäume + 'classifier__n_estimators': [200, 300], # Anzahl der Bäume 'classifier__max_depth': [10, 20, None], # Maximale Tiefe der Bäume (None = unbegrenzt) 'classifier__min_samples_split': [2, 5], # Mindestanzahl Samples für einen Split 'classifier__min_samples_leaf': [1, 2] # Mindestanzahl Samples in einem Blatt @@ -9313,8 +9313,10 @@ class DataProcessor: # Block für Feature Importance try: - self.logger.info("Feature Importance (Top 15):") - importances = rf_classifier.feature_importances_ # << Hier war es schon korrekt + # Greife auf den Schritt 'classifier' in der Pipeline zu, um das finale Modell zu bekommen + final_rf_model = best_classifier.named_steps['classifier'] + self.logger.info("Feature Importance des besten Modells (Top 15):") + importances = final_rf_model.feature_importances_ # << KORRIGIERT feature_importance_df = pd.DataFrame({ 'Feature': feature_columns_ml, 'Importance': importances