Analiza Wpływu Hiperparametrów

Przygotowanie Danych i Modele API w Keras

Zanim sprawdzimy wpływ hiperparametrów na naukę, musimy przygotować środowisko treningowe z dostarczonego notatnika. Pobieramy bazę MNIST (obrazy ręcznie pisanych cyfr od 0 do 9), zmieniamy ich kształt z kwadratów 28x28 pikseli na jeden płaski wymiar `(784,)` i normalizujemy, zabezpieczając system.

Definicja Samej Architektury z wykorzystaniem dziedziczenia KLAS

W skrypcie wykorzystano klasyczną modę na Subclassing API modułów Keras, gdzie na stałe implementujemy inżynieryjną bazę keras.Model.

Współczynnik Uczenia
(Learning Rate - LR)

Nawet najlepsza architektura wymodelowana wyżej nie zdoła się optymalnie wyuczyć, jeśli jej "poprawki grawitacyjne" błądzące w pętlach trenowania będą niszcząco nakierowywane. Learning Rate (LR) zarządza fizyczną skalą wprowadzanych zmian po absolutnie każdym popełnionym błędzie.

Zbyt niski LR
Optymalny LR
Zbyt wysoki LR

Przy zbyt małym LR piłeczka powolutku schodzi na dół, nigdy nie docierając przez limity czasu. Przy zbyt wysokim odbija się chaotycznie po burtach aż wyskoczy poza błąd na gigantyczne pomyłki z nieskońśzoności.

Rozmiar paczki danych
(Batch Size)

Na stabilność decyzyjną szkolenia oraz pamięć komputera (VRAM) wpływa to, jak szeroką grupę obrazków wpuszczamy do oceny jednocześnie przed jakąkolwiek modyfikacyjną poprawką - robimy ujęcia zbiorowe i wrzucamy z nich uśredniony wniosek po wierszach strat optymalizacyjnej Gradient Descent. To właśnie ustalone jest w ujęciu Batch.

Interaktywna wariancja gęstości - Batch Size

Rozmiar 16: Trening maszynowy jest "głośny" i wysoce chaotyczny! Wykres stochastycznie skacze z gigantycznymi schodami, ponieważ poprawka nakładana jest na logikę na podstawie niepewnej opinii od garstki zaledwie szesnastu przykładów. Daje to jednak zjawisko pomocnego "szumu" ułatwiającego wyrwanie się z pułapek optymalizacji matematycznej.

Wybór Optymalizatora
(Algorytmu kroczącego)

Nawet przy najlepszym tempie możemy wspomóc obiekty dodatkami wyciągającymi z algorytmów analitycznych (heurystycznych). Optymalizatory dyktują strategię w jaką system przetwarza zebrane informacje strat.

Architektura Warstw i Ryzyko Przeuczenia
(Niesławny Overfitting)

Oprócz suwaków o krokach, mylnie stających na topologii, decydujemy też o samej wulgarnej, nieczystej strukturze liczby synaps powiązań sieciowych. Model posiadający raptem garstkę węzłów ukrytych potrafi odcyfrować tylko wielce banalne i trywialne kształty oraz zgrubne obramowawcze kontury dla wielomianów danych. Wspaniały geometryczny rozrost liczbowy skrzywdzić rykoszetem też może algorytm wbijając go w tzw. memoratyzację znienawidzonej szarej sfery, czyli patologicznego nauczenia się ślepych rzędów pamięci.

⚙️ Symulator Treningowy + Kosmiczny Przebieg Analizy

Dopasuj hiperparametry w locie i wciśnij Rozpocznij Trening Sieci, aby obserwować na żywo logi konsolowe wyliczane obok symulacji jak to bywa w naturalnym notatniku Jupyter uruchamianego w Keras API!

0.00010.1 (Max)
161024
>_ Keras Training Logs
-- Oczekiwanie na inicjację Model.fit() --

Quiz końcowy