ÎncepețiÎncepe gratuit

XGBoost: Antrenare/Predicție

A venit momentul să creezi primul tău model XGBoost! Așa cum ți-a arătat Sergey în videoclip, poți folosi paradigma .fit() / .predict() din scikit-learn, cu care ești deja familiarizat, pentru a construi modele XGBoost — biblioteca xgboost are un API compatibil cu scikit-learn!

În acest exercițiu vei lucra cu date despre renunțarea la servicii (churn). Setul de date conține date fictive dintr-o aplicație de ride-sharing, incluzând comportamentul utilizatorilor în prima lor lună de utilizare a aplicației în mai multe orașe imaginare, precum și dacă au continuat să folosească serviciul după 5 luni de la înregistrare. Acesta a fost preîncărcat într-un DataFrame numit churn_data — explorează-l în Shell!

Scopul tău este să folosești datele din prima lună pentru a prezice dacă utilizatorii aplicației vor rămâne activi la marcajul de 5 luni. Aceasta este o configurare tipică pentru o problemă de predicție a renunțării. Pentru a face acest lucru, vei împărți datele în seturi de antrenament și de testare, vei antrena un model xgboost mic pe setul de antrenament și îi vei evalua performanța pe setul de testare prin calcularea acurateței.

pandas și numpy au fost importate ca pd și np, iar train_test_split a fost importat din sklearn.model_selection. De asemenea, tablourile pentru caracteristici și țintă au fost create ca X și y.

Acest exercițiu face parte din cursul

Gradient Boosting Extrem cu XGBoost

Vezi cursul

Instrucțiuni pentru exercițiu

  • Importă xgboost ca xgb.
  • Creează seturi de antrenament și de testare astfel încât 20% din date să fie folosite pentru testare. Folosește un random_state de 123.
  • Instanțiază un XGBoostClassifier ca xg_cl folosind xgb.XGBClassifier(). Specifică n_estimators cu valoarea 10 și un objective de 'binary:logistic'. Nu te îngrijora deocamdată de semnificația acestor parametri — îi vei învăța mai târziu în acest curs.
  • Antrenează xg_cl pe setul de antrenament (X_train, y_train) folosind metoda .fit().
  • Prezice etichetele setului de testare (X_test) folosind metoda .predict() și apasă Trimite răspunsul pentru a afișa acuratețea.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# Import xgboost
____

# Create arrays for the features and the target: X, y
X, y = churn_data.iloc[:,:-1], churn_data.iloc[:,-1]

# Create the training and test sets
X_train, X_test, y_train, y_test= ____(____, ____, test_size=____, random_state=123)

# Instantiate the XGBClassifier: xg_cl
xg_cl = ____.____(____='____', ____=____, seed=123)

# Fit the classifier to the training set
____

# Predict the labels of the test set: preds
preds = ____

# Compute the accuracy: accuracy
accuracy = float(np.sum(preds==y_test))/y_test.shape[0]
print("accuracy: %f" % (accuracy))
Editează și rulează codul