《大数据机器学习实践探索》 ---- 使用spark MLlib进行机器学习(2.2 设计机器学习管道 -- 特征生成与线性回归)


通过转换器(Transformer)进行特征生成

既然我们已经将我们的数据划分为:训练集和测试集,让我们准备数据来建立一个线性回归模型,根据给定卧室数量预测价格。 在稍后的示例中,我们将包括所有相关的特性,但现在让我们确保我们想法的可行性。

线性回归(就像Spark中的许多其他算法一样)要求所有输入特征都包含在数据帧中的单个向量中。因此,我们需要转换我们的数据。

spark 中的Transformers 接受数据帧作为输入,并返回一个新的数据帧,其中附加一个或多个列。它们不从数据中学习,而是使用转换方法应用基于规则的转换。

对于将我们所有的特征放入一个向量的任务,我们将使用 VectorAssembler 转换器。Vector Assembler获取一个输入列列表,并创建一个带有附加列的新数据框(Dataframe) ,我们一搬将该列命名为 特征列 – feature 。 它将这些输入列的值组合成一个向量,我们来看看其他几个可能用到的 :

  • VectorAssembler 将多个数值列按顺序汇总成一个向量列。

  • VectorIndexer 将一个向量列进行特征索引,一般决策树常用。

VectorIndexer 对于离散特征的索引是基于0开始的。其不保证对每个值每次索引建立的索引值都一样,但是会保证对于0值总是会给索引值0。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

shiter

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值