Zacznij terazZacznij za darmo

Drzewa decyzyjne

Twoim zadaniem w tym ćwiczeniu jest zbudowanie prostego drzewa decyzyjnego przy użyciu klasy DecisionTreeClassifier z biblioteki scikit-learn na zbiorze danych breast cancer, który jest dostarczany razem z scikit-learn.

Zbiór ten zawiera numeryczne pomiary różnych cech poszczególnych guzów (takich jak obwód i tekstura) uzyskanych z biopsji piersi oraz jedną wartość docelową (guz jest złośliwy lub łagodny).

Zbiór próbek (pomiarów) został wczytany do X, a wartości docelowe dla każdego guza – do y. Teraz musisz podzielić cały zbiór danych na zbiory treningowy i testowy, a następnie wytrenować DecisionTreeClassifier. Określisz parametr o nazwie max_depth. W tym modelu można modyfikować wiele innych parametrów – wszystkie znajdziesz tutaj.

To ćwiczenie jest częścią kursu

Extreme Gradient Boosting with XGBoost

Zobacz kurs

Instrukcje do ćwiczenia

  • Zaimportuj:
    • train_test_split z sklearn.model_selection.
    • DecisionTreeClassifier z sklearn.tree.
  • Utwórz zbiory treningowy i testowy tak, aby 20% danych zostało użyte do testowania. Ustaw random_state na 123.
  • Utwórz instancję DecisionTreeClassifier o nazwie dt_clf_4 z max_depth równym 4. Ten parametr określa maksymalną liczbę kolejnych punktów podziału, jaką można mieć przed dotarciem do węzła liścia.
  • Dopasuj klasyfikator do zbioru treningowego i przewidź etykiety zbioru testowego.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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)
Edytuj i uruchom kod