Gépi tanulás alapjai · Lecke 03

Gradiensmódszer és a tanulási ráta

Az előző leckében láttuk, hogy a tanítás a veszteség csökkentése. Most megnézzük, milyen algoritmus végzi ezt el. A gradiensmódszer lépésről lépésre javítja a súlyokat, a tanulási ráta pedig azt szabja meg, mekkorát lépjen egyszerre.

Vissza a tananyaghoz


Hogyan tanul a modell

A gradiensmódszer (gradient descent) egy iteratív optimalizáló algoritmus, amely a lineáris modell legjobb súlyait és torzítását keresi meg a veszteség minimalizálásával. A módszer szemléletesen egy völgybe való leereszkedés. A veszteség egy görbe, a vízszintes tengelyen a modell egy paramétere, a függőleges tengelyen a veszteség nagysága. A cél a völgy alja, ahol a veszteség a legkisebb. Az algoritmus a jelenlegi pontban megnézi, merre lejt a görbe, és arra tesz egy kis lépést. Ezt ismételgetve halad lefelé, amíg el nem éri a mélypontot.


a modell egy paramétere (például egy súly) veszteség start mélypont minden lépés a lejtés irányába visz lejjebb
A gradiensmódszer a veszteséggörbe lejtőjén ereszkedik lefelé, lépésről lépésre közelítve a mélypontot, ahol a veszteség a legkisebb.

A négy ismétlődő lépés

A gradiensmódszer négy lépést ismétel újra és újra. Először kiszámolja a veszteséget a jelenlegi súlyokkal. Utána meghatározza, melyik irányba érdemes módosítani a súlyokat és a torzítást, hogy a veszteség csökkenjen. Ezután tesz egy kis lépést ebbe az irányba. Végül elölről kezdi, egészen a konvergenciáig.


  1. Veszteség számításaA modell a jelenlegi súlyokkal és torzítással kiszámolja, mekkora a hibája a példákon.
  2. Irány meghatározásaAz algoritmus megnézi, merre kellene mozdítani a paramétereket, hogy a veszteség csökkenjen.
  3. Kis lépésA súlyokat és a torzítást egy kicsit elmozdítja ebbe az irányba, a tanulási ráta által megszabott mértékben.
  4. Ismétlés a konvergenciáigA folyamat addig fut, amíg a további lépések már alig csökkentik a veszteséget.

Konvergencia

A konvergencia (convergence) az az állapot, amikor a további lépések már nem csökkentik érdemben a veszteséget. Ilyenkor a gradiensmódszer megtalálta azokat a súlyokat és torzítást, amelyek közel a lehető legkisebb veszteséget adják. A lineáris modelleknél a veszteséggörbe konvex, egyetlen völgye van, ezért a konvergencia a globális mélypontot, vagyis az adott adaton lehető legjobb modellt jelenti. Bonyolultabb modelleknél a görbe több völgyet is tartalmazhat, ott a helyzet összetettebb, de az alapötlet ugyanez marad.


A tanulási ráta

A tanulási ráta (learning rate) az a szám, amely megszabja, mekkorát lépjen a modell egy-egy iterációban. Ez egy hiperparaméter, vagyis a tanítás előtt mi állítjuk be, nem a modell tanulja. A megfelelő érték kulcsfontosságú. Ha a tanulási ráta túl kicsi, a modell nagyon lassan halad, sok iteráció kell a mélyponthoz. Ha túl nagy, a modell átugorja a mélypontot, pattog a völgy két oldala között, és lehet, hogy soha nem konvergál. A jó tanulási ráta hatékonyan, ésszerű számú lépésben visz le a mélypontig.


TÚL KICSI lassú, sok apró lépés IDEÁLIS gyorsan a mélypontig TÚL NAGY átugorja, pattog
A tanulási ráta hatása. Túl kicsi értéknél a tanítás lassú, túl nagynál a modell átlép a mélyponton és pattog, az ideális érték gyorsan konvergál.

Kötegméret és epoch

Két további hiperparaméter befolyásolja a tanítást. A kötegméret (batch size) azt adja meg, hány példát dolgoz fel a modell, mielőtt egyszer frissíti a súlyokat. Ha az egész adathalmazt egyszerre nézi, teljes kötegről beszélünk. Ha minden egyes példa után frissít, az a sztochasztikus gradiensmódszer (stochastic gradient descent, SGD), amely zajosabb, de gyorsabb. A kettő között áll a mini-batch SGD, amely egy kisebb részhalmazonként frissít, és jó egyensúlyt ad hatékonyság és stabilitás között. Az epoch egy teljes átfutás a tanító halmazon. Több epoch általában jobb modellt ad, de tovább tart a tanítás, ezért az optimális számot kísérletezéssel keressük.



← Előző lecke Következő lecke →

Workshop

AI Transformation Day

Egésznapos, vezetőknek szóló program. Feltérképezzük, hol tart a szervezet, mi az első reális lépés, és milyen belső feltételek szükségesek a sikerhez. A nap végén konkrét, prioritizált cselekvési lista.

Érdekel a program →