spark ml包

ml包包括三个主要的抽象类:转换器(Transformer)、评估器(Estimator)和管道(Pipeline)
pyspark ML中管道的概念用来表示从转换到评估(具有一系列不同阶段)的端到端的过程,这个过程可以对输入的一些原始数据(以DataFrame形式)执行必要的数据加工(转换),最后评估模型。

一个管道可以被认为是由一系列不同阶段组成的。在Pipeline对象上执行fit方法时,所有阶段按照stage参数中指定的顺序执行;stage参数是转换器和评估器对象的列表。管道对象的fit方法执行每个转换器的transform方法和所有评估器的fit方法。

通常,前一阶段的输出会成为下一阶段的输入:当从转换器或评估器抽象类型派生时,需要实现getOutputCol()方法,该方法返回创建对象时指定的outputCol参数的值。

(1)DataFrame:数据源,可以容纳多种数据类型。

(2)Transformer:是可以将一个DataFrame变换成另一个DataFrame的算法。例如,一个训练好的模型是一个Transformer,通过transform方法,将原始DataFrame转化为一个包含预测值的DataFrame。

(3)Estimator:是一个算法,接受一个DataFrame,产生一个Transformer。例如,一个学习算法(如PCA,SVM)是一个Estimator,通过fit方法,训练DataFrame并产生模型Transformer。

猜你喜欢

转载自blog.csdn.net/qq_16792139/article/details/120062243