日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

GBDT回歸

梯度漸進回歸樹GBDT(Gradient Boosting Decision Tree)是一種迭代決策樹算法,適用于線性及非線性回歸場景。

組件配置

您可以使用以下任意一種方式,配置GBDT回歸組件參數。

方式一:可視化方式

Designer工作流頁面配置組件參數。

頁簽

參數

描述

字段設置

輸入列

輸入數據源中,參與訓練的特征列。支持DOUBLEBIGINT類型。

說明

特征列數量不能超過800。

標簽列

支持DOUBLEBIGINT類型。

分組列

支持DOUBLEBIGINT類型,默認將全表作為一組。

參數設置

損失函數類型

支持gbrank losslambdamart dcg losslambdamart ndcg lossregression loss類型。

gbrank loss中的Tau參數

取值范圍為[0,1]

gbrankregression loss中的指數底數

取值范圍為[1,10]

metric類型

支持NDCGDCG類型。

樹數量

取值范圍為1~10000。

學習速率

取值范圍為(0,1)

最大葉子數

取值范圍為1~1000。

一棵樹的最大深度

取值范圍為1~11。

葉子節點容納的最少樣本數

取值范圍為1~1000。

樣本采樣比例

取值范圍為(0,1)

訓練中采集的特征比例

取值范圍為(0,1)

測試樣本數比例

取值范圍為[0,1)

隨機數產生器種子

取值范圍為[0,10]

是否使用newton方法來學習

使用Newton方法的開關。

一個特征分裂的最大數量

取值范圍為1~1000。

執行調優

計算核心數

系統根據輸入數據量,自動分配訓練的實例數量。

每個核內存

系統根據輸入數據量,自動分配內存。單位為MB。

方式二:PAI命令方式

使用PAI命令方式,配置該組件參數。您可以使用SQL腳本組件進行PAI命令調用,詳情請參見SQL腳本

PAI -name gbdt
    -project algo_public
    -DfeatureSplitValueMaxSize="500"
    -DlossType="0"
    -DrandSeed="0"
    -DnewtonStep="0"
    -Dshrinkage="0.05"
    -DmaxLeafCount="32"
    -DlabelColName="campaign"
    -DinputTableName="bank_data_partition"
    -DminLeafSampleCount="500"
    -DsampleRatio="0.6"
    -DgroupIDColName="age"
    -DmaxDepth="11"
    -DmodelName="xlab_m_GBDT_83602"
    -DmetricType="2"
    -DfeatureRatio="0.6"
    -DinputTablePartitions="pt=20150501"
    -Dtau="0.6"
    -Dp="1"
    -DtestRatio="0.0"
    -DfeatureColNames="previous,cons_conf_idx,euribor3m"
    -DtreeCount="500"

參數

是否必選

描述

默認值

inputTableName

輸入表的名稱。

featureColNames

輸入表中,用于訓練的特征列名。支持DOUBLEBIGINT類型。

所有數值列

labelColName

輸入表中的標簽列名,支持DOUBLEBIGINT類型。

inputTablePartitions

輸入表中,參與訓練的分區。支持的格式包括:

  • Partition_name=value

  • name1=value1/name2=value2:多級分區

說明

如果指定多個分區,則使用英文逗號(,)分隔。

所有分區

modelName

輸出的模型名稱。

outputImportanceTableName

輸出特征重要性的表名。

groupIDColName

數據分組列。

全表

lossType

損失函數包括以下類型:

  • 0:GBRANK

  • 1:LAMBDAMART_DCG

  • 2:LAMBDAMART_NDCG

  • 3:LEAST_SQUARE

0

metricType

包括以下類型:

  • 0:NDCG(Normalized Discounted Cumulative Gain)

  • 1:DCG(Discounted Cumulative Gain)

  • 2:AUC,僅適用于label取值為0/1的場景(棄用)

0

treeCount

樹數量,取值范圍為1~10000。

500

shrinkage

學習速率,取值范圍為(0,1)

0.05

maxLeafCount

最大葉子數,取值范圍為1~1000。

32

maxDepth

樹的最大深度,取值范圍為1~11。

10

minLeafSampleCount

葉子節點容納的最少樣本數,取值范圍為1~1000。

500

sampleRatio

訓練采集的樣本比例,取值范圍為(0,1)

0.6

featureRatio

