洛伦兹曲线

通过洛伦兹曲线,您可以直观地看到一个国家或地区收入分配状况。洛伦兹曲线的弯曲程度反映了收入分配的不平等程度。弯曲程度越大,收入分配越不平等。

画一个矩形,矩形的高用于衡量社会财富的百分比,将之分为N等份,每一等分为1/N的社会总财富。在矩形的长上,将所有家庭从最贫者到最富者自左向右排列,也分为N等分,第一个等份代表收入最低的1/N的家庭。在这个矩形中,将每1/N的家庭所有拥有的财富的占比累积起来,并将相应的点画在图中,便得到了一条曲线就是洛伦兹曲线。

组件配置

您可以使用以下任意一种方式,配置洛伦兹曲线组件参数。

方式一:可视化方式

Designer工作流页面配置组件参数。

页签

参数

描述

字段设置

选择字段列

参数设置

分位数

默认值为100。

执行调优

计算的核心数

计算的核心数,取值为正整数。

每个核心的内存(MB)

每个核心的内存。

方式二:PAI命令方式

使用PAI命令方式,配置该组件参数。您可以使用SQL脚本组件进行PAI命令调用,详情请参见SQL脚本

PAI -name LorenzCurve
    -project algo_public
    -DinputTableName=maple_test_lorenz_basic10_input
    -DcolName=col0
    -DoutputTableName=maple_test_lorenz_basic10_output -DcoreNum=20
    -DmemSizePerCore=110;

参数名称

是否必选

描述

默认值

inputTableName

输入表的名称。

outputTableName

输出表名称列表。

ColName

输入表选择列名称。支持选择多列,列之间使用英文逗号(,)分隔。

N

分位数。

100

inputTablePartitions

输入表中,参与训练的分区。系统支持以下格式:

  • Partition_name=value

  • name1=value1/name2=value2:多级分区

说明

指定多个分区时,分区之间使用英文逗号(,)分隔。

lifecycle

指定输出表的生命周期。取值为整数。单位:天。

28

coreNum

与参数memSizePerCore配对使用,取值为正整数。系统会根据输入数据量计算所起instance的数量。

默认自动计算

memSizePerCore

单个节点内存大小,单位MB。取值为正整数,取值范围建议为(1024, 64*1024)

默认自动计算

示例

  1. 生成如下测试数据。

    col0:double

    4

    7

    2

    8

    6

    3

    9

    5

    0

    1

    10

  2. 执行如下PAI命令。

    PAI -name LorenzCurve
        -project algo_public
        -DinputTableName=maple_test_lorenz_basic10_input
        -DcolName=col0
        -DoutputTableName=maple_test_lorenz_basic10_output
        -DcoreNum=20
        -DmemSizePerCore=110;
  3. 查看输出结果,如下表所示。

    quantile

    col0

    0

    0

    1

    0.01818181818181818

    2

    0.01818181818181818

    3

    0.01818181818181818

    4

    0.01818181818181818

    5

    0.01818181818181818

    6

    0.01818181818181818

    7

    0.01818181818181818

    8

    0.01818181818181818

    9

    0.01818181818181818

    10

    0.01818181818181818

    11

    0.05454545454545454

    12

    0.05454545454545454

    13

    0.05454545454545454

    14

    0.05454545454545454

    ...

    ...

    85

    0.8181818181818182

    86

    0.8181818181818182

    87

    0.8181818181818182

    88

    0.8181818181818182

    89

    0.8181818181818182

    90

    1

    91

    1

    92

    1

    93

    1

    94

    1

    95

    1

    96

    1

    97

    1

    98

    1

    99

    1

    100

    1