Taqsimot o'zgarishi nima va uni qanday aniqlash mumkin (KS-test, PSI)?
sobes.tech AI
AIdan javob
Taqsimot o'zgarishi — bu ma'lumotlarning vaqt o'tishi bilan taqsimotining o'zgarishi bo'lib, bu mashina o'qitish modelining sifatini pasaytirishi mumkin, chunki model bir taqsimotda o'qitilgan, ishlab chiqarishda esa ma'lumotlar boshqa manbadan keladi.
Taqsimot o'zgarishini aniqlash uchun ko'pincha statistik testlar va metrikalar ishlatiladi:
-
KS testi (Kolmogorov-Smirnov testi) — ikkita namunani solishtiradigan va ularning taqsimotlari qanchalik farq qilayotganini tekshiradigan parametrsiz test. Agar testning p-qiymati past bo'lsa, bu taqsimotlar sezilarli darajada farq qilayotganini anglatadi.
-
PSI (Populyatsiya Barqarorligi Indeksi) — bir o'zgaruvchining taqsimotidagi o'zgarishni ikki davr o'rtasida o'lchovchi metrika. PSI taqsimotning binlari bo'yicha hisoblanadi va o'zgarish darajasini ko'rsatadi. Odatda:
- PSI < 0.1 — sezilarli bo'lmagan o'zgarish
- 0.1 < PSI < 0.25 — o'rtacha o'zgarish
- PSI > 0.25 — sezilarli o'zgarish
Python'da KS testidan foydalanish misoli:
from scipy.stats import ks_2samp
reference_data = [...] # trening namunasi ma'lumotlari
current_data = [...] # yangi ma'lumotlar
statistic, p_value = ks_2samp(reference_data, current_data)
if p_value < 0.05:
print("Taqsimot o'zgarishi aniqlangan")
else:
print("Taqsimotlar o'xshash")
Shu tarzda, KS testi va PSI yordamida muntazam taqsimotlarni monitoring qilish, o'zgarishni erta aniqlash va chora ko'rish (masalan, modelni qayta o'qitish) uchun yordam beradi.