Оптимизаторът е термин, в който инженерите за дълбоко обучение често се натъкват. Хората често са объркани кога да използват кой оптимизатор. В тази поредица от публикации в блогове ще проучим какво е оптимизатор и ще разгледаме различни видове оптимизатори. Надявам се в края на тази поредица да надникнем в съществуващите оптимизатори, използвани от инженерите за задълбочено обучение, и да сме научили за основните им разлики.

Във всеки от нашите модели за задълбочено обучение ние въвеждаме функция за загуба, която е начин за изчисляване на това колко грешни са прогнозите от целите. Като вземаме под внимание измерването на грешката, дадено от функцията на загубата, ние правим малки промени в параметрите на нашия модел (т.е. тегла и отклонения) с оглед да направим прогнозите по-малко грешни. Но въпросът е как да разберем кога трябва да променим параметрите си и ако го направим тогава, с колко? Това е моментът, в който представяме оптимизаторите.

С много прости думи, оптимизаторите оптимизират функцията за загуба. Задачата на оптимизатора е да променя обучаемите параметри по начин, който минимизира функцията за загуба. Функцията за загуба насочва оптимизатора да се движи в правилната посока.

Оптимизаторите, които хората използват, могат да бъдат категоризирани в две големи групи:
1. Алгоритми за оптимизация от първи ред.
2. Алгоритми за оптимизация от втори ред.

Алгоритмите за оптимизация от първи ред минимизират функцията на загубата, като използват частични производни от първи ред. Производната от първи ред ни дава индикация дали функцията нараства или намалява в определена точка. Можете да освежите своите производни знания от първи ред тук:



Частичните производни от първи ред се наричат ​​градиенти. Градиентът на функция дава векторно поле. Градиентът е представен от Якобиан.



Почти всички оптимизатори, които се използват днес, попадат в тази категория, тъй като е сравнително по-бързо и лесно да се изчислят градиентите.

Алгоритмите за оптимизация от втори ред използват частични производни от втори ред, които също наричаме Хесиан, за да минимизират функцията на загубата. Тъй като е по-скъпо да се изчислят производните от втори ред, хората са склонни да избягват използването на този метод, ако вторите производни не са известни.

Това е за днес. Ще изучаваме градиентно спускане в следващата ни публикация в блога от тази серия.