Omówienie uczenia maszynowego hiperparametrów

W przypadku każdego modelu potrzebujemy pewnych parametrów, które pomogą zapewnić podstawę do rozwiązania problemu / analizy i oceny modelu. Niektórych z tych parametrów należy nauczyć się na podstawie danych, a niektóre musimy wyraźnie zdefiniować z naszego końca. Parametry, których można się nauczyć z danych bez wyraźnego zdefiniowania, nazywane są parametrami modelu. Parametr zdefiniowany jawnie przez użytkownika nazywa się Hyperparameters. Hiperparametry są również parametrami samego modelu, ale termin hiperparametry są używane w uczeniu maszynowym, dzięki czemu można je łatwo odróżnić i nie należy ich mylić z parametrami modelu wyuczonymi z zestawu danych.

Co to jest uczenie maszynowe hiperparametrów?

W przypadku większości struktur uczenia maszynowego hiperparametry nie mają ścisłej definicji. Te hiperparametry rządzą systemem bazowym modelu, który kieruje podstawowymi (modalnymi) parametrami modelu. Spróbujmy zrozumieć hiperparametry w następującym przykładzie.

  • Strojenie skrzypiec jest bardzo ważne, gdy ktoś jest na etapie nauki, ponieważ w tym czasie tworzy się połączenia między różnymi zmysłami. Uszy, palce i oczy jednocześnie uczą się gry na skrzypcach. Teraz na początku Przyzwyczajenie się do brzmienia skrzypiec z tonem stwarza zły smak dźwięku, który zepsuje całe doświadczenie zakochania się w procesie nauki gry na skrzypcach.
  • Dlatego strojenie skrzypiec może naprawdę pomóc w nauce gry na skrzypcach. W ten sam sposób hiperparametr jest rodzajem dostrajania modelu uczenia maszynowego, aby nadać właściwy kierunek.
  • Hiperparametry są na ogół definiowane przed zastosowaniem algorytmu uczenia maszynowego do zestawu danych.
  • Teraz kolejnym zadaniem jest to, jaki powinien być hiperparametr i jaka powinna być jego wartość. Ponieważ trzeba wiedzieć, jakie struny są potrzebne do strojenia i jak nastroić skrzypce przed strojeniem. To samo dotyczy hiperparametrów, musimy zdefiniować, jakie hiperparametry i jaka powinna być ich wartość, w zasadzie zależy to od każdego zadania i każdego zestawu danych.
  • Aby to zrozumieć, przyjmijmy perspektywę optymalizacji modelu.
  • Przy wdrażaniu modelu uczenia maszynowego optymalizacja modelu odgrywa istotną rolę. Istnieje wiele gałęzi uczenia maszynowego, które są przeznaczone wyłącznie do optymalizacji modelu uczenia maszynowego. Ogólnie uważa się, że w celu optymalizacji modelu musimy zmodyfikować kod, aby błąd mógł zostać zminimalizowany.
  • Istnieją jednak ukryte elementy, które wpływają na optymalizację uczenia maszynowego poza modelem i mają duży wpływ na zachowanie modelu. Te ukryte elementy są nazywane hiperparametrami, są to kluczowe komponenty do optymalizacji dowolnego modelu uczenia maszynowego.
  • Hiperparametry to precyzyjne tunery / ustawienia, które kontrolują zachowanie modelu. Te hiperparametry są zdefiniowane poza modelem, ale mają bezpośredni związek z wydajnością modelu. Hiperparametry można uznać za ortogonalne względem modelu.
  • Kryteria definiowania hiperparametru są bardzo elastyczne i abstrakcyjne. Z pewnością istnieją pewne hiperparametry, takie jak liczba ukrytych warstw, szybkość uczenia się modelu, które są dobrze ustalone, a także pewne ustawienia, które mogą być traktowane jako hiperparametry dla konkretnego modelu, takie jak kontrolowanie pojemności modelu.
  • Istnieje prawdopodobieństwo, że algorytm zastąpi model, jeśli algorytmy uczą się bezpośrednio przez ustawienia. Jak wiadomo, hiperparametry nie są uczone / dostrajane przez zestaw szkoleniowy, dlatego do wyboru hiperparametrów wykorzystywany jest zestaw testowy lub walidacyjny. W Broadwayu ustawiamy różne wartości hiperparametrów, ta, która najlepiej działa z zestawem testowym lub walidacyjnym jest uważana za nasz najlepszy hiperparametr.

Kategorie hiperparametrów

