Eu sugeriria que você primeiro entendesse bem qual é o modelo probabilístico subjacente em uma rede neural bayesiana tradicional. A seguir, alguns termos serão escritos em negrito . Tente pesquisar esses termos no Google para encontrar informações mais detalhadas. Esta é apenas uma visão geral básica. Espero que ajude.
Vamos considerar o caso da regressão em redes neurais feedforward e estabelecer alguma notação.
Seja denote os valores dos preditores na camada de entrada . Os valores das unidades nas camadas internas serão indicados por ( z ( ℓ ) 1 , … , z ( ℓ ) N ℓ ) , para(x1,…,xp)=:(z(0)1,…,z(0)N0)(z(ℓ)1,…,z(ℓ)Nℓ) . Finalmente, temos acamada de saída ( y 1 , … , y k ) = : ( z ( L ) 1 , … , z ( L ) N L ) .ℓ=1,…,L−1 (y1,…,yk)=:(z(L)1,…,z(L)NL)
Os pesos e polarização da unidade na camada ℓ será indicado por w ( ℓ ) i j e b ( ℓ ) i , respectivamente, para ℓ = 1 , ... , L , i = 1 ... , N ℓ , e j = 1 , … , N ℓ - 1 .iℓw(ℓ)ijb(ℓ)Euℓ = 1 , … , Li = 1 ... , Nℓj = 1 , … , Nℓ - 1
Seja a função de ativação da unidade i na camada ℓ , para ℓ = 1 , … , L e i = 1 … , N ℓ .g( ℓ )Eu: RNℓ - 1→ REuℓℓ = 1 , … , Li = 1 ... , Nℓ
As funções de ativação comumente usadas são logística , ReLU (também conhecida como parte positiva ) e tanh .
Agora, para , defina as funções de transição de camada
G ( ℓ ) : R N ℓ - 1 → R N ℓ : ( z ( ℓ - 1 ) 1 , … , z ( ℓ - 1 ) N ℓ - 1 ) ↦ ( z ( ℓ ) 1 , … , z (ℓ = 1 , … , L
em que
z ( ℓ ) i=g ( ℓ ) i
G( ℓ ): RNℓ - 1→ RNℓ: ( z( ℓ - 1 )1, … , Z( ℓ - 1 )Nℓ - 1) ↦ ( z( ℓ )1, … , Z( ℓ )Nℓ) ,
para
i=1,…, N ℓ .
z( ℓ )Eu= g( ℓ )Eu( ∑j = 1Nℓ - 1W( ℓ )eu jz( ℓ - 1 )j+ b( ℓ )Eu) ,
i = 1 , … , Nℓ
Denotando o conjunto de pesos e desvios de todas as unidades em todas as camadas por , isto é
θ = { w ( ℓ ) i j , b ( ℓ ) i : ℓ = 1 , … , Lθ
nossa rede neural é a família de funções G θ : R p → R k obtida pela composição das funções de transição de camada:
G θ = G ( L ) ∘ G ( L - 1 ) ∘ ⋯ ∘ L ( 1 ) .
θ = { w( ℓ )eu j, b( ℓ )Eu: ℓ = 1 , … , L;i = 1 ... , Nℓ;j = 1 , … , Nℓ - 1} ,
Gθ: Rp→ RkGθ= G( L )∘ G( L - 1 )∘ ⋯ ∘ L( 1 ).
Não há probabilidades envolvidas na descrição acima. O objetivo do negócio original da rede neural é o ajuste de funções .
O "profundo" no Deep Learning representa a existência de muitas camadas internas nas redes neurais em consideração.
{ ( xEu, yEu) ∈ Rp× Rk: i = 1 , … , n }
∑i = 1n∥ yEu- Gθ( xEu) ∥2,
θx∗Gθ^( x∗)θ^como penalidade na função objetiva ou uso de
abandono durante o treinamento.
Geoffrey Hinton (aka Deep Learning Godfather) e colaboradores inventaram muitas dessas coisas. Histórias de sucesso do Deep Learning estão por toda parte.
eux , y( θ , σ2) ∝ σ- nexp( - 12 σ2∑i = 1n∥ yEu- Gθ( xEu) ∥2) ,
π( θ , σ2) ∝ exp( - 12 σ20 0∑ℓ = 1eu∑i = 1Nℓ( ( b( ℓ )Eu)2+ ∑j = 1Nℓ - 1( w( ℓ )eu j)2) ) ×π( σ2) .
Portanto, os priores marginais dos pesos e desvios são distribuições normais com média zero e variância comum σ20 0. Esse modelo conjunto original pode ser muito mais envolvido, com o compromisso de dificultar a inferência.
O Deep Learning Bayesiano enfrenta a difícil tarefa de amostrar a partir da correspondente distribuição posterior. Após isso, as previsões são feitas naturalmente com a distribuição preditiva posterior , e as incertezas envolvidas nessas previsões são totalmente quantificadas. O Santo Graal no Bayesian Deep Learning é a construção de uma solução eficiente e escalável. Muitos métodos computacionais foram utilizados nessa busca: amostragem de Metropolis-Hastings e Gibbs , Hamiltonian Monte Carlo e, mais recentemente, inferência variacional .
Confira os vídeos da conferência NIPS para obter algumas histórias de sucesso: http://bayesiandeeplearning.org/