GridSearchCV pro nalezení optimálních parametrů
V tomto cvičení budeš ladit model méně „náhodným" způsobem – k tomu ti pomůže GridSearchCV.
S GridSearchCV můžeš definovat, podle jaké výkonnostní metriky se mají možnosti hodnotit. Protože nám při odhalování podvodů jde především o zachycení co největšího počtu podvodných případů, můžeš nastavení modelu optimalizovat tak, aby dosáhl co nejlepšího skóre Recall. Pokud by ti záleželo i na snížení počtu falešně pozitivních výsledků, bylo by vhodné optimalizovat F1-skóre, které nabízí pěkný kompromis mezi Precision a Recall.
GridSearchCV je už naimportován z sklearn.model_selection, takže do toho!
Toto cvičení je součástí kurzu
Detekce podvodů v Pythonu
Pokyny k cvičení
- V mřížce parametrů definuj, že chceš vyzkoušet 1 a 30 stromů a kritéria rozdělení
giniaentropy. - Model nastav jako jednoduchý
RandomForestClassifiera ponechrandom_statena hodnotě 5, abys mohl/a modely navzájem porovnat. - Nastav možnost
scoringtak, aby se optimalizovalo skóre recall. - Natrénuj model na trénovacích datech
X_trainay_traina zjisti nejlepší parametry modelu.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Define the parameter sets to test
param_grid = {'n_estimators': [____, ____], 'max_features': ['auto', 'log2'], 'max_depth': [4, 8], 'criterion': ['____', '____']
}
# Define the model to use
model = ____(random_state=5)
# Combine the parameter sets with the defined model
CV_model = GridSearchCV(estimator=model, param_grid=param_grid, cv=5, scoring='____', n_jobs=-1)
# Fit the model to our training data and obtain best parameters
CV_model.fit(____, ____)
CV_model.____