Modelo Multinomial-Dirichlet com distribuição hiperprior nos parâmetros de concentração

10

Vou tentar descrever o problema em questão o mais geral possível. Estou modelando observações como uma distribuição categórica com um vetor de probabilidade de parâmetro teta.

Então, assumo que o vetor de parâmetro theta segue uma distribuição anterior do Dirichlet com os parâmetros .α1,α2,,αk

É então possível também impor uma distribuição hyperprior sobre os parâmetros ? Terá que ser uma distribuição multivariada, como as distribuições categóricas e dirichlet? Parece-me que os alfas são sempre positivos, portanto, um hiper-gama gama deve funcionar.α1,α2,,αk

Não tenho certeza se alguém tentou ajustar tais modelos (possivelmente) superparametrizados, mas me parece razoável pensar que os alfas não devem ser corrigidos, mas sim provenientes de uma distribuição gama.

Por favor, tente me fornecer algumas referências, idéias sobre como eu poderia tentar essa abordagem na prática.

Dnaiel
fonte
Sim, isso é possível e já foi feito. Em geral, isso é chamado de modelo hierárquico bayesiano. De preferência, esse prioritário deve levar em conta possíveis dependências.
@Procrastinator thanks. você tem alguma referência para bons modelos hierárquicos bayesianos que lidam com esse tipo de modelo? obrigado.
Dnaiel
@Procrastinator: Você conseguiu documentos ou relatórios ou documentos de aplicação prática ideal sobre os modelos hierárquicos bayesianos?
Zhubarb 7/11

Respostas:

12

Eu não acho que esse seja um modelo "superparamaterizado". Eu diria que, ao colocar um prior sobre os paramaters de Dirichlet, você está sendo menos comprometido com qualquer resultado específico. Em particular, como você provavelmente sabe, para distribuições de dirichlet simétricas (por exemplo, ), a configuração fornece uma probabilidade mais prévia de distribuições multinomiais esparsas, enquanto fornece uma probabilidade anterior de distribuições multinomiais suaves.α1=α2=...αKα<1α>1

Nos casos em que não há grandes expectativas de distribuições multinomiais esparsas ou densas, colocar uma hiperiorior à sua distribuição Dirichlet fornece ao seu modelo uma flexibilidade adicional para escolher entre elas.

Originalmente, tive a ideia de fazer isso neste artigo . O hyperprior que eles usam é um pouco diferente do que você sugere. Eles amostram um vetor de probabilidade de um dirichlet e, em seguida, escalam-no por sorteio de um exponencial (ou gama). Portanto, o modelo é

βDirichlet(1)λExponential()θDirichlet(βλ)

O Dirichlet extra é simplesmente para evitar impor simetria.

Também vi pessoas usando apenas o Hyper Gamma anterior para um Dirichlet no contexto de modelos de markov ocultos com distribuições de emissões multinomiais, mas não consigo encontrar uma referência. Além disso, parece que eu encontrei hypers semelhantes usados ​​em modelos de tópicos.

jerad
fonte
Obrigado ótima resposta! Eu tenho um breve acompanhamento Q, este modelo permitirá variabilidade diferente para cada um dos thetas? Eu tenho essa pergunta, já que o parâmetro lambda é compartilhado entre todos os thetas; portanto, todos compartilham o mesmo parâmetro de dimensionamento, então eu estava pensando, no caso de super-dispersão, o modelo forneceria essa flexibilidade. Sua intuição / conhecimento aqui é muito apreciada! obrigado!
Dnaiel
@ Denaiel, diga-me se estou entendendo mal a sua pergunta, mas sim, mesmo com dirichlet simétrico anterior, diga , os desenhos dessa distribuição tenderão a produzir vetores esparsos . Por pouco, quero dizer que se você plotar o vetor como um histograma, seria muito alto, em vez de plano. No modelo acima, os paramaters de Dirichlet não são simétricos devido ao fato de o paramater ser extraído de uma hiper-anterior do dirichlet. Dirichlet(0.2,0.2,0.2,0.2)θθβ
Jerad
4

Para demonstrar uma solução para esse problema de hiperprioridade, implementei um modelo hierárquico gama-Dirichlet-multinomial no PyMC3. A gama anterior para o Dirichlet é especificada e amostrada de acordo com a postagem do blog de Ted Dunning .

O modelo que eu implementei pode ser encontrado neste Gist, mas também é descrito abaixo:

Este é um modelo hierárquico bayesiano (pool) para classificações de filmes. Cada filme pode ser classificado em uma escala de zero a cinco. Cada filme é classificado várias vezes. Queremos encontrar uma distribuição suave de classificações para cada filme.

Vamos aprender uma distribuição anterior de nível superior (hiperprior) nas classificações de filmes a partir dos dados. Cada filme terá seu próprio prior, que é suavizado por esse prior de nível superior. Outra maneira de pensar sobre isso é que a prévia das classificações para cada filme será reduzida para a distribuição em nível de grupo ou agrupada.

Se um filme tiver uma distribuição de classificação atípica, essa abordagem reduzirá as classificações para algo mais alinhado com o esperado. Além disso, esse aprendizado prévio pode ser útil para inicializar filmes com poucas classificações para permitir uma comparação significativa com filmes com muitas classificações.

O modelo é o seguinte:

γk=1...KGamma(α,β)

θm=1...MDirichletM(cγ1,...,cγK)

zm=1...M,n=1...NmCategoricalM(θm)

Onde:

  • K = 6K número de níveis de classificação de filmes (por exemplo, implica classificações 0, ..., 5)K=6
  • M número de filmes avaliados
  • mNm número de classificações para o filmem
  • α=1/K para fazer com que a coleção de gamma rvs atue como um coeficiente exponencial
  • βparâmetro de taxa para o nível superior exponencial anterior
  • c parâmetro de concentração que determina a força do nível superior antes
  • kγk nível superior anterior ao nível de classificaçãok
  • Kθm no nível do filme anterior aos níveis de classificação (multivariado com dimensão = )K
  • n mzmn classificação para filmenm
Brad B
fonte
1

Esta é uma modelagem prévia direta do conjugado bayesiano. Uma extensão natural do modelo beta-binomial. Um bom recurso para isso pode ser o livro . E Posterior também é Dirichlet e, portanto, a simulação de dirichlet dará resumos necessários

Subbiah
fonte
11
obrigado. Estou familiarizado com esse livro, ótima referência. Tentei investigar, mas eles não fornecem esse modelo hierárquico multinomial diretamente, mas eles têm toneladas de boas idéias que podem ser aplicadas.
Dnaiel
11
O dirichlet-multinomial é um modelo conjugado, mas o op perguntou sobre um (hiper-) anterior nos parâmetros do Dirichlet. Não existe um conjugado padrão anterior para a distribuição de Dirichlet, embora seja necessário que exista , pois é um membro da família exponencial.
Jerad #