Co w nazwie: hiperparametry

19

Zatem w rozkładzie normalnym mamy dwa parametry: średnią i wariancję . W książce Rozpoznawanie wzorców i uczenie maszynowe nagle pojawia się hiperparametr w terminach regularyzacji funkcji błędu.σ 2 λμσ2λ

Co to są hiperparametry? Dlaczego są tak nazwani? W jaki sposób intuicyjnie różnią się one od parametrów w ogóle?

cgo
źródło
3
Osobiście uważam, że to epidemia ludzi, którzy przechodzą hiper. Hyper to, hyper to. Hipersfera - to kula, d @ manit, przestań być tak hiper tylko dlatego, że wymiar przekracza 3. Hiperparametr - to parametr, d @ mnit, przestań się hiper tylko dlatego, że masz ich kilka i wydaje ci się, że wydaje ci się, że musisz wskazać poziom hierarchiczny lub coś takiego. W każdym razie, jeśli masz problem z optymalizacją, wyraźnie określ, jakie parametry są optymalizowane i wszelkie ograniczenia (jeśli jest to optymalizacja wielopoziomowa, przeliteruj to). Mam nadzieję, że w tym komentarzu nie zrobiło mi się za bardzo.
Mark L. Stone,
2
Zawsze używałem „hipersfery”, aby oznaczać „współwymiarowanie jednej kuli”, więc przynajmniej z matematyki wydaje się, że coś to znaczy. A przynajmniej kiedy mówię o matematyce. Uspokoję się teraz.
Matthew Drury,

Odpowiedzi:

18

Termin hiperparametr jest dość niejasny. Użyję go, aby odnieść się do parametru znajdującego się na wyższym poziomie hierarchii niż inne parametry. Na przykład rozważ model regresji ze znaną wariancją (w tym przypadku 1)

yN(Xβ,I)

a następnie z wyprzedzeniem parametrów, np

βN(0,λI)

Tutaj określa rozkład a określa rozkład dla . Kiedy chcę po prostu odwołać się do mogę nazwać go parametrem, a gdy chcę po prostu odwołać się do , mogę nazwać go hiperparametrem.λββyβλ

Nazywanie staje się bardziej skomplikowane, gdy parametry pojawiają się na wielu poziomach lub gdy jest więcej poziomów hierarchicznych (i nie chcesz używać terminu hyperhyperparameters). Najlepiej, jeśli autor dokładnie określi, co rozumie się, gdy użyje do tego terminu hiperparametru lub parametru.

jaradniemi
źródło
To miłe wytłumaczenie. Teraz wyobrażam sobie to jako „kompozycję funkcji”. Aby przetłumaczyć to, co umieszczasz w symbolach, jest normalnie dystrybuowane ze średnim , ale z kolei jest normalnie dystrybuowane tak i tak. DziękiyXβbeta
cgo
10

Hiperparametr to po prostu parametr, który wpływa, całkowicie lub częściowo, na inne parametry. Nie rozwiązują bezpośrednio problemu optymalizacji, który napotykasz, ale raczej optymalizują parametry, które mogą rozwiązać problem (stąd hiper , ponieważ nie są częścią problemu optymalizacji, ale są raczej „dodatkami”). Z tego, co widziałem, ale nie mam odniesienia, związek ten jest jednokierunkowy (na hiperparametr nie mogą mieć wpływu parametry, na które ma wpływ, stąd też hiper ). Zazwyczaj są one wprowadzane w schematach regularyzacji lub metaoptymalizacji.

Na przykład parametr może swobodnie wpływać na i aby dostosować się do kosztu regularyzacji (ale i nie mają wpływu na ). Zatem jest hiperparametrem dla i . Jeśli miałbyś dodatkowy parametr wpływający na , byłby to hiperparametr dla i hiper-nadparametr dla i (ale nigdy nie widziałem tej nomenklatury, ale nie sądzę, że to byłoby złe gdybym to widział).λμσμσλλμστλλμσ

Uważam, że koncepcja hiperparametrów jest bardzo przydatna do sprawdzania poprawności krzyżowej, ponieważ przypomina ona o hierarchii parametrów, a jednocześnie przypomina, że ​​jeśli nadal modyfikujesz (hiper-) parametry, nadal sprawdzasz poprawność krzyżową i nie generalizujesz, więc musisz zachowaj ostrożność przy swoich wnioskach (aby uniknąć okrągłego myślenia).

gaboryczny
źródło
7

Pozostałe wyjaśnienia są nieco niejasne; oto bardziej konkretne wyjaśnienie, które powinno to wyjaśnić.

Hiperparametry to parametry tylko modelu , a nie modelowanego procesu fizycznego. Wprowadzasz je „sztucznie”, aby Twój model „działał” w obecności skończonych danych i / lub skończonego czasu obliczeń . Gdybyś miał nieskończoną moc do mierzenia lub obliczania czegokolwiek, hiperparametry nie istniałyby w twoim modelu, ponieważ nie opisywałyby żadnego fizycznego aspektu rzeczywistego układu.

Z drugiej strony regularne parametry to te, które opisują system fizyczny, a nie są jedynie modelowaniem artefaktów.

Mehrdad
źródło
6

Nie jest to precyzyjnie zdefiniowany termin, więc przedstawię jeszcze jedną definicję, która wydaje się być spójna z powszechnym użyciem.

Hiperparametr jest wielkością oszacowaną w algorytmie uczenia maszynowego, która nie uczestniczy w formie funkcjonalnej ostatecznej funkcji predykcyjnej.

Pozwólcie mi to rozwinąć na przykładzie regresji grzbietu. W regresji grzbietu rozwiązujemy następujący problem optymalizacji:

β(λ)=argminβ((yXβ)t(yXβ)+λβtβ)
β=argminλ(yXβ(λ))t(yXβ(λ))

X,yX,y

f(X)=Xβ

λβλ

Matthew Drury
źródło
3

Jak dokładnie wskazał @jaradniemi, jedno użycie terminu hiperparametr pochodzi z modelowania hierarchicznego lub wielopoziomowego, w którym masz kaskadę modeli statystycznych, jeden zbudowany nad / pod innymi, przy użyciu zwykle warunkowych stwierdzeń prawdopodobieństwa.

Ale ta sama terminologia pojawia się również w innych kontekstach o różnych znaczeniach. Na przykład, widziałem termin „ hiperparametr” używany w odniesieniu do parametrów symulacji (długość przebiegu, liczba niezależnych replikacji, liczba oddziaływujących cząstek w każdej replikacji itp.) Modelu stochastycznego, który nie wynikał z wielopoziomowego modelowanie.

Marcelo Ventura
źródło
1
FWIW Zazwyczaj określałbym długość przebiegu, liczbę oddziałujących cząstek itp. Jako parametry strojenia.
jaradniemi 21.04.16
Zgadzam się. Dla mnie brzmi to bardziej odpowiedni wybór niż hiperparametry. Niemniej jednak dla innych, w innych obszarach wiedzy, wciąż brzmiało to wystarczająco rozsądnie.
Marcelo Ventura