2. Sieć perceptronu wielowarstwowego MLP

2.6. Dobór współczynnika uczenia

2.6 Dobór współczynnika uczenia

Po wyznaczeniu kierunku poszukiwań p konieczne jest jeszcze określenie wartości współczynnika uczenia η aby można było jednoznacznie wyznaczyć nowy punkt rozwiązania  \textbf{w}_{k+1} = \textbf{w}_{k} + \eta \textbf{p}_{k} , spełniający warunek  E(\textbf{w}_{k+1} ) < E (\textbf{w}_{k}) . Pożądany jest taki dobór  \eta  aby nowy punkt rozwiązania  w_{k+1}  leżał możliwie blisko minimum funkcji celu na kierunku  \textbf{p}_k . Właściwy dobór współczynnika  \eta  ma ogromny wpływ na zbieżność algorytmu optymalizacyjnego. Im wartość  \eta  bardziej odbiega od wartości, przy której funkcja celu osiąga minimum na danym kierunku  \textbf{p}_k , tym większa liczba iteracji jest potrzebna do wyznaczenia optymalnego rozwiązania. Przyjęcie zbyt małej wartości  \eta  powoduje niewykorzystanie możliwości zminimalizowania wartości funkcji celu w danym kroku i konieczność jego powtórzenia w następnym. Zbyt duży krok powoduje ,,przeskoczenie" minimum funkcji i podobny efekt jak poprzednio. Istnieje wiele sposobów doboru wartości  \eta .

Najprostszy z nich (obecnie stosunkowo rzadko stosowany, głównie w uczeniu on-line) polega na przyjęciu stałej wartości  \eta  w całym procesie optymalizacyjnym. Stosuje się go praktycznie tylko w połączeniu z metodą największego spadku. Jest to sposób mało efektywny, gdyż nie uzależnia wartości współczynnika uczenia od aktualnego wektora gradientu, a więc i kierunku  \textbf{p}  w danej iteracji. Dobór wartości  \eta  odbywa się zwykle oddzielnie dla każdej warstwy sieci przy wykorzystaniu różnych zależności empirycznych. Jednym z rozwiązań jest przyjęcie oszacowania minimalnej wartości tego współczynnika dla każdej warstwy w postaci


 \eta \leq \min ( \frac{1}{n_i}) (2.21)

gdzie  n_i  oznacza liczbę wejść  i -tego neuronu w warstwie.

Inną bardziej skuteczną metodą doboru wartości współczynnika uczenia jest założenie ciągłej adaptacji, dopasowującej się do aktualnych zmian wartości funkcji celu w procesie uczenia. W metodzie tej na podstawie porównania wartości funkcji celu w  i -tej iteracji z jej poprzednią wartością, określa się strategię zmian wartości współczynnika uczenia. W celu przyspieszenia procesu uczenia w metodzie powinno się dążyć do ciągłego zwiększania wartości  \eta , jednocześnie sprawdzając, czy wartość funkcji błędu nie rośnie w porównaniu z błędem obliczanym przy starej wartości  \eta . Dopuszcza się przy tym nieznaczny wzrost wartości tego błędu w stosunku do wartości z poprzedniej iteracji. Jeżeli przez  E(i-1)  oraz  E(i) oznaczymy wartość funkcji celu odpowiednio w  (i-1) oraz w  i -tej iteracji, a przez  \eta_{i-1}, \eta_{i}  współczynniki uczenia w odpowiednich iteracjach, to w przypadku, gdy  E(i) > k_w E(i-1)  ( k_w  - dopuszczalny współczynnik wzrostu błędu) powinno nastąpić zmniejszenie wartości  \eta , zgodnie z zależnością [43]


 \eta_{i+1}=\alpha_d\eta_i (2.22)

gdzie  \alpha_d jest współczynnikiem zmniejszania wartości  \eta . W przeciwnym razie, gdy   E(i) < k_{w} E(i-1)   przyjmuje się


 \eta_{i+1}=\alpha_i\eta_i (2.23)

gdzie αi jest współczynnikiem zwiększającym wartość  \eta . Mimo pewnego zwiększenia nakładu obliczeniowego (potrzebnego do wyznaczenia dodatkowej wartości  \eta ) możliwe jest istotne przyspieszenie procesu uczenia. Charakterystyczna jest przy tym postać zmian wartości tego współczynnika w czasie uczenia. Zwykle na starcie (przy bardzo małej wartości startowej  \eta ) dominuje proces jego zwiększania, po czym po osiągnięciu pewnego stanu quasi-ustalonego jego wartość zmienia się, cyklicznie, narastając i zmniejszając się w następujących po sobie cyklach. Należy jednak podkreślić, że metoda adaptacyjna doboru  \eta  jest bardzo uzależniona od aktualnej postaci funkcji celu i wartości współczynników  k_w,  \alpha_d,  \alpha_i . Wartości optymalne przy jednej postaci funkcji mogą być dalekie od optymalnych przy zmianie postaci tej funkcji. Stąd w praktycznej realizacji tej metody należy uwzględnić mechanizmy kontroli i sterowania wartościami współczynników, dobierając je odpowiednio do specyfiki zadania.

Najefektywniejszy, choć zarazem najbardziej złożony, sposób doboru współczynnika uczenia polega na minimalizacji funkcji celu na wyznaczonym wcześniej kierunku  \textbf{p} . Należy tak dobrać skalarną wartość  \eta , aby nowe rozwiązanie odpowiadało minimum funkcji celu na tym kierunku  \textbf{p} . Zauważmy, że przy znanym kierunku  \textbf{p} jest to zadanie znalezienia minimum funkcji jednej zmiennej ( \eta ). Wśród najpopularniejszych metod wyznaczania minimum kierunkowego można wyróżnić metody bez gradientowe i gradientowe. W metodach bez gradientowych korzysta się jedynie z informacji o wartościach funkcji celu i wyznacza jej minimum w wyniku kolejnych podziałów założonego na wstępie zakresu wektora  \textbf{w} . Przykładem takich metod są: metoda bisekcji, złotego podziału odcinka, metoda Fibonacciego czy lokalna aproksymacja funkcji celu przy użyciu wielomianu drugiego stopnia [14]. Jedną z najbardziej popularnych metod gradientowych jest aproksymacja funkcji celu przy użyciu wielomianu drugiego lub trzeciego stopnia. Do wyznaczenia jego współczynników wykorzystuje się zarówno informację o wartości aktualnej funkcji celu w dwu sąsiednich punktach jak i jej pochodnej (gradientu). Szczegóły dotyczące tych algorytmów można znaleźć w podręcznikach dotyczących optymalizacji.