訓練采集的特征比例,取值范圍為(0,1)

0.6

tau

GBRank Loss中的Tau參數,取值范圍為[0,1]

0.6

p

GBRank Loss中的p參數,取值范圍為[1,10]

1

randSeed

隨機數種子,取值范圍為[0,10]

0

newtonStep

使用Newton迭代法的開關,取值范圍為{0,1}

1

featureSplitValueMaxSize

特征分裂的最大數量,取值范圍為1~1000。

500

lifecycle

輸出表的生命周期。

示例

  1. 使用SQL語句,生成測試數據。

    drop table if exists gbdt_ls_test_input;
    create table gbdt_ls_test_input
    as
    select
        *
    from
    (
        select
            cast(1 as double) as f0,
            cast(0 as double) as f1,
            cast(0 as double) as f2,
            cast(0 as double) as f3,
            cast(0 as bigint) as label
        union all
            select
                cast(0 as double) as f0,
                cast(1 as double) as f1,
                cast(0 as double) as f2,
                cast(0 as double) as f3,
                cast(0 as bigint) as label
        union all
            select
                cast(0 as double) as f0,
                cast(0 as double) as f1,
                cast(1 as double) as f2,
                cast(0 as double) as f3,
                cast(1 as bigint) as label
        union all
            select
                cast(0 as double) as f0,
                cast(0 as double) as f1,
                cast(0 as double) as f2,
                cast(1 as double) as f3,
                cast(1 as bigint) as label
        union all
            select
                cast(1 as double) as f0,
                cast(0 as double) as f1,
                cast(0 as double) as f2,
                cast(0 as double) as f3,
                cast(0 as bigint) as label
        union all
            select
                cast(0 as double) as f0,
                cast(1 as double) as f1,
                cast(0 as double) as f2,
                cast(0 as double) as f3,
                cast(0 as bigint) as label
    ) a;

    生成的測試數據表gbdt_ls_test_input如下。

    f0

    f1

    f2

    f3

    label

    1.0

    0.0

    0.0

    0.0

    0

    0.0

    0.0

    1.0

    0.0

    1

    0.0

    0.0

    0.0

    1.0

    1

    0.0

    1.0

    0.0

    0.0

    0

    1.0

    0.0

    0.0

    0.0

    0

    0.0

    1.0

    0.0

    0.0

    0

  2. 使用PAI命令,提交GBDT回歸組件的訓練參數。

    drop offlinemodel if exists gbdt_ls_test_model;
    PAI -name gbdt
        -project algo_public
        -DfeatureSplitValueMaxSize="500"
        -DlossType="3"
        -DrandSeed="0"
        -DnewtonStep="1"
        -Dshrinkage="0.5"
        -DmaxLeafCount="32"
        -DlabelColName="label"
        -DinputTableName="gbdt_ls_test_input"
        -DminLeafSampleCount="1"
        -DsampleRatio="1"
        -DmaxDepth="10"
        -DmetricType="0"
        -DmodelName="gbdt_ls_test_model"
        -DfeatureRatio="1"
        -Dp="1"
        -Dtau="0.6"
        -DtestRatio="0"
        -DfeatureColNames="f0,f1,f2,f3"
        -DtreeCount="10"
  3. 使用PAI命令,提交預測組件參數。

    drop table if exists gbdt_ls_test_prediction_result;
    PAI -name prediction
        -project algo_public
        -DdetailColName="prediction_detail"
        -DmodelName="gbdt_ls_test_model"
        -DitemDelimiter=","
        -DresultColName="prediction_result"
        -Dlifecycle="28"
        -DoutputTableName="gbdt_ls_test_prediction_result"
        -DscoreColName="prediction_score"
        -DkvDelimiter=":"
        -DinputTableName="gbdt_ls_test_input"
        -DenableSparse="false"
        -DappendColNames="label"
  4. 查看預測結果表gbdt_ls_test_prediction_result

    label

    prediction_result

    prediction_score

    prediction_detail

    0

    NULL

    0.0

    {“label”: 0}

    0

    NULL

    0.0

    {“label”: 0}

    1

    NULL

    0.9990234375

    {“label”: 0.9990234375}

    1

    NULL

    0.9990234375

    {“label”: 0.9990234375}

    0

    NULL

    0.0

    {“label”: 0}

    0

    NULL

    0.0

    {“label”: 0}