• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

sklearn中的pipeline的创建与访问

开发技术 开发技术 1周前 (02-20) 5次浏览
前期博文提到管道(pipeline)在机器学习实践中的重要性以及必要性,本文则递进一步,探讨实际操作中管道的创建与访问。

已经了解到,管道本质上是一定数量的估计器连接而成的数据处理流,所以成功创建管道的唯一要求就是:管道中所有估计器必须具有fit()和transform()方法,但管道中最后一个估计器只需具有fit()方法足矣
这个约束条件的目的是保证,管道中后一个估计器能够接受前一个估计器的transform输出。

pipeline创建

创建管道一般有两种途径:

sklearn中的pipeline的创建与访问
如上图,利用Pipeline创建两个估计器构成的管道,并且指明每个步骤的名称;利用pipe_long.steps()方法可以得到管道的每个估计器的细节信息。

sklearn中的pipeline的创建与访问
对比这两个创建方法,可以发现不指定处理步骤名称时,系统会自动给估计器命名(见图中圆圈部分)。

访问pipeline中估计器信息

如下图所示,圆圈部分利用管道的named_steps属性和特定估计器的名称指定访问目标,而后访问目标的components_信息。
sklearn中的pipeline的创建与访问

下面是一个较为完整的实例:

第一步,先创建由数据标准化函数和逻辑回归分类器构成的管道,并在网格搜索的框架下进行训练数据的拟合:

sklearn中的pipeline的创建与访问

第二步:类似地,利用管道的named_steps属性指定逻辑回归估计器的步骤名称,得到估计器的大体信息和系数属性。

sklearn中的pipeline的创建与访问

实际上,管道机制与网格搜索的结合可以完成许多有意思的工作,这一部分内容见后期博文。


程序员灯塔
转载请注明原文链接:sklearn中的pipeline的创建与访问
喜欢 (0)