详情页标题前

阿里云人工智能平台PAIGBDT回归-云淘科技

详情页1

梯度渐进回归树GBDT(Gradient Boosting Decesion Tree)是一种迭代决策树算法,适用于线性及非线性回归场景。

组件配置

您可以使用以下任意一种方式,配置GBDT回归组件参数。

方式一:可视化方式

在Designer(原PAI-Studio)工作流页面配置组件参数。

页签

参数

描述

字段设置

输入列

输入数据源中,参与训练的特征列。支持DOUBLE及BIGINT类型。

说明

特征列数量不能超过800。

标签列

支持DOUBLE及BIGINT类型。

分组列

支持DOUBLE及BIGINT类型,默认将全表作为一组。

参数设置

损失函数类型

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

gbrank loss中的Tau参数

取值范围为[0,1]。

gbrank与regression loss中的指数底数

取值范围为[1,10]。

metric类型

支持NDCGDCG类型。

树数量

取值范围为1~10000。

学习速率

取值范围为(0,1)。

最大叶子数

取值范围为1~1000。

一棵树的最大深度

取值范围为1~100。

叶子节点容纳的最少样本数

取值范围为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

输入表中,用于训练的特征列名。支持DOUBLE及BIGINT类型。

所有数值列

labelColName

输入表中的标签列名,支持DOUBLE及BIGINT类型。

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~100。

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
        from dual
        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
        from dual
        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
        from dual
        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
        from dual
        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
        from dual
        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
        from dual
    ) 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}

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

阿里云企业补贴进行中: 马上申请

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心。

购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

转转请注明出处:https://www.yunxiaoer.com/162799.html

(0)
上一篇 2023年12月10日
下一篇 2023年12月10日
详情页2

相关推荐

  • 阿里云人工智能平台PAI心脏病预测-云淘科技

    心脏病严重影响人们的生命健康,如果可以通过人体相关体测指标,分析不同特征对心脏病的影响,则可以有效预防心脏病。本工作流基于真实的心脏病患者体测数据,为您介绍如何通过数据挖掘算法构建心脏病预测模型。 前提条件 已完成Designer相关权限授权,详情请参见云产品依赖与授权:Designer。 数据挖掘流程 数据集本工作流的数据集为UCI开源数据集,详情请参见H…

    2023年12月10日
  • 阿里云人工智能平台PAI基于回归算法实现农业贷款发放预测-云淘科技

    线性回归是数理统计中的回归分析方法,可以确定两种或两种以上变量之间相互依赖的定量关系。本文通过农业贷款的历史发放情况,使用该方法实现贷款发放预测。 背景信息 农业贷款发放问题是一个典型的数据挖掘问题。贷款发放人通过历史贷款数据(包括贷款人的年收入、种植作物种类及历史借贷信息等)构建经验模型,并预测受贷人的还款能力。 说明 本工作流数据为虚构,仅供学习。 数据…

    2023年12月10日
  • 阿里云人工智能平台PAI线性回归-云淘科技

    线性回归(Linear Regression)是分析因变量和多个自变量之间的线性关系模型。 组件配置 您可以使用以下任意一种方式,配置线性回归组件参数。 方式一:可视化方式 在Designer(原PAI-Studio)工作流页面配置组件参数。 页签 参数 描述 字段设置 选择特征列 输入数据源中,参与训练的特征列。 选择标签列 支持DOUBLE及BIGINT…

    阿里云人工智能平台PAI 2023年12月10日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 阿里云人工智能平台PAIPS线性回归-云淘科技

    线性回归(Linear Regression)是分析因变量和多个自变量之间的线性关系模型,参数服务器PS(Parameter Server)致力于解决大规模的离线及在线训练任务。PS线性回归支持千亿样本、十亿特征的大规模线性训练任务。 组件配置 您可以使用以下任意一种方式,配置PS线性回归组件参数。 方式一:可视化方式 在Designer(原PAI-Stud…

    2023年12月10日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。