Scikit - Learn: оценщики и конвейеры

Machine LearningMachine LearningBeginner
Практиковаться сейчас

This tutorial is from open-source community. Access the source code

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом лабораторном занятии мы узнаем о различных способах отображения оценщиков и конвейеров с использованием scikit - learn. Оценщики и конвейеры являются важной частью пакета scikit - learn, позволяя нам строить и оценивать модели машинного обучения.

Советы по работе с ВМ

После завершения запуска ВМ нажмите в левом верхнем углу, чтобы переключиться на вкладку Notebook и получить доступ к Jupyter Notebook для практики.

Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook загрузится полностью. Валидация операций не может быть автоматизирована из - за ограничений в Jupyter Notebook.

Если вы сталкиваетесь с проблемами во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL sklearn(("Sklearn")) -.-> sklearn/ModelSelectionandEvaluationGroup(["Model Selection and Evaluation"]) ml(("Machine Learning")) -.-> ml/FrameworkandSoftwareGroup(["Framework and Software"]) sklearn(("Sklearn")) -.-> sklearn/CoreModelsandAlgorithmsGroup(["Core Models and Algorithms"]) sklearn(("Sklearn")) -.-> sklearn/DataPreprocessingandFeatureEngineeringGroup(["Data Preprocessing and Feature Engineering"]) sklearn/CoreModelsandAlgorithmsGroup -.-> sklearn/linear_model("Linear Models") sklearn/DataPreprocessingandFeatureEngineeringGroup -.-> sklearn/preprocessing("Preprocessing and Normalization") sklearn/DataPreprocessingandFeatureEngineeringGroup -.-> sklearn/pipeline("Pipeline") sklearn/DataPreprocessingandFeatureEngineeringGroup -.-> sklearn/impute("Impute") sklearn/ModelSelectionandEvaluationGroup -.-> sklearn/compose("Composite Estimators") ml/FrameworkandSoftwareGroup -.-> ml/sklearn("scikit-learn") subgraph Lab Skills sklearn/linear_model -.-> lab-49120{{"Scikit - Learn: оценщики и конвейеры"}} sklearn/preprocessing -.-> lab-49120{{"Scikit - Learn: оценщики и конвейеры"}} sklearn/pipeline -.-> lab-49120{{"Scikit - Learn: оценщики и конвейеры"}} sklearn/impute -.-> lab-49120{{"Scikit - Learn: оценщики и конвейеры"}} sklearn/compose -.-> lab-49120{{"Scikit - Learn: оценщики и конвейеры"}} ml/sklearn -.-> lab-49120{{"Scikit - Learn: оценщики и конвейеры"}} end

Сжатая текстовая репрезентация

Первый способ отображения оценщиков - это сжатая текстовая репрезентация. При отображении в виде строки оценщики показывают только те параметры, которые были установлены в нестандартные значения. Это уменьшает визуальный шум и делает легче заметить различия при сравнении экземпляров.

from sklearn.linear_model import LogisticRegression

## Создайте экземпляр логистической регрессии с штрафом l1
lr = LogisticRegression(penalty="l1")

## Отобразите оценщик
print(lr)

Богатая HTML - репрезентация

Второй способ отображения оценщиков - это богатая HTML - репрезентация. В ноутбуках оценщики и конвейеры будут использовать богатую HTML - репрезентацию. Это особенно полезно для суммаризации структуры конвейеров и других составных оценщиков с возможностью интерактивного просмотра деталей.

from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import OneHotEncoder, StandardScaler
from sklearn.impute import SimpleImputer
from sklearn.compose import make_column_transformer
from sklearn.linear_model import LogisticRegression

## Создайте конвейеры для числовых и категориальных данных
num_proc = make_pipeline(SimpleImputer(strategy="median"), StandardScaler())
cat_proc = make_pipeline(
    SimpleImputer(strategy="constant", fill_value="missing"),
    OneHotEncoder(handle_unknown="ignore"),
)

## Создайте препроцессор, который применяет числовой и категориальный конвейеры к определенным столбцам
preprocessor = make_column_transformer(
    (num_proc, ("feat1", "feat3")), (cat_proc, ("feat0", "feat2"))
)

## Создайте конвейер, который применяет препроцессор и логистическую регрессию
clf = make_pipeline(preprocessor, LogisticRegression())

## Отобразите конвейер
clf

Резюме

В этом лабораторном занятии мы узнали о двух способах отображения оценщиков и конвейеров с использованием scikit - learn: сжатой текстовой репрезентации и богатой HTML - репрезентации. Эти репрезентации могут быть полезны для суммаризации структуры конвейеров и других составных оценщиков и для сравнения различных экземпляров. Используя эти методы, мы можем улучшить наше понимание моделей машинного обучения и их производительности.