paint-brush
Stokastik orta qradientin başa düşülməsitərəfindən@kustarev
31,726 oxunuşlar
31,726 oxunuşlar

Stokastik orta qradientin başa düşülməsi

tərəfindən Andrey Kustarev4m2024/06/06
Read on Terminal Reader
Read this story w/o Javascript

Çox uzun; Oxumaq

Gradient enişi, təqdim olunan məqsəd funksiyalarının qlobal minimumlarını tapmaq üçün istifadə edilən məşhur optimallaşdırmadır. Alqoritm, funksiyanın yamacını ən aşağı nöqtəyə çatana qədər keçmək üçün məqsəd funksiyasının qradiyentindən istifadə edir. Tam Qradient Eniş (FG) və Stokastik Qradient Eniş (SGD) alqoritmin iki məşhur variantıdır. FG hər iterasiya zamanı bütün verilənlər bazasından istifadə edir və yüksək hesablama dəyəri ilə yüksək yaxınlaşma dərəcəsini təmin edir. Hər iterasiyada SGD alqoritmi işə salmaq üçün verilənlərin alt dəstindən istifadə edir. Bu, daha səmərəlidir, lakin qeyri-müəyyən bir yaxınlaşma ilə. Stochastic Average Gradient (SAG) hər iki əvvəlki alqoritmin faydalarını təmin edən başqa bir variasiyadır. O, aşağı hesablama ilə yüksək yaxınlaşma dərəcəsini təmin etmək üçün keçmiş qradiyentlərin orta göstəricisindən və verilənlər dəstinin bir hissəsindən istifadə edir. Alqoritm vektorlaşdırma və mini dəstələrdən istifadə etməklə onun səmərəliliyini artırmaq üçün daha da dəyişdirilə bilər.

People Mentioned

Mention Thumbnail

Companies Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - Stokastik orta qradientin başa düşülməsi
Andrey Kustarev HackerNoon profile picture
0-item


Gradient enişi maşın öyrənməsi (ML) modelləşdirməsində ən populyar optimallaşdırma texnikasıdır. Alqoritm proqnozlaşdırılan dəyərlər və əsas həqiqət arasındakı səhvi minimuma endirir. Texnika səhvi başa düşmək və minimuma endirmək üçün hər bir məlumat nöqtəsini nəzərə aldığından, onun performansı təlim məlumatlarının ölçüsündən asılıdır. Stochastic Gradient Descent (SGD) kimi üsullar hesablama performansını yaxşılaşdırmaq üçün nəzərdə tutulmuşdur, lakin yaxınlaşma dəqiqliyi bahasına.


Stochastic Average Gradient Tam Gradient Eniş və SGD kimi tanınan klassik yanaşmanı tarazlaşdırır və hər iki fayda təklif edir. Lakin alqoritmdən istifadə etməzdən əvvəl onun modelin optimallaşdırılması üçün əhəmiyyətini başa düşməliyik.

Maşın Öyrənmə Məqsədlərinin Gradient Enişi ilə Optimallaşdırılması

Hər bir ML alqoritmi modelin performansını minimuma endirmək və ya təkmilləşdirmək məqsədi daşıyan əlaqəli itki funksiyasına malikdir. Riyazi olaraq itki aşağıdakı kimi müəyyən edilə bilər:


Bu, sadəcə olaraq faktiki və proqnozlaşdırılan çıxış arasındakı fərqdir və bu fərqi minimuma endirmək bizim modelimizin əsas həqiqət dəyərlərinə yaxınlaşması deməkdir.


Minimumlaşdırma alqoritmi itki funksiyasını keçmək və qlobal minimum tapmaq üçün gradient enişindən istifadə edir. Hər bir keçid addımı çıxışı optimallaşdırmaq üçün alqoritmin çəkilərinin yenilənməsini nəzərdə tutur.


Düz Gradient Eniş

Adi gradient eniş alqoritmi bütün verilənlər bazasında hesablanmış bütün qradiyentlərin ortasından istifadə edir. Tək bir təlim nümunəsinin həyat dövrü aşağıdakı kimi görünür:



Çəki yeniləmə tənliyi aşağıdakı kimi görünür:

Burada W model çəkilərini, dJ/dW isə model çəkisinə görə itki funksiyasının törəməsidir. Ənənəvi metod yüksək yaxınlaşma dərəcəsinə malikdir, lakin milyonlarla məlumat nöqtəsindən ibarət böyük verilənlər bazası ilə işləyərkən hesablama baxımından bahalı olur.

Stokastik Qradient Eniş (SGD)

SGD metodologiyası adi GD ilə eyni qalır, lakin gradientləri hesablamaq üçün bütün verilənlər toplusundan istifadə etmək əvəzinə, girişlərdən kiçik bir partiyadan istifadə edir. Metod daha səmərəlidir, lakin qlobal minimum ətrafında çox hoplaya bilər, çünki hər bir iterasiya öyrənmə üçün məlumatların yalnız bir hissəsindən istifadə edir.

