Oto niektóre z hiperparametrów XGBoost Classifier dostępnych w bibliotece scikit-learn:
booster
– określa, jaki rodzaj boostera (silnika) użyć do trenowania modelu. Dostępne opcje to: “gbtree” (drzewa decyzyjne), “gblinear” (liniowe modele) i “dart” (drzewa z możliwością usuwania i dodawania węzłów).learning_rate
– określa współczynnik uczenia, czyli jak szybko model będzie uczyć się z danych. Wartość zbyt duża spowoduje, że model szybko nadmiernie dopasuję się do danych, a zbyt mała spowoduje, że model będzie uczył się zbyt wolno.n_estimators
– określa ilość drzew decyzyjnych w modelu. Im więcej drzew, tym model będzie dokładniejszy, ale ryzyko przetrenowania też będzie większe.max_depth
– określa maksymalną głębokość drzew decyzyjnych w modelu.min_child_weight
– określa minimalną sumę wag potomstwa, które musi posiadać węzeł, by mógł być dalej rozgałęziony. Ustawienie tego parametru na wyższe wartości zmniejsza ryzyko przetrenowania.gamma
– określa maksymalne zmniejszenie błędu, jakie musi dokonać się przy rozgałęzieniu węzła. Im większa wartość, tym bardziej zabezpiecza to model przed przetrenowaniem, ale może też spowodować, że model będzie mniej dokładny.subsample
– określa, ile procent danych treningowych ma być użyte do trenowania pojedynczego drzewa. Ustawienie tego parametru na wartość mniejszą niż 1 spowoduje, że każde drzewo będzie trenowane na losowo wybranej próbce danych, co może zmniejszyć ryzyko przetrenowania.colsample_bytree
– podobnie jaksubsample
, ale dotyczy ilości cech, a nie próbek danych.reg_alpha
– określa siłę regularyzacji l1 (Lasso). Wartość większa niż 0 spowoduje zmniejszenie wpływu niektórych cech na model.reg_lambda
– określa siłę regularyzacji l2 (Ridge). Wartość większa niż 0 spowoduje zmniejszenie wpływu niektórych cech na model.