没有合适的资源?快使用搜索试试~ 我知道了~
python中sklearn的pipeline模块实例详解
22 下载量 128 浏览量
2020-09-16
20:11:31
上传
评论
收藏 70KB PDF 举报
温馨提示
试读
2页
主要介绍了python中sklearn的pipeline模块的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
资源推荐
资源详情
资源评论
python中中sklearn的的pipeline模块实例详解模块实例详解
主要介绍了python中sklearn的pipeline模块的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学
习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
最近在看《深度学习:基于Keras的Python实践(魏贞原)》这本书,书中8.3创建了一个Scikit-Learn的Pipeline,首先标准化
数据集,然后创建和评估基线神经网络模型,代码如下:
# 数据正态化,改进算法
steps = []
steps.append(('standardize', StandardScaler()))
steps.append(('mlp', model))
pipeline = Pipeline(steps)
kfold = KFold(n_splits=10, shuffle=True, random_state=seed)
results = cross_val_score(pipeline, x, Y, cv=kfold)
print('Standardize: %.2f (%.2f) MSE' % (results.mean(), results.std()))
而PipeLine是什么来的呢?
Pipelines and composite estimators(官方文档)
转换器通常与分类器,回归器或其他估计器组合在一起,以构建复合估计器。最常用的工具是Pipeline。Pipeline通常与
FeatureUnion结合使用,FeatureUnion将转换器的输出连接到一个复合特征空间中。 TransformedTargetRegressor处理转换
目标(即对数变换y)。相反,Pipelines仅转换观察到的数据(X)。
Pipeline可用于将多个估计器链接为一个。这很有用,因为在处理数据时通常会有固定的步骤顺序,例如特征选择,归一化和
分类。Pipeline在这里有多种用途:
方便和封装:只需调用一次fit并在数据上进行一次predict即可拟合整个估计器序列。
联合参数选择:可以一次对Pipeline中所有估计器的参数进行网格搜索(grid search )。
安全性:通过确保使用相同的样本来训练转换器和预测器,Pipeline有助于避免在交叉验证中将测试数据的统计信息泄
漏到经过训练的模型中。
Pipeline是使用 ((key,,value)) 对的列表构建的,其中key是包含要提供此步骤名称的字符串,而value是一个估计器对象:
from sklearn.pipeline import Pipeline
from sklearn.svm import SVC
from sklearn.decomposition import PCA
estimators = [('reduce_dim', PCA()), ('clf', SVC())]
pipe = Pipeline(estimators)
pipe
output:
函数make_pipeline是构建pipelines的简写;它接受不同数量的估计器,并返回一个pipeline。它不需要也不允许命名估计器。
而是将其名称自动设置为其类型的小写字母:
from sklearn.pipeline import make_pipeline
from sklearn.naive_bayes import MultinomialNB
from sklearn.preprocessing import Binarizer
make_pipeline(Binarizer(), MultinomialNB())
output:
资源评论
weixin_38609247
- 粉丝: 8
- 资源: 970
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功