Úvod
Představte si, že máme funkci a rádi bychom našli její minimum. Co bys dělal ?
Jednoduché že? Potřebujeme vyřešit pouze následující rovnici:
Jde o to, že najít vzorec není vždy snadné, protože bývají extrémně komplikované, zejména v hlubokém učení, kde se zabýváme komplexními funkcemi. Musíme tedy najít jinou metodu, která nám poskytne minimum funkce, aniž bychom museli hledat vzorec derivace .
Vybudujme trochu intuice
Předpokládejme, že máme funkci f s odpovídajícím grafem:
Začněme náhodným bodem . Cílem je posunout tento bod a přiblížit ho k tak, aby x*. Problém lze tedy rozdělit na dvě části:
-
Jakým směrem bychom měli posunout bod ? Vlevo nebo vpravo ?
-
Jak moc bychom to měli posunout?
Směr
Vybudujme trochu intuice, abychom odpověděli na první otázku. Podívejte se na následující bod:
Všimněte si, že:
-
když je bod napravo od optimálního bodu , jeho tečna jde nahoru.
-
když je bod napravo od optimálního bodu , jeho tečna klesá.
Směr čáry je určen znaménkem jejího sklonu:
-
Čára stoupá sklon je kladný.
-
Čára klesá sklon je záporný.
Všimněte si, že: \
Směrnice tečné čáry funkce v určitém bodě není větší než derivace v tomto bodě :
Takže jako odpověď na otázku "Kam bychom se měli přesunout ?":
-
vpravo od Musíme posunout doleva.
-
vlevo od Musíme posunout doprava.
Kroky
Nyní k druhé otázce: Kolik bychom měli přesunout ?
Podívejte se na následující příklady:
Můžeme dojít k závěru, že:
-
se blíží => Sklon tečny je malý => je malý.
-
je vzdáleno od => Sklon tečny je velký => je velký.
Odpovědí na obě otázky jsme dospěli k závěru, že pouze znalost derivace v bodě nám může poskytnout mnoho informací o směru a vzdálenosti optimálního bodu .
Gradientní klesání
Gradient sestup je formulací odpovědí na předchozí dvě otázky. Je to optimalizační iterační algoritmus, který aproximuje minimum funkce počínaje náhodným počátečním bodem . Algoritmus je uveden následovně:
kde:
-
není více než derivace v bodě .
-
je kladná konstanta, která určuje, jak velké kroky budou.
Všimněte si, že:
-
je napravo od => => => se posune doleva.
-
je vlevo od => => => se posune doprava.
-
blízko => blízko => Malá aktualizace na .
Kvíz
-
Kdy se klesání gradientu přestane opakovat:
-
Když je dostatečně malý.
-
Když se blíží .
-
Když . XXX
– Jak vybereme :
-
Vybíráme to náhodně. XXX
-
Bereme to v okolí .
-
Záleží na problému.
-
Proč potřebujeme gradientní sestup:
-
Protože počítače nejsou dostatečně výkonné na výpočet derivací.
-
Protože je extrémně těžké najít odvozené vzorce modelů hlubokého učení. XXX
-
Protože funkce mají více než jedno lokální minimum.