Sobes.tech
Middle — Senior

Modeli qiymətləndirmək üçün kross-validasiyanı necə istifadə etmək olar?

sobes.tech Süni İntellekt

AI-dan cavab

Kross-validasiya maşın öyrənmə modelinin keyfiyyətini qiymətləndirmək üçün istifadə olunan bir metod olub, modelin yeni məlumatlarda nə qədər yaxşı işləyəcəyini yoxlamağa kömək edir. Əsas fikir, orijinal məlumat dəstini bir neçə hissəyə (folds) bölmək, modeli bəzi hissələrdə öyrətmək və qalan hissələrdə sınaqdan keçirməkdir.

Ən çox istifadə olunan variant k-fold kross-validasiyadır:

  1. Məlumatları k bərabər hissəyə bölün.
  2. Hər bir k hissəsi üçün:
    • Modeli digər k-1 hissədə öyrədin.
    • Modeli cari hissədə (validasiya dəsti) sınaqdan keçirin.
  3. Bütün k iterasiyaların metriklərinin orta dəyəri modelin keyfiyyətinə daha etibarlı qiymət verir.

Bu, aşırı öyrənmənin qarşısını almağa və sadə təlim və test dəstlərindən daha obyektiv qiymətləndirmə əldə etməyə kömək edir.

Python-da scikit-learn istifadə edərək nümunə:

from sklearn.model_selection import cross_val_score
from sklearn.ensemble import RandomForestClassifier
from sklearn.datasets import load_iris

iris = load_iris()
X, y = iris.data, iris.target
model = RandomForestClassifier()
scores = cross_val_score(model, X, y, cv=5)  # 5-fold kross-validasiya
print(f"Orta dəqiqlik: {scores.mean():.2f}")