Gradyan İnişi

derin öğrenme
matematik
degrade iniş
Gradyan İnişi cover image

Giriiş

f(x)f(x) fonksiyonumuz olduğunu ve onun minimumunu bulmak istediğimizi düşünün. Ne yapardın?

Basit değil mi? Sadece aşağıdaki denklemi çözmemiz gerekiyor:

f(x)=0f'(x) = 0

Mesele şu ki, ff' formülünü bulmak her zaman kolay değildir, çünkü bunlar özellikle karmaşık işlevlerle uğraştığımız derin öğrenmede son derece karmaşık olma eğilimindedir. Dolayısıyla ff' türevinin formülünü bulmamıza gerek kalmadan bize bir fonksiyonun minimumunu sağlayabilecek başka bir yöntem bulmamız gerekiyor.

Hadi biraz sezgi geliştirelim

Diyelim ki, ilgili grafiği olan bir f fonksiyonumuz var:

Graph 1

Rastgele bir x0x_{0} noktasıyla başlayalım. Amaç, bu noktayı hareket ettirip f(f'(x*)=0) = 0 olacak şekilde xx*'a giderek yaklaştırmaktır. Dolayısıyla sorun iki kısma ayrılabilir:

  • xx noktasını hangi yöne hareket ettirmeliyiz? Sol mu Sağ mı?

  • Ne kadar hareket ettirmeliyiz?

Yön

İlk soruyu cevaplamak için biraz sezgi geliştirelim. Aşağıdaki noktaya bir göz atın:

Graph 2

Graph 3

Dikkat:

  • x0x_{0} noktası en uygun xx* noktasının sağında olduğunda teğet çizgisi yukarı çıkar.

  • x0x_{0} noktası en uygun xx* noktasının sağında olduğunda teğet çizgisi aşağı iner.

Bir doğrunun yönü eğiminin işaretiyle belirlenir:

  • Bir doğru \imali\imali yukarıya doğru gidiyor, aa eğimi pozitif.

  • Bir doğru aşağı iniyor \imali\imali, eğim aa negatif.

Şunu unutmayın: \

Bir fonksiyonun belirli bir x0x_{0} noktasındaki teğet çizgisinin eğimi, o f(x0)f'(x_{0}) noktasındaki türevden fazla değildir:

tangent(x0):g(x)=f(x0).(xx0)+f(x0)tangent(x*{0}): g(x) = f'(x*{0}).(x-x*{0}) + f(x*{0})

"x0x_{0}'ı nereye taşımalıyız?" sorusuna yanıt olarak:

  • f(x0)<0f'(x_{0}) < 0     \implies x0x_{0} xx*'ın sağına     \implies x0x_{0}'ı sola taşımamız gerekiyor.

  • f(x0)>0f'(x_{0}) > 0     \implies x0x_{0} xx*'ın soluna     \implies x0x_{0}'ı sağa taşımamız gerekiyor.

Adımlar

Şimdi ikinci soruya gelelim: x0x_{0}'ı ne kadar taşımalıyız?

Aşağıdaki örneklere bir göz atın:

Graph 4

Graph 5

Şu sonuca varabiliriz:

  • x0x_{0}, xx*'a yakındır => Teğetin eğimi küçüktür => f(x0)f'(x_{0}) küçüktür.

  • x0x_{0}, xx*'dan uzak => Teğetin eğimi büyük => f(x0)f'(x_{0}) büyük.

Her iki soruyu da yanıtlayarak, yalnızca x0x_{0} noktasındaki türev bilgisinin bize en uygun x0x_{0} noktasının yönü ve uzaklığı hakkında birçok fikir verebileceği sonucuna vardık.

Gradyan iniş

Kademeli iniş, önceki iki sorunun yanıtlarının formülasyonudur. Bu, x0x_{0} rastgele bir başlangıç ​​noktasından başlayarak fonksiyonun minimum xx* değerine yaklaşan yinelemeli bir optimizasyon algoritmasıdır. Algoritma şu şekilde ifade ediliyor:

xn+1=xnlr×dfdx_nx*{n+1} = x*{n} - lr \times \frac{\mathrm{d} f}{\mathrm{d} x\_{n}}

Neresi:

  • dfdxn\frac{\mathrm{d} f}{\mathrm{d} x*{n}}, ff'nin xnx*{n} noktasındaki türevinden fazla değildir.

  • lrlr adımların ne kadar büyük olacağını belirleyen pozitif bir sabittir.

Şuna dikkat edin:

  • xnx_{n}, xx* => dfdxn>0\frac{\mathrm{d} f}{\mathrm{d} x_{n}} > 0 => xn+nınsag˘ındadır1=xnpozitifx_{n+'nın sağındadır 1} = x_{n} - pozitif => xnx_{n} sola doğru hareket eder.

  • xnx_{n}, xx*'ın solundadır => dfdxn<0\frac{\mathrm{d} f}{\mathrm{d} x_{n}} < 0 => xn+1=xn+pozitifx*{n +1} = x*{n} + pozitif => xnx_{n} sağa doğru hareket eder.

  • xnx_{n} xx*'a yakın => dfdxn\frac{\mathrm{d} f}{\mathrm{d} x_{n}} 00'a yakın => xyeku¨c\cu¨kgu¨ncellemenx_{'ye küçük güncelleme n}.

Test

  • Degrade iniş yinelemeyi ne zaman durdurur:

  • xnx_{n} yeterince küçük olduğunda.

  • xnx_{n} x0x_{0} değerine yakın olduğunda.

  • dfdx_n=0\frac{\mathrm{d} f}{\mathrm{d} x\_{n}} = 0 olduğunda. XXX

  • x0x_{0}'ı nasıl seçeriz:

  • Rastgele seçiyoruz. XXX

  • xnx_{n} civarından alıyoruz.

  • Soruna bağlı.

  • Neden degrade inişe ihtiyacımız var:

  • Çünkü bilgisayarlar türevleri hesaplayacak kadar güçlü değil.

  • Çünkü derin öğrenme modellerinin türev formüllerini bulmak son derece zordur. XXX

  • Çünkü fonksiyonların birden fazla yerel minimumu vardır.


Code Labs Academy ile Veri Bilimi ve Yapay Zeka konusunda ustalaşın! Çevrimiçi Eğitim Kampımıza Katılın – Esnek Yarı Zamanlı ve Tam Zamanlı Seçenekler Mevcuttur.


Career Services background pattern

Kariyer Hizmetleri

Contact Section background image

İletişimde kalalım

Code Labs Academy © 2025 Her hakkı saklıdır.