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:
- Essa é a melhor abordagem a ser adotada ou existe uma maneira mais fácil?
- Supondo que eu precise seguir esse caminho, qual é a melhor maneira de encontrar essas distribuições condicionais?
normal-distribution
covariance-matrix
regularization
gradient-descent
ridge-regression
David J. Harris
fonte
fonte
Respostas:
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 ( θ ) L =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 .
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θL = argmaxθregistroeu registrop ( θ ) = 12( θ - μ )TΣ- 1( θ - μ ) + const
(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.
fonte
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):
fonte