樣本穩定指數(PSI)是衡量樣本變化所產生的位移量的一種重要指標,通常用于衡量樣本的穩定程度。
背景資訊
樣本穩定指數(PSI)通常用于衡量樣本的穩定程度。例如樣本在兩個月份之間的變化是否穩定,如果變數的PSI值小於0.1,則表示變化不太顯著。如果PSI值在0.1到0.25之間,則表示有比較顯著的變化。如果PSI值大於0.25,則表示變數變化比較劇烈,需要特殊關注。
通過畫圖的方法可以衡量樣本在不同時刻的穩定性,即將待比較的變數離散化成N個分箱,然後計算樣本分別在各個分箱中的數量及比例,並以柱狀圖的形式呈現出來,如下圖所示。該方法可以直觀地查看某個變數在兩批樣本上是否有劇烈的變化,但是無法量化,從而無法實現對樣本穩定性的自動監控。因此PSI就顯得尤為重要,PSI的計算公式如下。
組件配置
您可以使用以下任意一種方式,配置樣本穩定指數(PSI)組件參數。
方式一:可視化方式
在Designer工作流程頁面配置組件參數。
頁簽 | 參數 | 描述 |
欄位設定 | 要計算PSI指標的特徵 | 需要進行PSI指標計算的特徵列。 |
執行調優 | 核心數 | 使用的CPU Core數量,預設系統自動分配。 |
記憶體數 | 每個CPU Core使用的記憶體大小,預設系統自動分配。 |
方式二:PAI命令方式
使用PAI命令方式,配置該組件參數。您可以使用SQL指令碼組件進行PAI命令調用,詳情請參見SQL指令碼。
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計算的結果如下圖所示。