Stokastik Orta Qradient

Stokastik Orta Qradient (SAG) yanaşması GD və SGD arasında orta zəmin kimi təqdim edilmişdir. O, təsadüfi məlumat nöqtəsini seçir və onun dəyərini həmin nöqtədəki qradientə və həmin xüsusi məlumat nöqtəsi üçün saxlanılan keçmiş gradientlərin çəkili ortasına əsasən yeniləyir.


SGD kimi, SAG hər problemi qabarıq, diferensiallana bilən funksiyaların sonlu cəmi kimi modelləşdirir. İstənilən iterasiyada o, çəki yeniləməsi üçün indiki qradiyentlərdən və əvvəlki gradientlərin ortalamasından istifadə edir. Tənlik aşağıdakı formanı alır:



Konvergensiya dərəcəsi

İki məşhur alqoritm, tam gradient (FG) və stoxastik qradiyent enmə (SGD) arasında, FG alqoritmi hesablama üçün hər iterasiya zamanı bütün məlumat dəstindən istifadə etdiyi üçün daha yaxşı yaxınlaşma dərəcəsinə malikdir.

SAG-ın SGD-yə bənzər bir quruluşa malik olmasına baxmayaraq, onun yaxınlaşma dərəcəsi tam gradient yanaşma ilə müqayisə edilə bilər və bəzən daha yaxşıdır. Aşağıdakı Cədvəl 1 təcrübələrin nəticələrini ümumiləşdirir Schmidt və s. al .

Mənbə: https://arxiv.org/pdf/1309.2388

Əlavə Dəyişikliklər

Təəccüblü performansına baxmayaraq, performansı yaxşılaşdırmaq üçün orijinal SGD alqoritminə bir neçə dəyişiklik təklif edilmişdir.


  • Erkən İterasiyalarda Yenidən Ölçmə: Alqoritm istiqaməti n (məlumat nöqtələrinin ümumi sayı) ilə normallaşdırdığı üçün ilk bir neçə iterasiya zamanı SAG yaxınlaşması yavaş qalır. Bu, alqoritm hələ çox məlumat nöqtəsini görmədiyi üçün qeyri-dəqiq qiymətləndirmə təmin edir. Modifikasiya n əvəzinə m ilə normallaşdırmağı təklif edir, burada m həmin xüsusi iterasiyaya qədər ən azı bir dəfə görülən məlumat nöqtələrinin sayıdır.
  • Mini-toplar: Stokastik Gradient yanaşması eyni vaxtda birdən çox məlumat nöqtəsini emal etmək üçün mini dəstələrdən istifadə edir. Eyni yanaşma SAG üçün də tətbiq oluna bilər. Bu, kompüterin səmərəliliyini artırmaq üçün vektorlaşdırma və paralelləşdirməyə imkan verir. O, həmçinin SAG alqoritmi üçün mühüm problem olan yaddaş yükünü azaldır.
  • Addım ölçüsü təcrübəsi: Daha əvvəl qeyd olunan addım ölçüsü (116L) heyrətamiz nəticələr verir, lakin müəlliflər 1L addım ölçüsündən istifadə edərək daha da sınaqdan keçirdilər. Sonuncu daha yaxşı yaxınlaşma təmin etdi. Bununla belə, müəlliflər təkmilləşdirilmiş nəticələrin rəsmi təhlilini təqdim edə bilməyiblər. Onlar belə nəticəyə gəlirlər ki, konkret problem üçün optimal olanı tapmaq üçün addım ölçüsü ilə təcrübə aparılmalıdır.


Son Düşüncələr

Gradient enişi, təqdim olunan məqsəd funksiyalarının qlobal minimumlarının yerləşdirilməsi üçün istifadə edilən məşhur optimallaşdırmadır. Alqoritm, funksiyanın yamacını ən aşağı nöqtəyə çatana qədər keçmək üçün məqsəd funksiyasının qradiyentindən istifadə edir.

Tam Qradient Eniş (FG) və Stokastik Qradient Eniş (SGD) alqoritmin iki məşhur variantıdır. FG hər iterasiya zamanı bütün verilənlər bazasından istifadə edir və yüksək hesablama dəyəri ilə yüksək yaxınlaşma dərəcəsini təmin edir. Hər iterasiyada SGD alqoritmi işə salmaq üçün verilənlərin alt dəstindən istifadə edir. Bu, daha səmərəlidir, lakin qeyri-müəyyən bir yaxınlaşma ilə.


Stochastic Average Gradient (SAG) hər iki əvvəlki alqoritmin faydalarını təmin edən başqa bir variasiyadır. O, aşağı hesablama ilə yüksək yaxınlaşma dərəcəsini təmin etmək üçün keçmiş qradiyentlərin orta göstəricisindən və verilənlər dəstinin bir hissəsindən istifadə edir. Alqoritm vektorlaşdırma və mini dəstələrdən istifadə etməklə onun səmərəliliyini artırmaq üçün daha da dəyişdirilə bilər.