248.90K

презентация инт сист

1.

scikit-learn
Библиотека машинного обучения для Python
Автор: Бузаяан Ала

2.

Общие сведения о scikit-learn
Открытая библиотека машинного обучения для Python

3.

Основные возможности
Классификация и регрессия
Кластеризация и снижение размерности
Предварительная обработка и преобразование данных
Оценка и валидация моделей
Построена на NumPy, SciPy и Matplotlib

4.

Архитектура scikit-learn
Загрузка данных
Предобработка
sklearn.datasets
sklearn.preprocessing
Модели
Оценка
Классификация, регрессия
sklearn.metrics

5.

Загрузка данных
цветы Iris
рукописные цифры
классификация вин
онлайн данные

6.

Пример загрузки данных
from sklearn import datasets
X, y = datasets.load_iris(return_X_y=True)
print(X.shape) # (150, 4)
print(y.shape) # (150,)
X - признаки (features), y - целевая переменная (target)

7.

Подготовка данных
sklearn.preprocessing модуль:
Масштабирование (scaling)
Нормализация (normalization)
Кодирование категорий

8.

Заполнение пропусков (sklearn.impute)
SimpleImputer - заполнение отсутствующих значений:
from sklearn.impute import SimpleImputer
imputer = SimpleImputer(strategy='mean')
X_imputed = imputer.fit_transform(X)
# strategy: 'mean', 'median', 'most_frequent'

9.

Примеры предобработки
StandardScaler:
from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)
MinMaxScaler:
from sklearn.preprocessing import MinMaxScaler
scaler = MinMaxScaler()
X_normalized = scaler.fit_transform(X)

10.

Построение моделей
Основной API scikit-learn:
model = Classifier()
model.fit(X_train, y_train)
predictions = model.predict(X_test)
score = model.score(X_test, y_test)

11.

Методы fit() и predict()
fit(X, y): обучение модели
Находит параметры модели на обучающих данных
predict(X): предсказание
Делает предсказания на новых данных
predict_proba(X): вероятности
Возвращает вероятности для каждого класса

12.

Метод score()
Вычисляет точность модели (accuracy)
from sklearn.linear_model import LogisticRegression
model = LogisticRegression()
model.fit(X_train, y_train)
accuracy = model.score(X_test, y_test)
print(f'Точность: {accuracy:.2%}')
score() = количество правильных / всего предсказаний

13.

Модуль sklearn.metrics
точность
полнота прогноза
полнота
гармоническое среднее
матрица ошибок

14.

Матрица ошибок
TP, FP, TN, FN - используются для расчёта
метрик
cm = confusion_matrix(
y_test, y_pred)
print(cm)

15.

Пример расчёта метрик
from sklearn.metrics import (accuracy_score,
precision_score, recall_score, f1_score)
acc = accuracy_score(y_test, y_pred)
prec = precision_score(y_test, y_pred)
rec = recall_score(y_test, y_pred)
f1 = f1_score(y_test, y_pred)
print(f'Accuracy: {acc:.3f}')

16.

Единообразный API
Все алгоритмы следуют одному паттерну:
Классификация
Регрессия
LogisticRegression, RandomForest, SVM
LinearRegression, Ridge, Lasso
Кластеризация
Снижение размерности
KMeans, DBSCAN, Hierarchical
PCA, t-SNE, Feature Selection

17.

Полный пример
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import accuracy_score
X, y = datasets.load_iris(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y)
clf = RandomForestClassifier(n_estimators=100)
clf.fit(X_train, y_train)
y_pred = clf.predict(X_test)
print(f'Accuracy: {accuracy_score(y_test, y_pred):.3f}')

18.

Преимущества scikit-learn
Единообразный API для всех алгоритмов
Отличная документация и примеры
Интеграция с NumPy и Pandas
Масштабируемость и производительность
Активное сообщество разработчиков

19.

Области применения
Классификация
Регрессия
Спам-фильтры, диагностика
Прогноз цен, тренды
Кластеризация
Уменьшение данных
Сегментация, группировка
Визуализация, оптимизация

20.

Спасибо за внимание!
scikit-learn - мощный инструмент
для машинного обучения на Python
Автор: Бузаяан Ала
English     Русский Правила