岭回归(Tikhonov regularization)算法是对不适定问题进行回归分析时,最常用的正则化方法。岭回归训练组件基于该算法,支持稀疏、稠密两种数据格式,且支持带权重样本的训练。本文为您介绍岭回归训练组件的配置方法。

使用限制

支持的计算引擎为MaxCompute和Flink。

算法原理

岭回归是一种专用于共线性数据分析的有偏估计回归方法,实质上是一种改良的最小二乘估计法,通过放弃最小二乘法的无偏性,以损失部分信息、降低精度为代价获得回归系数更为符合实际、更可靠的回归方法,对病态数据的拟合要强于最小二乘法。

可视化配置组件参数

  • 输入桩
    输入桩(从左到右) 数据类型 建议上游组件 是否必选
    数据
    模型 读数据表
  • 组件参数
    页签 参数 描述
    字段设置 标签列名 输入表中的标签列名。
    特征列名数组 如果您已经配置了向量列名,则该参数不允许配置。
    用于训练的特征列名。
    说明 特征列名数组向量列名是两个互斥参数,您只能使用其中一个参数来描述算法的输入特征。
    向量列名 如果您已经配置了特征列名数组,则该参数不允许配置。
    向量列对应的列名。
    说明 特征列名数组向量列名是两个互斥参数,您只能使用其中一个参数来描述算法的输入特征。
    权重列名 权重列对应的列名。
    参数设置 惩罚因子:lambda 正则项系数,DOUBLE类型。
    收敛阈值 迭代方法的终止判断阈值,默认为1.0E~6。
    最大迭代步数 最大迭代步数,默认为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()