Dla różnych typów zestawów danych i zgodnie z modelem możemy mieć różne hiperparametry w celu zwiększenia wydajności modelu. Zasadniczo hiperparametry można podzielić na dwie kategorie.

  • Hiperparametr do optymalizacji
  • Hiperparametry dla określonych modeli

Omówmy każdy z nich.

1. Hiperparametry do optymalizacji

Jak sama nazwa wskazuje, te hiperparametry są wykorzystywane do optymalizacji modelu.

  • Wskaźnik uczenia się

Ten hiperparametr określa, o ile nowo pozyskane dane zastąpią stare dostępne dane. Jeśli wartość tego hiperparametru jest wysoka, to znaczy wyższa szybkość uczenia się nie będzie odpowiednio optymalizować modelu, ponieważ istnieją szanse, że przeskoczy on powyżej minimów. Z drugiej strony, jeśli współczynnik uczenia się zostanie przyjęty znacznie mniej, wówczas konwergencja będzie bardzo powolna.

Szybkość uczenia się odgrywa kluczową rolę w optymalizacji wydajności modelu, ponieważ w niektórych przypadkach modele mają setki parametrów (parametry modelu) z krzywą błędów, szybkość uczenia się decyduje o częstotliwości sprawdzania krzyżowego ze wszystkimi parametrami. Ponadto trudno jest znaleźć lokalne minima krzywych błędów, ponieważ na ogół mają one nieregularne krzywe.

  • Wielkość partii

Aby przyspieszyć proces uczenia się, zestaw treningowy jest podzielony na różne partie. W przypadku stochastycznej procedury szkolenia modelu mała partia jest trenowana, oceniana i propagowana z powrotem, aby dostosować wartości wszystkich hiperparametrów, to samo powtarza się dla całego zestawu treningowego.

Jeśli wielkość partii jest większa niż, wydłuży to czas uczenia się i będzie wymagała więcej pamięci do przetworzenia na mnożenie macierzy. Jeśli wielkość partii jest mniejsza niż w obliczeniach błędów, wystąpi większy hałas.

  • Liczba epok

Epoka stanowi pełny cykl uczenia się danych w uczeniu maszynowym. Epoki odgrywają bardzo ważną rolę w procesie iteracyjnego uczenia się.

Błąd sprawdzania poprawności jest brany pod uwagę przy określaniu odpowiedniej liczby epok. Można zwiększyć liczbę epok, o ile zmniejszy się błąd sprawdzania poprawności. Jeśli błąd sprawdzania poprawności nie poprawi się w kolejnych epokach, oznacza to, że należy zatrzymać rosnącą liczbę epok. Jest również znany jako wczesne zatrzymanie.

2. Hiperparametry dla określonych modeli

Niektóre hiperparametry są zaangażowane w strukturę samego modelu. Niektóre z nich są następujące.

  • Liczba ukrytych jednostek

Konieczne jest zdefiniowanie liczby ukrytych jednostek dla sieci neuronowych w modelach do głębokiego uczenia. Ten hiperparametr służy do definiowania zdolności uczenia się modelu. w przypadku złożonych funkcji musimy zdefiniować kilka ukrytych jednostek, ale należy pamiętać, że nie powinno ono pasować do modelu.

  • Liczba warstw

Oczywiste jest, że sieć neuronowa z 3 warstwami da lepszą wydajność niż 2 warstwy. Zwiększenie więcej niż 3 nie pomaga tak bardzo w sieciach neuronowych. W przypadku CNN rosnąca liczba warstw czyni model lepszym.

Wniosek

Parametry hiper są definiowane jawnie przed zastosowaniem algorytmu uczenia maszynowego do zestawu danych. Hiperparametry służą do definiowania wyższego poziomu złożoności modelu i zdolności uczenia się. Hiperparametry mogą być również ustawieniami dla modelu. Niektóre hiperparametry są zdefiniowane w celu optymalizacji modeli (wielkość partii, szybkość uczenia się itp.), A niektóre są specyficzne dla modeli (liczba ukrytych warstw itp.).

Polecane artykuły

Jest to przewodnik po uczeniu maszynowym Hyperparameter. Tutaj omawiamy przegląd i czym jest uczenie maszynowe hiperparametrów z jego kategoriami. Możesz także przejrzeć następujące artykuły, aby dowiedzieć się więcej -

  1. Wprowadzenie do uczenia maszynowego
  2. Uczenie maszynowe bez nadzoru
  3. Rodzaje algorytmów uczenia maszynowego
  4. Zastosowania uczenia maszynowego
  5. Implementacja sieci neuronowych
  6. Top 6 porównań między CNN a RNN

Kategoria: