pipeline python,Python-什么是sklearn.pipeline.Pipeline?

I can't figure out how the sklearn.pipeline.Pipeline works exactly.

There are a few explanation in the doc. For example what do they mean by:

Pipeline of transforms with a final estimator.

To make my question clearer, what are steps? How do they work?

Edit

Thanks to the answers I can make my question clearer:

When I call pipeline and pass, as steps, two transformers and one estimator, e.g:

pipln = Pipeline([("trsfm1",transformer_1),

("trsfm2",transformer_2),

("estmtr",estimator)])

What happens when I call this?

pipln.fit()

OR

pipln.fit_transform()

I can't figure out how an estimator can be a transformer and how a transformer can be fitted.

解决方案

Transformer in scikit-learn - some class that have fit and transform method, or fit_transform method.

Predictor - some class that has fit and predict methods, or fit_predict method.

Pipeline is just an abstract notion, it's not some existing ml algorithm. Often in ML tasks you need to perform sequence of different transformations (find set of features, generate new features, select only some good features) of raw dataset before applying final estimator.

Here is a good example of Pipeline usage.

Pipeline gives you a single interface for all 3 steps of transformation and resulting estimator. It encapsulates transformers and predictors inside, and now you can do something like:

vect = CountVectorizer()

tfidf = TfidfTransformer()

clf = SGDClassifier()

vX = vect.fit_transform(Xtrain)

tfidfX = tfidf.fit_transform(vX)

predicted = clf.fit_predict(tfidfX)

# Now evaluate all steps on test set

vX = vect.fit_transform(Xtest)

tfidfX = tfidf.fit_transform(vX)

predicted = clf.fit_predict(tfidfX)

With just:

pipeline = Pipeline([

('vect', CountVectorizer()),

('tfidf', TfidfTransformer()),

('clf', SGDClassifier()),

])

predicted = pipeline.fit(Xtrain).predict(Xtrain)

# Now evaluate all steps on test set

predicted = pipeline.predict(Xtest)

With pipelines you can easily perform a grid-search over set of parameters for each step of this meta-estimator. As described in the link above. All steps except last one must be transforms, last step can be transformer or predictor.

Answer to edit:

When you call pipln.fit() - each transformer inside pipeline will be fitted on outputs of previous transformer (First transformer is learned on raw dataset). Last estimator may be transformer or predictor, you can call fit_transform() on pipeline only if your last estimator is transformer (that implements fit_transform, or transform and fit methods separately), you can call fit_predict() or predict() on pipeline only if your last estimator is predictor. So you just can't call fit_transform or transform on pipeline, last step of which is predictor.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/335222.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

devc++鼠标变成了光标_Excel填充别再用鼠标拖拉了!用这4个方法,效率至少高10倍!...

Hello,各位叨友们好呀!我是叨叨君~根据下表对照一下自己,在Excel中需要批量填充公式的时候,你是不是还在用鼠标拖拉的方法,将光标放在单元格的右下角,然后按鼠标左键,向下拖动,填充完…

HDR和SDR的区别

概念不同,HDR是指高动态范围图像,SDR是指标准动态范围图像;||亮度范围表现不同,HDR比SDR有更大更亮的数据存储;||图像细节表现不同,HDR技术可以在使图像在明暗之间获取更多的细节表现。 概念不同&#xff…

运动基元_开发人员的新分布式基元

运动基元面向对象的基元(进程内基元) 作为Java开发人员,我非常熟悉面向对象的概念,例如类,对象,继承,封装,多态性等。除了面向对象的概念之外,我还非常熟悉Java运行时。它…

html5网站 500.19错误,WIN7操作系统创建IIS后浏览时提示HTTP500.19错误是怎么回事?如何解决?...

WIN7操作系统创建IIS后浏览时提示HTTP500.19错误是怎么回事?如何解决?作者:兴邦开发部人气:发表时间:2015年05月18日[文章内容简介]:WIN7操作系统创建IIS后浏览时提示HTTP500.19错误是怎么回事?…

python if else 必须同时出现吗,Python:Inline if语句else什么也不做

Assigning a Django Models field to a value if it matches a condition.g Car.objects.get(pk1234)g.data_version my_dict[dataVersion] if my_dict else expression_false # Do nothing??How do I do nothing in that case? We cant do if conditional else pass.I kn…

网络位置可以看到另一个人的电脑_计算机组成原理(一)- 冯·诺依曼体系结构...

1 计算机的基本硬件组成早期,DIY一台计算机,要先有三大件CPU内存主板1.1 CPU计算机最重要的核心配件,中央处理器(Central Processing Unit)。计算机的所有“计算”都是由CPU来进行的。CPU是一个超级精细的印刷电路版1.2 内存(Memory)你撰写的程序、打开的…

vaadin_Vaadin提示:以声明方式构建UI

vaadin如果您使用过GWT,那么您可能会发现UiBinder对于设计复杂的UI很有用。 在有关Vaadin的系列文章中,我们希望在Vaadin和GWT之间得出相似之处。 Vaadin提供了多种开箱即用的工具和组件,用于构建复杂且美观的UI。 其中之一是可以像UiBinder那…

