Middle
Təsdiqləmə mərhələsində model.eval() çağırmasanız nə baş verir?
sobes.tech Süni İntellekt
AI-dan cavab
PyTorch-da yoxlama mərhələsində model.eval() çağırılmazsa, model təlim rejimində (train) qalacaq və aşağıdakı nəticələrə səbəb olacaq:
- Dropout və BatchNorm kimi qatların davranışı aktiv qalacaq. Dropout girişin təsadüfi şəkildə sıfırlanmasına səbəb olacaq və BatchNorm yığılmış orta və dispersiyalar yerinə cari partiyanın statistikalarını istifadə edəcək.
- Bu, yoxlama dəstində qeyri-sabit və düzgün olmayan nəticələrə səbəb ola bilər, çünki model real istifadədə olduğu kimi davranmır.
- Nəticədə, keyfiyyət metrikləri (məsələn, dəqiqlik və ya səhv) pozulacaq və modelin həqiqi performansını əks etdirməyəcək.
Buna görə də, yoxlamadan əvvəl model.eval() istifadə edərək modeli qiymətləndirmə rejiminə keçirmək vacibdir, beləliklə bütün qatların düzgün davranışını təmin etmək və etibarlı nəticələr əldə etmək olar.