Gradiente de verossimilhança gaussiana multivariada

8

Estou tentando encontrar a estimativa MAP para um modelo por descida gradiente. Meu prior é gaussiano multivariado com uma matriz de covariância conhecida.

Em um nível conceitual, acho que sei como fazer isso, mas esperava alguma ajuda com os detalhes. Em particular, se houver uma maneira mais fácil de abordar o problema, isso seria especialmente útil.

Aqui está o que eu acho que preciso fazer:

  • Para cada dimensão, encontre a distribuição condicional, dada a minha posição atual nas outras dimensões.
  • Isso me dá um gaussiano univariado local em cada dimensão, com a média e o desvio padrão corretos.
  • Eu acho que o gradiente deve ser apenas um vetor de derivadas para cada uma dessas distribuições univariadas.

Minha pergunta tem duas partes:

  1. Essa é a melhor abordagem a ser adotada ou existe uma maneira mais fácil?
  2. Supondo que eu precise seguir esse caminho, qual é a melhor maneira de encontrar essas distribuições condicionais?
David J. Harris
fonte
Existe alguma razão para você querer fazer isso com descida gradiente? Encontrar o MAP de um MVN com alguns sons anteriores como um problema bastante bem estudado. Como o MVN é auto-conjugado, uma abordagem totalmente bayesiana deve ser possível.
bayerj
@bayerj Boa pergunta. O prior é MVN, mas a probabilidade não é. Eu acho que isso limita minhas opções.
David J. Harris
Ah, ok, eu não entendi.
bayerj

Respostas:

8

E a otimização?

Vamos ver se eu entendi corretamente. Você tem um modelo condicionado a alguma observação x e um conjunto de parâmetros θ e um p ( θ anterior ) levando a uma probabilidade conjunta de L = p ( y | x , θ ) p ( θ ) . Os parâmetros são distribuídos de acordo com uma normal multivariada conhecida, ou seja, θ N ( μ , Σ )p(y|x,θ)xθp(θ)eu=p(y|x,θ)p(θ)θN(μ,Σ). Você quer encontrar a solução MAP para este problema, ou seja, Um caso especial desse problema é bem estudado na comunidade de redes neurais, conhecida como decaimento de peso. Nesse caso, μ = 0 e Σ = I σ 2 .

argmaxθeu.
μ=0 0Σ=Euσ2

Como você já observado, o truque é que . Quando você toma o log da densidade gaussiana, muitos termos feios (o exponencial) desaparecem e você terminará com sth como log p ( θ ) = 1argmaxθeu=argmaxθregistroeuregistrop(θ)=12(θ-μ)TΣ-1(θ-μ)+const

12(θ-μ)TΣ-1(θ-μ)θ=Σ-1(θ-μ).

(Verifique se isso foi feito rapidamente e na minha cabeça.) Juntamente com os derivados do seu modelo, você pode usar otimizadores prontos para chegar a uma solução MAP.

Atualização : Comentário incorporado por David J. Harris. As fórmulas devem estar corretas agora.

bayerj
fonte
(+1) Parece exatamente o que eu preciso. Vou fazer um pouco de verificação esta tarde e depois atingirei a marca de seleção "aceitar" se tudo der certo. Obrigado!
David J. Harris
θ
1/2
Deve ser isso, sim. Eu esqueci sobre isto!
bayerj
1
Deve notar-se que um multivariada (matriz covariância com não-diagonal) Gaussiana antes costume define Tikhonov regularização
Artem Sobolev
0

Se a probabilidade não é gaussiana, não é possível dizer se há resultados analíticos. Além disso, o segundo marcador está incorreto em geral. Como a probabilidade anterior e geral gaussiana não gera distribuições gaussianas condicionais nos componentes do vetor.

Uma maneira de obter o MAP seria fazer uma análise bayesiana completa, por exemplo, usando o MCMC e usar as amostras posteriores para estimar. [Nesse caso, você teria melhores informações disponíveis do que apenas usando o MAP.] Fora de interesse - por que não seguir esse caminho?

Outra abordagem poderia ser fazer (eu não vi isso geralmente feito, então alguém me corrija se estiver maluco):

p(θ|x)=p(x|θ)p(θ)p(x)

eu(θ|x)=eu(x|θ)+eu(θ)-eu(x)

deu(θ|x)dθ=deu(x|θ)dθ+deu(θ)dθ=0 0

θ

conjecturas
fonte
Obrigado pela sua contribuição. Talvez eu não tenha sido claro: agora, só estou interessado em encontrar o gradiente para o anterior. O gradiente do log-posterior é apenas o gradiente da probabilidade do log mais o gradiente do log-anterior, portanto, encontrar esses dois gradientes separadamente deve ser bom.
David J. Harris
1
θ