随机采样

随机采样算法是一种从输入数据集中提取样本的技术,依据指定的比例或数量,随机选择样本以生成子集。每次采样过程都是独立的,确保每个样本被选中的概率相等且不受其他样本选择的影响。该方法常用于创建训练和测试数据集,以保证模型评估的无偏性和代表性,特别适用于大规模数据处理。

配置组件

方式一:可视化方式

Designer工作流页面添加随机采样组件,并在界面右侧配置相关参数:

参数类型

参数

描述

参数设置

采样个数

取值为正整数。

采样比例

取值为浮点数,范围(0,1)

放回采样

在随机采样过程中,每次选择样本后,将其放回原数据集,使得该样本在后续的采样中仍然有可能被再次选择。

随机数种子

默认系统自动生成。

执行调优

核心数

取值为正整数,默认系统自动分配。

核内存分配

取值为正整数,单位为MB,范围(1, 65536),默认系统自动分配。

方式二:PAI命令方式

使用PAI命令配置随机采样组件参数。您可以使用SQL脚本组件进行PAI命令调用,详情请参见场景4:在SQL脚本组件中执行PAI命令

PAI -name RandomSample
    -project algo_public
    -Dlifecycle="28"
    -DoutputTableName="test2"
    -Dreplace="false"
    -DsampleSize="500"
    -DinputPartitions="pt=20150501"
    -DinputTableName="bank_data_partition";

参数名称

是否必选

默认值

参数描述

inputTableName

输入表的名称。

inputTablePartitions

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

  • partition_name=value

  • name1=value1/name2=value2:多级格式

说明

指定多个分区时,分区之间使用英文逗号(,)分隔,例如name1=value1,value2。

outputTableName

输出结果表。

sampleSize

采样个数。

说明
  • sampleSizesampleRatio都为空时,系统会报错。

  • sampleSizesampleRatio都不为空时,以sampleSize为准。

sampleRatio

采样比例,浮点数,范围(0,1)

replace

false

是否放回,BOOLEAN类型。

randomSeed

系统自动分配

随机数种子,取值范围为正整数。

lifecycle

输出表的生命周期,取值范围为[1,3650]

coreNum

系统自动分配

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

memSizePerCore

系统自动分配

每个核心的内存(单位是MB),取值范围为(1, 65536)