Arbori de decizie
În acest exercițiu, vei construi un arbore de decizie simplu folosind DecisionTreeClassifier din scikit-learn, aplicat pe setul de date breast cancer inclus în scikit-learn.
Acest set de date conține măsurători numerice ale diferitelor dimensiuni ale tumorilor individuale (cum ar fi perimetrul și textura), provenite din biopsii mamare, precum și o singură valoare-țintă (tumoarea este fie malignă, fie benignă).
Am preîncărcat setul de date cu eșantioanele (măsurătorile) în X și valorile-țintă pentru fiecare tumoră în y. Acum trebuie să împarți setul complet de date în seturi de antrenament și de testare, apoi să antrenezi un DecisionTreeClassifier. Vei specifica un parametru numit max_depth. Poți modifica și alți parametri ai acestui model – găsești lista completă aici.
Acest exercițiu face parte din cursul
Gradient Boosting Extrem cu XGBoost
Instrucțiuni pentru exercițiu
- Importă:
train_test_splitdinsklearn.model_selection.DecisionTreeClassifierdinsklearn.tree.
- Creează seturile de antrenament și de testare astfel încât 20% din date să fie folosite pentru testare. Folosește un
random_statede123. - Instanțiază un
DecisionTreeClassifiernumitdt_clf_4cu unmax_depthde4. Acest parametru specifică numărul maxim de puncte de divizare succesive permise înainte de a ajunge la un nod-frunză. - Antrenează clasificatorul pe setul de antrenament și prezice etichetele setului de testare.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Import the necessary modules
____
____
# Create the training and test sets
X_train, X_test, y_train, y_test = ____(____, ____, test_size=____, random_state=____)
# Instantiate the classifier: dt_clf_4
dt_clf_4 = ____
# Fit the classifier to the training set
____
# Predict the labels of the test set: y_pred_4
y_pred_4 = ____
# Compute the accuracy of the predictions: accuracy
accuracy = float(np.sum(y_pred_4==y_test))/y_test.shape[0]
print("accuracy:", accuracy)