Postaram się opisać problem tak ogólnie, jak to możliwe. Modeluję obserwacje jako rozkład kategoryczny z parametrem wektor prawdopodobieństwa theta.
Następnie zakładam, że wektor parametrów theta podąża za rozkładem Dirichleta z parametrami .
Czy można zatem narzucić również rozkład hiperpriorów na parametry ? Czy będzie to rozkład wielowymiarowy, taki jak rozkład kategoryczny i rozkład Dirichleta? Wydaje mi się, że wartości alfa są zawsze dodatnie, więc hiperprior gamma powinien działać.
Nie jestem pewien, czy ktoś próbował dopasować takie (prawdopodobnie) sparametryzowane modele, ale wydaje mi się rozsądne sądzić, że alfa nie powinno być naprawione, ale raczej pochodzi z rozkładu gamma.
Proszę o dostarczenie mi referencji i spostrzeżeń, w jaki sposób mogę spróbować takiego podejścia w praktyce.
źródło
Odpowiedzi:
Nie wydaje mi się, żeby był to w ogóle „nadmiernie zmaterializowany” model. Twierdziłbym, że stawiając przełożonego nad parametrami Dirichleta, mniej zależy ci na jakimś konkretnym wyniku. W szczególności, jak zapewne wiecie, dla symetrycznych rozkładów Dirichleta (tj ) ustalanie α < 1 daje więcej uprzedniej prawdopodobieństwo nielicznych wielomianowych dystrybucjach, podczas gdy α > 1 daje więcej uprzedniej prawdopodobieństwo wygładzić wielomianu dystrybucje.α1=α2=...αK α<1 α>1
W przypadkach, w których nie ma silnych oczekiwań co do rzadkich lub gęstych rozkładów wielomianowych, umieszczenie hiperpriora nad rozkładem Dirichleta zapewnia Twojemu modelowi dodatkową elastyczność wyboru między nimi.
Pierwotnie wpadłem na pomysł zrobienia tego z tego artykułu . Hiperprior, którego używają, jest nieco inny niż sugerujesz. Próbkują wektor prawdopodobieństwa z dirichleta, a następnie skalują go za pomocą losowania z wykładniczej (lub gamma). Tak więc modelem jest
Dodatkowy Dirichlet ma po prostu uniknąć narzucania symetrii.
Widziałem także, jak ludzie używają hiper-gamma przed Dirichletem w kontekście ukrytych modeli markowa z wielomianowymi rozkładami emisji, ale nie mogę znaleźć odniesienia. Wygląda też na to, że spotkałem podobne hipersy używane w modelach tematycznych.
źródło
Aby zademonstrować rozwiązanie tego problemu hiper-pierwszeństwa, wdrożyłem hierarchiczny model wielomianowy gamma-Dirichleta w PyMC3. Priorytet gamma dla Dirichleta jest określony i próbkowany zgodnie z postem na blogu Teda Dunninga .
Model, który wdrożyłem, można znaleźć w tej Gist, ale opisano go również poniżej:
Jest to bayesowski hierarchiczny model (łączenie) ocen filmów. Każdy film można ocenić w skali od zera do pięciu. Każdy film jest oceniany kilka razy. Chcemy znaleźć płynniejszy rozkład ocen dla każdego filmu.
Nauczymy się wcześniejszej dystrybucji najwyższego poziomu (hyperprior) na temat ocen filmów na podstawie danych. Każdy film będzie wtedy miał swój własny ekwipunek, który zostanie wygładzony przez ten ekwipunek najwyższego poziomu. Innym sposobem myślenia na ten temat jest to, że liczba ocen dla każdego filmu zostanie zmniejszona w kierunku dystrybucji na poziomie grupy lub grupy.
Jeśli film ma nietypowy rozkład ocen, takie podejście zmniejszy oceny do czegoś bardziej zgodnego z oczekiwaniami. Ponadto ten wyuczony wcześniej może być przydatny do ładowania filmów z niewielką liczbą ocen, aby umożliwić ich znaczące porównanie z filmami z wieloma ocenami.
Model wygląda następująco:
gdzie:
źródło
Jest to wcześniejsze wcześniejsze modelowanie koniugatu Bayesa. Naturalne przedłużenie modelu Beta-Binomial. Dobrym źródłem informacji na ten temat może być książka . A Posterior to także Dirichlet, a zatem symulacja z dirichleta zapewni niezbędne podsumowania
źródło