Дерево решений для классификации

Машинное обучение на основе древовидных моделей в Python

Elie Kawerk

Data Scientist

Обзор курса

  • Глава 1: Деревья классификации и регрессии (CART)

  • Глава 2: Компромисс между смещением и дисперсией

  • Глава 3: Бэггинг и случайные леса

  • Глава 4: Бустинг

  • Глава 5: Настройка модели

Машинное обучение на основе древовидных моделей в Python

Дерево классификации

  • Последовательность вопросов «если — иначе» об отдельных признаках.

  • Цель: определить метки классов.

  • Улавливает нелинейные зависимости между признаками и метками.

  • Не требует масштабирования признаков (например, стандартизации и т. д.)

Машинное обучение на основе древовидных моделей в Python

Набор данных по раку молочной железы в 2D

Рак молочной железы в 2D

Машинное обучение на основе древовидных моделей в Python

Диаграмма дерева решений

Диаграмма CART

Машинное обучение на основе древовидных моделей в Python

Дерево классификации в scikit-learn

# Import DecisionTreeClassifier
from sklearn.tree import DecisionTreeClassifier
# Import train_test_split
from sklearn.model_selection import train_test_split
# Import accuracy_score
from sklearn.metrics import accuracy_score

# Split the dataset into 80% train, 20% test X_train, X_test, y_train, y_test= train_test_split(X, y, test_size=0.2, stratify=y, random_state=1)
# Instantiate dt dt = DecisionTreeClassifier(max_depth=2, random_state=1)
Машинное обучение на основе древовидных моделей в Python

Дерево классификации в scikit-learn

# Fit dt to the training set
dt.fit(X_train,y_train) 

# Predict the test set labels
y_pred = dt.predict(X_test)

# Evaluate the test-set accuracy accuracy_score(y_test, y_pred)
0.90350877192982459
Машинное обучение на основе древовидных моделей в Python

Области решений

Область решения: область в пространстве признаков, где всем экземплярам присваивается одна метка класса.

Граница решения: поверхность, разделяющая области решений.

Области решений

Машинное обучение на основе древовидных моделей в Python

Области решений: CART против линейной модели

Логистическая регрессия vs дерево решений

Машинное обучение на основе древовидных моделей в Python

Давайте потренируемся!

Машинное обучение на основе древовидных моделей в Python

Preparing Video For Download...