全部產品
Search
文件中心

Platform For AI:Lasso迴歸訓練

更新時間:Jul 13, 2024

Lasso(Least absolute shrinkage and selection operator)迴歸演算法是一種壓縮估計演算法。Lasso迴歸訓練組件基於該演算法,支援稀疏、稠密兩種資料格式,且支援帶權重樣本的訓練。本文為您介紹Lasso迴歸訓練組件的配置方法。

使用限制

支援的計算引擎為MaxCompute、Flink或DLC。

演算法原理

Lasso迴歸演算法通過構造一個懲罰函數,得到一個較為精鍊的模型。使得它壓縮一些迴歸係數,即強制係數絕對值之和小於某個固定值,同時設定一些迴歸係數為0。因此保留了子集收縮的優點,是一種處理具有複共線性資料的有偏估計。

可視化配置組件參數

  • 輸入樁

    輸入樁(從左至右)

    資料類型

    建議上遊組件

    是否必選

    資料

    模型

    Lasso模型(用做增量訓練)

  • 組件參數

    頁簽

    參數

    描述

    欄位設定

    標籤列名

    輸入表中的標籤列名。

    特徵列名數組

    如果您已經配置了向量列名,則該參數不允許配置。

    用於訓練的特徵列名。

    說明

    特徵列名數組向量列名是兩個互斥參數,您只能使用其中一個參數來描述演算法的輸入特徵。

    向量列名

    如果您已經配置了特徵列名數組,則該參數不允許配置。

    向量列對應的列名。

    說明

    特徵列名數組向量列名是兩個互斥參數,您只能使用其中一個參數來描述演算法的輸入特徵。

    權重列名

    權重列對應的列名。

    參數設定

    懲罰因子:lambda

    正則項係數,DOUBLE類型。

    收斂閾值

    迭代方法的終止判斷閾值,預設為1.0E~6。

    學習率

    用於控制模型在訓練過程中參數更新的速度。預設為0.1。

    最大迭代步數

    最大迭代步數,預設為100。

    最佳化方法

    最佳化問題求解時選擇的最佳化方法,支援以下取值:

    • LBFGS

    • GD

    • Newton

    • SGD

    • OWLQN

    執行調優

    節點個數

    單個節點記憶體大小參數配對使用。取值為[1, 9999]的正整數。

    單個節點記憶體大小,單位M

    取值範圍為1024 MB~64*1024 MB。

  • 輸出樁

    輸出樁(從左至右)

    資料類型

    下遊組件

    模型

    迴歸模型

    Lasso迴歸預測

    模型資訊

    特徵重要性

    線性模型權重係數

通過代碼方式配置組件

您可以將以下代碼複製到PyAlink指令碼組件中,使PyAlink指令碼組件實現與該組件相同的功能。

from pyalink.alink import *

def main(sources, sinks, parameter):
    batchData = sources[0]
    ridge = LassoRegTrainBatchOp()\
        .setLambda(0.1)\
        .setFeatureCols(["f0","f1"])\
        .setLabelCol("label")
    model = batchData.link(ridge)
    model.link(sinks[0])
    BatchOperator.execute()