from sklearn.pipeline import Pipeline
管道机制在机器学习算法中得以应用的根源在于,参数集在新数据集(比如测试集)上的重复使用。
管道机制实现了对全部步骤的流式化封装和管理(streaming workflows with pipelines)。
注意:管道机制更像是编程技巧的创新,而非算法的创新。
接下来我们以一个具体的例子来演示sklearn库中强大的Pipeline用法:
1. 加载数据集
import pandas as pd
from sklearn.cross_validation import train_test_split
from sklearn.preprocessing import LabelEncoder
df = pd.read_csv('https://archive.ics.uci.edu/ml/machine-learning-databases/'
'breast-cancer-wisconsin/wdbc.data', header=None)
# Breast Cancer Wisconsin dataset
X, y = df.values[:, 2:], df.values[:, 1]
# y为字符型标签
# 使用LabelEncoder类将其转换为0开始的数值型
encoder = LabelEncoder()
y = encoder.fit_transform(y)
>>> encoder.transform(['M', 'B'])
array([1, 0])
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=.2, random_state=0)

本文探讨了sklearn中的Pipeline机制,强调其在机器学习算法流程中的重要性,提供了一个从加载数据集到构建算法流程的示例。Pipeline允许将特征标准化、降维等步骤与分类器串联,形成流水线式处理。文中通过Pipeline执行流程的分析,展示了如何在训练过程中依次应用StandardScaler、PCA和LogisticRegression,并将其与深度神经网络的多层结构进行了对比。
最低0.47元/天 解锁文章
490

被折叠的 条评论
为什么被折叠?



