Gradient-laskeutuminen on optimointialgoritmi, jota käytetään minimoimaan iteratiivisesti alimpaan kohtaan etenevää funktiota. Sitä käytetään laajalti koneoppimisessa mallien optimointiin säätämällä parametreja virheiden vähentämiseksi. Tässä artikkelissa selitetään askel askeleelta laskelmat, jotka liittyvät gradientin laskeutumiseen koneoppimiseen.

Gradientin laskun ymmärtäminen

Radikalisoitumisen ydinajatuksena on päivittää malliparametrit tappiotoiminnon negatiivisen kaltevuuden suuntaan. Tämä prosessi jatkuu, kunnes parametrit ovat lähentyneet minimipisteeseen, mieluiten globaaliin minimiin.

Vaiheittainen laskentaprosessi

Oletetaan, että meillä on yksinkertainen lineaarinen regressiomalli, jossa on tappiotoiminto, kuten Mean Squared Error (MSE). Askeleet kaltevuuslaskeutumiselle ovat seuraavat:

  • Alusta parametrit (esim. painot ja harhat) pienillä satunnaisarvoilla.
  • Laske ennustettu tulostus käyttäen nykyisiä parametreja.
  • Lasketaan tappiofunktion arvo ennusteiden ja todellisten tietojen perusteella.
  • Lasketaan tappiotoiminnon kaltevuus kunkin parametrin osalta.
  • Päivitä jokainen parametri vähentämällä oppimisasteen ja sitä vastaavan kaltevuuden tuote.

Tämä prosessi toistuu tietyn määrän iteraatioita tai kunnes muutos tappio tulee mitättömän.

Esimerkkilaskenta

Harkitse yhtä tietopistettä, jossa on syöte ]x = 2[] ja tuloste y = 4[].Alusta paino []w = 0,5[[] ja harmittavuus []b = 0[]. Käytä oppimisnopeutta 0.1[].

Laske ennuste: .....................................................................................................................................................................................................................................................

Laskeutumisvirhe: error = ... - y = 1 - 4 = -3

Laske gradientit:

Gradient w.r.t paino: ∂L/∂w = 2 * virhe * x = 2 * (-3) * 2 = -12

Gradient w.r.t. bassition: ∂L/∂b = 2 * error = 2 * (-3) = -6

Päivitysparametrit:

Uusi paino: w = 0,5 - 0,1 * (-12) = 0,5 + 1,2 = 1,7

Uusi harha: b = 0 - 0,1 * (-6) = 0 + 0,6 = 0,6[