PSI mengukur perbedaan distribusi antara dua sampel untuk memantau stabilitas model dari waktu ke waktu atau di berbagai lingkungan. PSI membantu mengidentifikasi pergeseran data (drift), sehingga memberikan informasi penting untuk pemeliharaan dan pembaruan model.
Cara kerja
PSI mengukur stabilitas sampel. Misalnya, PSI dapat menentukan apakah distribusi suatu variabel tetap stabil antara dua bulan. Nilai PSI kurang dari 0,1 menunjukkan perubahan yang tidak signifikan, nilai antara 0,1 hingga 0,25 menunjukkan perubahan moderat, dan nilai lebih besar dari 0,25 menunjukkan perubahan signifikan yang memerlukan perhatian.
Anda dapat menilai stabilitas sampel secara visual dengan memplot data. Diskretisasi variabel menjadi N bin, hitung jumlah dan proporsi sampel di setiap bin, lalu visualisasikan hasilnya dalam column chart, seperti yang ditunjukkan pada gambar berikut.
Meskipun metode ini memberikan cara intuitif untuk memeriksa perubahan drastis pada suatu variabel antara dua sampel, metode ini tidak kuantitatif dan tidak dapat digunakan untuk pemantauan stabilitas otomatis. Untuk itu, PSI sangat penting. Rumus perhitungan PSI adalah sebagai berikut.
Konfigurasi komponen
Metode 1: Gunakan antarmuka visual
Dalam pipeline Machine Learning Designer, tambahkan komponen Population Stability Index (PSI) dan konfigurasikan parameternya di panel sebelah kanan.
|
Jenis parameter |
Parameter |
Deskripsi |
|
Pengaturan field |
Features for PSI calculation |
Kolom fitur untuk perhitungan PSI. |
|
Tuning |
Cores |
Jumlah core CPU yang digunakan. Secara default, sistem mengalokasikan resource ini secara otomatis. |
|
Memory Size |
Ukuran memori untuk setiap core CPU. Secara default, sistem mengalokasikan resource ini secara otomatis. |
Metode 2: Gunakan perintah PAI
Gunakan perintah PAI untuk mengonfigurasi parameter komponen Population Stability Index (PSI). Anda dapat menjalankan perintah PAI di komponen SQL Script. Untuk informasi selengkapnya, lihat SQL Script.
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
|
Parameter |
Wajib |
Default |
Deskripsi |
|
inputBaseTableName |
Ya |
None |
Nama tabel dasar input. Komponen ini mengukur pergeseran tabel uji terhadap tabel dasar ini. |
|
inputBaseTablePartitions |
Tidak |
All partitions |
Partisi dari tabel dasar input. |
|
inputTestTableName |
Ya |
None |
Nama tabel uji input. Komponen ini menghitung pergeseran tabel uji ini relatif terhadap tabel dasar. |
|
inputTestTablePartitions |
Tidak |
All partitions |
Partisi dari tabel uji input. |
|
inputBinTableName |
Ya |
None |
Nama tabel hasil binning input. |
|
featureColNames |
Tidak |
All columns |
Kolom fitur untuk perhitungan PSI. |
|
outputTableName |
Ya |
None |
Nama tabel metrik output. |
|
lifecycle |
Tidak |
None |
Lifecycle tabel output. |
|
coreNum |
Tidak |
System-allocated |
Jumlah core CPU yang digunakan. |
|
memSizePerCore |
Tidak |
System-allocated |
Ukuran memori untuk setiap core CPU, dalam MB. |
Contoh
Sebelum menghitung PSI, Anda harus melakukan binning terhadap data fitur menggunakan komponen binning. Seperti yang ditunjukkan pada gambar berikut, komponen Population Stability Index (PSI) dihubungkan ke dua dataset sampel untuk perbandingan dan satu komponen binning. Untuk menjalankan perhitungan, Anda hanya perlu mengonfigurasi parameter Features for PSI calculation.

Hasil perhitungan PSI dijelaskan secara rinci dalam laporan model. Laporan tersebut menampilkan nilai PSI dan detail binning untuk setiap fitur dalam tabel hierarkis yang dapat diperluas. Kolom-kolomnya adalah Feature, Bin, Test %, Base %, Test - Base, ln(Test/Base), dan PSI. Sebagai contoh, PSI untuk fitur age adalah 0,0475 (terdiri dari 7 bin), PSI untuk fitur menopause adalah 0,0588 (terdiri dari 6 bin), dan PSI untuk fitur tumor_size adalah 0,0409. Anda dapat memperluas setiap baris fitur untuk melihat kontribusi masing-masing bin terhadap PSI keseluruhan.