带病在网吧里写,,,,给点鼓励吧。。。
http://scikit-learn.org/stable/modules/pipeline.html
1、pipeline和featureUnion是干什么的:
pipeline之前已经介绍过了,结合transformer和estimator。
featureUinon听名字就知道,将多个transformer的结果vector拼接成大的vector。
2、两者的区别:
前者相当于feature串行处理,后一个transformer处理前一个transformer的feature结果;
后者相当于feature的并行处理,将所有transformer的处理结果拼接成大的feature vector。
3、pipeline:chaining estimators
Pipeline can be used to chain multiple estimators into one. 因为我们处理数据的过程一般都是比较固定的,比如特征选择、规范化、分类。所以pipeline主要由两个目的:
方便:fit、predict一次即可处理所有estimators的结果。
拼接参数选择:仅需一次即可grid search所有estimators的所有parameters。
pipeline的所有的estimators(除了最后一个)都必须是transformer(有transform方法),最后一个estimator可以使任何类型(transformer、classifier)
使用:通过一组(key, value)对来串联所有的estimators,key是自己对每一步骤的随意的命名,value是一个estimator object,例如:
每一个阶段的estimators存放在 steps属性中,可以通过索引这样取出每一个estimators: 也可以通过name这样取出每一个estimators( as a