显示估算器和复杂管道#

本示例演示了显示估算器和管道的不同方式。

# Authors: The scikit-learn developers
# SPDX-License-Identifier: BSD-3-Clause

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

紧凑文本表示#

当估算器以字符串形式显示时,仅会显示那些被设置为非默认值的参数。这减少了视觉干扰,使得在比较实例时更容易发现差异。

lr = LogisticRegression(l1_ratio=1)
print(lr)
LogisticRegression(l1_ratio=1)

富 HTML 表示#

在 Notebook 中,估算器和管道将使用富 HTML 表示。这对于总结管道和其他复合估算器的结构特别有用,并具备交互性以提供细节。点击下方的示例图片可展开 Pipeline 元素。请参阅 可视化复合估算器 了解如何使用此功能。

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
Pipeline(steps=[('columntransformer',
                 ColumnTransformer(transformers=[('pipeline-1',
                                                  Pipeline(steps=[('simpleimputer',
                                                                   SimpleImputer(strategy='median')),
                                                                  ('standardscaler',
                                                                   StandardScaler())]),
                                                  ('feat1', 'feat3')),
                                                 ('pipeline-2',
                                                  Pipeline(steps=[('simpleimputer',
                                                                   SimpleImputer(fill_value='missing',
                                                                                 strategy='constant')),
                                                                  ('onehotencoder',
                                                                   OneHotEncoder(handle_unknown='ignore'))]),
                                                  ('feat0', 'feat2'))])),
                ('logisticregression', LogisticRegression())])
在 Jupyter 环境中,请重新运行此单元格以显示 HTML 表示形式或信任 notebook。
在 GitHub 上,HTML 表示形式无法渲染,请尝试使用 nbviewer.org 加载此页面。


脚本总运行时间: (0 分 0.031 秒)

相关示例

显示管道

显示管道

scikit-learn 0.23 发布亮点

scikit-learn 0.23 发布亮点

具有混合类型的列转换器

具有混合类型的列转换器

scikit-learn 1.7 发布亮点

scikit-learn 1.7 发布亮点

由 Sphinx-Gallery 生成的图库