MulaiMulai sekarang secara gratis

XGBoost: Fit/Predict

Saatnya membuat model XGBoost pertama Anda! Seperti yang ditunjukkan Sergey dalam video, Anda dapat menggunakan paradigma scikit-learn .fit() / .predict() yang sudah Anda kenal untuk membangun model XGBoost, karena pustaka xgboost memiliki API yang kompatibel dengan scikit-learn!

Di sini, Anda akan bekerja dengan data churn. Himpunan data ini berisi data imajiner dari sebuah aplikasi ride-sharing dengan perilaku pengguna selama bulan pertama penggunaan aplikasi di sejumlah kota imajiner, serta apakah mereka masih menggunakan layanan tersebut 5 bulan setelah pendaftaran. Data ini telah dimuat untuk Anda ke dalam DataFrame bernama churn_data — jelajahi di Shell!

Tujuan Anda adalah menggunakan data bulan pertama untuk memprediksi apakah pengguna aplikasi akan tetap menggunakan layanan pada bulan ke-5. Ini adalah skenario umum untuk masalah prediksi churn. Untuk melakukannya, Anda akan membagi data menjadi himpunan pelatihan dan uji, melatih model xgboost kecil pada himpunan pelatihan, dan mengevaluasi kinerjanya pada himpunan uji dengan menghitung akurasinya.

pandas dan numpy telah diimpor sebagai pd dan np, dan train_test_split telah diimpor dari sklearn.model_selection. Selain itu, array untuk fitur dan target telah dibuat sebagai X dan y.

Latihan ini adalah bagian dari kursus

Extreme Gradient Boosting dengan XGBoost

Lihat Kursus

Petunjuk latihan

  • Impor xgboost sebagai xgb.
  • Buat himpunan pelatihan dan uji sehingga 20% data digunakan untuk pengujian. Gunakan random_state bernilai 123.
  • Instansiasi XGBoostClassifier sebagai xg_cl menggunakan xgb.XGBClassifier(). Tetapkan n_estimators menjadi 10 estimator dan objective 'binary:logistic'. Jangan khawatir dulu tentang artinya; Anda akan mempelajari parameter ini nanti dalam kursus.
  • Latih xg_cl pada himpunan pelatihan (X_train, y_train) menggunakan metode .fit().
  • Prediksi label himpunan uji (X_test) menggunakan metode .predict() dan klik 'Kirim Jawaban' untuk mencetak akurasi.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# 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))
Edit dan Jalankan Kode