岭回归(Tikhonov regularization)算法是对不适定问题进行回归分析时,最常用的正则化方法。岭回归训练组件基于该算法,支持稀疏、稠密两种数据格式,且支持带权重样本的训练。本文为您介绍岭回归训练组件的配置方法。
使用限制
支持的计算引擎为MaxCompute、Flink或DLC。
算法原理
岭回归是一种专用于共线性数据分析的有偏估计回归方法,实质上是一种改良的最小二乘估计法,通过放弃最小二乘法的无偏性,以损失部分信息、降低精度为代价获得回归系数更为符合实际、更可靠的回归方法,对病态数据的拟合要强于最小二乘法。
可视化配置组件参数
输入桩
输入桩(从左到右)
数据类型
建议上游组件
是否必选
数据
无
是
模型
无
否
组件参数
页签
参数
描述
字段设置
标签列名
输入表中的标签列名。
特征列名数组
如果您已经配置了向量列名,则该参数不允许配置。
用于训练的特征列名。
说明特征列名数组和向量列名是两个互斥参数,您只能使用其中一个参数来描述算法的输入特征。
向量列名
如果您已经配置了特征列名数组,则该参数不允许配置。
向量列对应的列名。
说明特征列名数组和向量列名是两个互斥参数,您只能使用其中一个参数来描述算法的输入特征。
权重列名
权重列对应的列名。
参数设置
惩罚因子:lambda
正则项系数,DOUBLE类型。
收敛阈值
迭代方法的终止判断阈值,默认为1.0E~6。
学习率
用于控制模型在训练过程中参数更新的速度。默认为0.1。
最大迭代步数
最大迭代步数,默认为100。
优化方法
优化问题求解时选择的优化方法,支持以下取值:
LBFGS
GD
Newton
SGD
OWLQN
执行调优
节点个数
与单个节点内存大小参数配对使用。取值为[1, 9999]的正整数。
单个节点内存大小,单位M
取值范围为1024 MB~64*1024 MB。
输出桩
输出桩(从左到右)
数据类型
下游组件
模型
回归模型
模型信息
无
无
特征重要性
无
无
线性模型权重系数
无
无
通过代码方式配置组件
您可以将以下代码复制到PyAlink脚本组件中,使PyAlink脚本组件实现与该组件相同的功能。
from pyalink.alink import *
def main(sources, sinks, parameter):
batchData = sources[0]
ridge = RidgeRegTrainBatchOp()\
.setLambda(0.1)\
.setFeatureCols(["f0","f1"])\
.setLabelCol("label")
model = batchData.link(ridge)
model.link(sinks[0])
BatchOperator.execute()