什么是HLG

HLG的全称是Hybrid Log Gamma,它是由英国BBC和日本NHK电视台联合bai开发的高动态范围HDR的一个标准。两国的专业人士通过共同努力,提供了一种在高动态范围的图像采集和制作上都更加容易的方式。 摄像中,HLG和HDR10是HDR的两个常见标准。但HD…

关东升python从小白到大牛_《Python从小白到大牛》第3章 第一个Python程序

本章以HelloWorld作为切入点,介绍如何编写和运行Python程序代码。 运行Python程序主要有两种方式: 1.交互式方式运行 2.文件方式运行 本章介绍这两种运行方式实现HelloWorld程序。 使用Python Shell 进入Python Shell可以通过交互…

计算机知识小技巧,计算机知识---基本操作小技巧.pptx

计算机知识---基本操作小技巧计算机基础操作部门:生管部制作人:邓岳华日期:2017-4-14第一部分:键盘的构造第二部分:基础键的诠释与功能第三部分:组合键的应用Alt Tab 键的使用Alt F4 键的使用Shift Ctrl…

neo4j 显示名字_Neo4j:绘制“我的名字是……我在工作”图

neo4j 显示名字在过去的几天里,我一直在关注DHH发起的有关“我的名字是……”的推文。 据我了解,其想法是表明在白板上编写采访谜语/艰巨任务是荒谬的。 您好,我叫大卫。 我不会在白板上写气泡排序。 我一直在互联网上查找代码。 我不做谜语…

Final Cut Pro x(FCPX)调色笔记

文章目录一、注意点二、调色流程1. 颜色校正(一级校色)1.1 颜色转换即色彩空间转换1.2 降噪(noise reduction 即NR)1.3 调整曝光和对比度1.4 调整白平衡1.5 饱和度1.6 肤色调整2.二级校色2.1 突出人物主体的方法一2.2 突出人物主体…

axure web组件下载_实践干货:Axure插入图标的4种办法

编辑导读:图标是我们在制作产品原型的时候使用的比较多的一类素材,在日常绘制原型的时候一般是以插入的形式添加到Axure中。本文作者结合自身经验,介绍了四种Axure中引入图标的方法,希望对大家能有所帮助。在日常绘制原型的时候&a…

上师大计算机学院分数线,分数低还想上师范大学?这4所师范院校,二本的分数就够了...

截至目前,全国各省市高考成绩全部公布了,接下来最主要的工作就是填报志愿,选择适合自己的大学和专业。每年到这个时候,就有不少家长和考生问我,自己的分数较低,不够一本线,有没有比较好的师范大…

上古卷轴3晨风职业_巫师3:上古卷轴5老玩家,入手巫师3,体验昆特牌版“实验室”...

今天小编入手了,期待已久的《巫师3》,而作为一个《上古卷轴5》的“老油条”,奇趣君下面说一下,一个老滚5的“老油条”玩《巫师3》是什么样的体验。首先我进入了开场动画,我没有跳过,而是看着他的剧情&#…

MacBook Mac OS 无法识别移动硬盘的解决办法

文章目录方法一、打开系统信息 System Information方法二、打开磁盘工具 Disk Utility方法一、打开系统信息 System Information 打开「系统信息」,点击左侧硬件列表的 USB,在右侧找到你的移动硬盘点击查看,如下图所示: 然后打开…

java通用对象_有效的Java –所有对象通用的方法

java通用对象所有对象共有的方法(第3章) 这是Joshua Blochs的有效Java第3章的简短摘要。我仅包含与自己相关的项目。 一般 等值合约将等价关系描述为: x.equals(null) false 自反 – x.equals(x) true 对称 –如果x.equals(y) true则y…

反应速度测试软件,用批处理实现的反应速度测试工具

::此工具在Win7和Vista下请使用管理员身份运行!echo offcd.>%windir%\time.logset n:startmode con cols45 lines14Title 反应速度测试工具color 8aset aset bset sset/a n1set t%time:~9,1%cls&echo.&echo.&echo.echo.echo.echo 反应速度测试工具ec…

Mac终端shell类型bash和zsh切换

查看shell类型 可以执行命令echo $SHELL,先查看终端类型。 bash: /bin/bash zsh: /bin/zsh shell类型切换命令 切换到bash 输入命令:chsh -s /bin/bash 切换到zsh 输入命令:chsh -s /bin/zsh 注意需要重启终端生效(强制退出后…

mysql没有开启binlog能恢复数据吗_一个妹纸rm -rf把公司整个数据库删没了...

经历了两天不懈努力,终于恢复了一次误操作删除的生产服务器数据。对本次事故过程和解决办法记录在此,警醒自己,也提示别人莫犯此错。也希望遇到问题的朋友能找到一丝灵感解决问题。事故背景安排一个妹子在一台生产服务器上安装 Oracle&#x…