Regularizace
Regularizace je proces přidávání informací do modelu za účelem prevence přetrénování. Je důležitá pro zlepšení evaluačních metrik, které jsi viděl/a dříve v této kapitole. V tomto cvičení budeš měnit parametr maximální hloubky rozhodovacího stromu a sledovat, jak to ovlivní výsledky klasifikace.
V pracovním prostředí máš k dispozici proměnné X_train, y_train, X_test, y_test. K dispozici jsou také pandas jako pd, numpy jako np a sklearn. Navíc jsou dostupné funkce confusion_matrix(), precision_score() a recall_score() z sklearn.metrics.
Toto cvičení je součástí kurzu
Předpovídání CTR pomocí Machine Learning v Pythonu
Pokyny k cvičení
- Vytvoř různé rozhodovací stromy tak, že budeš měnit maximální hloubku každého stromu.
- Každý strom natrénuj a vytvoř předpovědi na testovacích datech.
- Pro každý strom vyhodnoť matici záměn, přesnost (precision) a úplnost (recall).
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Iterate over different levels of max depth
for max_depth_val in [2, 3, 5, 10, 15, 20]:
# Create and fit model
clf = ____(____ = max_depth_val)
print("Evaluating tree with max_depth = %s" %(max_depth_val))
y_pred = clf.fit(____, ____).predict(____)
# Evaluate confusion matrix, precision, recall
print("Confusion matrix: ")
print(____(y_test, y_pred))
prec = ____(____, ____, average = 'weighted')
recall = ____(____, ____, average = 'weighted')
print("Precision: %s, Recall: %s" %(prec, recall))