Musieliśmy wybrać kilka hiperparametrów, aby zdefiniować i wytrenować model. Kierujemy się intuicją, przykładami i sprawdzonymi metodami. Pierwszy wybór wartości hiperparametrów może jednak nie dać dobrych wyników. Jest to dobry punkt wyjścia do trenowania. Każdy problem jest inny, a dostrajanie tych hiperparametrów pomoże doprecyzować model, aby lepiej oddać jego szczegóły. Przyjrzyjmy się niektórym użytym hiperparametrom i ich znaczeniem:
Liczba warstw w modelu: liczba warstw w sieci neuronowej wskazuje, że jest on złożony. Wybierając tę wartość, musimy zachować ostrożność. Zbyt wiele warstw spowoduje, że model nauczy się zbyt wielu informacji o danych treningowych, co doprowadzi do nadmiernego dopasowania. Zbyt mało warstw może ograniczać możliwości uczenia modelu, co może prowadzić do zbyt niskiej skuteczności. W przypadku zbiorów danych klasyfikacji tekstu eksperymentowaliśmy z 1, 2 i 3-warstwowymi wersjami MLP. Modele z dwoma warstwami osiągają dobre wyniki, a w niektórych przypadkach lepiej niż trzywarstwowe. Analogicznie próbowaliśmy sepCNN z 4 i 6 warstwami, a modele czterowarstwowe osiągnęły dobre wyniki.
Liczba jednostek na warstwę: jednostki w warstwie muszą zawierać informacje dotyczące przekształcenia, które ma ono wykonać. W przypadku pierwszej warstwy zależy to od liczby funkcji. W kolejnych warstwach liczba jednostek zależy od tego, czy chodzi o rozwinięcie czy zawarcie umowy z poprzedniej warstwy. Postaraj się zminimalizować utratę informacji między warstwami. Wypróbowaliśmy wartości jednostek z zakresu
[8, 16, 32, 64]
i sprawdziły się jednostki 32/64.Współczynnik porzuceń: w modelu używane są warstwy kroczące. Określają one odsetek danych, które należy usunąć, aby uniknąć przeciążenia. Zalecany zakres: 0,2–0,5.
Częstotliwość uczenia się: to szybkość, z jaką zmienia się waga sieci neuronowej między iteracjami. Duża szybkość nauki może powodować duże wahania wagi i może nie uda nam się znaleźć optymalnych wartości. Niski współczynnik uczenia się jest dobry, ale model będzie potrzebować więcej iteracji. Dobrym pomysłem jest rozpoczęcie od poziomu 1-4. Jeśli trenowanie trwa bardzo długo, zwiększ tę wartość. Jeśli model się nie uczy, spróbuj zmniejszyć szybkość uczenia się.
Jest też kilka dodatkowych hiperparametrów, które odpowiednio dostosujemy.
Rozmiar jądra: rozmiar okna kręcenia. Zalecane wartości: 3 lub 5.
Wymiary umieszczone: liczba wymiarów, które mają zostać użyte do umieszczenia słów, tj. rozmiar każdego wektora słów. Zalecane wartości: 50–300. W ramach naszych eksperymentów korzystaliśmy z umieszczonych obiektów GloVe w 200 wymiarach z wytrenowaną warstwą umieszczania.
Poeksperymentuj z tymi hiperparametrami i sprawdź, co działa najlepiej. Po wybraniu najskuteczniejszych hiperparametrów do Twojego przypadku użycia model jest gotowy do wdrożenia.