样本稳定指数(PSI)是衡量样本变化所产生的偏移量的一种重要指标,通常用于衡量样本的稳定程度。

背景信息

样本稳定指数(PSI)通常用于衡量样本的稳定程度。例如样本在两个月份之间的变化是否稳定,如果变量的PSI值小于0.1,则表示变化不太显著。如果PSI值在0.1到0.25之间,则表示有比较显著的变化。如果PSI值大于0.25,则表示变量变化比较剧烈,需要特殊关注。

通过画图的方法可以衡量样本在不同时刻的稳定性,即将待比较的变量离散化成N个分箱,然后计算样本分别在各个分箱中的数量及比例,并以柱状图的形式呈现出来,如下图所示。柱状图该方法可以直观地查看某个变量在两批样本上是否有剧烈的变化,但是无法量化,从而无法实现对样本稳定性的自动监控。因此PSI就显得尤为重要,PSI的计算公式如下。PSI计算公式

组件配置

PAI-Studio支持通过可视化或PAI命令方式,配置样本稳定指数(PSI)组件的参数:
  • 可视化方式
    页签 参数 描述
    字段设置 要计算PSI指标的特征 需要进行PSI指标计算的特征列。
    执行调优 核心数 使用的CPU Core数量,默认系统自动分配。
    内存数 每个CPU Core使用的内存大小,默认系统自动分配。
  • PAI命令方式
    PAI -name psi
    -project algo_public
    -DinputBaseTableName=psi_base_table
    -DinputTestTableName=psi_test_table
    -DoutputTableName=psi_bin_table
    -DinputBinTableName=pai_index_table
    -DfeatureColNames=fea1,fea2,fea3
    -Dlifecycle=7
    参数 描述 是否必选 默认值
    inputBaseTableName 输入基础表表名,计算测试表在基础表的基础上产生的偏移量。
    inputBaseTablePartitions 输入基础表分区。 全表
    inputTestTableName 输入测试表的名称,计算测试表在基础表的基础上产生的偏移量。
    inputTestTablePartitions 输入测试表分区。 全表
    inputBinTableName 输入分箱结果表的名称。
    featureColNames 需要计算PSI指标的特征列。 全表
    outputTableName 输出的指标表。
    lifecycle 输出表的生命周期。
    coreNum 使用的CPU Core数量。 系统自动分配
    memSizePerCore 每个CPU Core使用的内存大小,单位为MB。 系统自动分配

示例

使用PSI之前需要对特征数据进行分箱,因此需要一个分箱组件。如下图使用的示例,PSI组件分别连接待比较的两个样本数据集,再连接一个分箱组件。只需要配置要计算PSI指标的特征,即可进行PSI计算。PSI示例PSI计算的结果如下图所示。PSI结果