This repository has been archived on 2026-06-23. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
cas-pml/SL/aufgaben/template/4_WS/WS 06 Vorlage.ipynb
T
2026-05-21 14:16:30 +02:00

5.3 KiB

WS 06 Klassifikation - RandomForestClassifier

  • untersuchen Sie die folgenden Tuning-Parameter von RandomForestClassifier in Bezug auf die erreichte Performance (accuracy_score) mit dem vorbereiteten Dataset:
    • n_estimators als range(100, 500, 50)
    • max_features als range(1, 11)
    • min_impurity_decrease als np.arange(0, 0.1, 0.01)
  • wie wirkt sich der random_state aus?
  • welche der ausserdem zur Verfügung stehenden Parameter sind keine Tuning Parameter? Konsultieren Sie dazu die (Online-) Dokumentation
In [3]:
## prepare env, read and prepare data
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns; sns.set()

codepath = '../2_code' ## for import of user defined module
datapath = '../3_data'
from sys import path; path.insert(1, codepath)
from os import chdir; chdir(datapath)

from bfh_cas_pml import prep_data
X_train, X_test, y_train, y_test = prep_data('bank_data_prep.csv', target='y', seed=1234)
In [4]:
from sklearn.ensemble import RandomForestClassifier

n_estimators:

In [6]:
model = RandomForestClassifier()
scores = []
params = range(100, 500, 50)

for param in params:
    print(param)
    ## tbd
    

## tbd
#fig = sns.lineplot(x=params, y=scores)
#...


100
150
200
250
300
350
400
450

max_features:

In [8]:
model = RandomForestClassifier()
scores = []
params = range(1, 11)

for param in params:
    print(param)
    ## tbd
    
    
    
1
2
3
4
5
6
7
8
9
10

min_impurity_decrease:

In [10]:
model = RandomForestClassifier()
scores = []
params = np.arange(0, 0.1, 0.01)

for param in params:
    print(param)
    ## tbd
    
    
    
0.0
0.01
0.02
0.03
0.04
0.05
0.06
0.07
0.08
0.09

Fazit:

  • tbd

keine Tuning Parameter sind hier:

  • tbd