Sistemas Inteligentes de
Inferência
Carlos Hall
Redes Neurais Bayesianas
]
Denominação correta:
\
Redes Neurais com
Treinamento Bayesiano
]
Dois tipos de Estatística:
\
Estatística Clássica
: lida com
freqüências
de
ocorrência
\
Estatística Bayesiana
: lida com
densidades de
probabilidade
Teorema de Bayes
]
Considere dois eventos A e B:
\
P (A v B) = P(A) + P(B) – P(A^B)
\
P (A^B) = P(A|B) P(B)
\
P (A^B) = P(B|A) P(A)
(
)
(
( )
) ( )
A
P
B
P
B
A
P
A
B
P
|
=
|
⋅
Teorema de Bayes
]
Considere dois eventos A e B:
\
P (A v B) = P(A) + P(B) – P(A^B)
\
P (A^B) = P(A|B) P(B)
\
P (A^B) = P(B|A) P(A)
(
)
(
( )
) ( )
y
p
x
p
x
y
p
y
x
p
|
=
|
⋅
(
)
(
( )
) ( )
A
P
B
P
B
A
P
A
B
P
|
=
|
⋅
Aprendizado de Redes Neurais
]
Considera-se:
\ Dados
D = {(x
1, t
1), (x
2, t
2),…, (x
Ny, t
Ny)}
\ Parâmetros
θ
= {
θ
1, θ
2,…, θ
Nm}
\ Saídas do modelo:y
k= g(θ, x
k)
\
Errose = {e
1, e
2, …, e
Ny}, e
k= t
k- y
kAprendizado de Redes Neurais
]
Objetivo do Aprendizado:
\ Memorizar os Dados de Treinamento: NÃO
\ Modelar o processo gerador desses dados: SIM
\ Descrição completa do processo:
Aprendizado de Redes Neurais
]
Cálculo de
p (x, t)
\
Pode-se escrever:
p (x, t) = p (t | x) p (x)
\ Logo, é necessário calcular
p (t | x) = p (t | x ,
θ
)
\ Este modelo é ajustado aos dados de treinamentoD
:
[ Por meio dos parâmetros θ
[ Minimizando alguma função de erro, deduzida a partir de
algum princípio, para extrair a maior quantidade de informação possível.
Estatística Clássica
]
Princípio Fundamental:
\
Função de Verossimilhança
L(
θ
) = p(D |
θ
)
[ Fornece a distribuição de probabilidades dos dadosD em função dos parâmetros θ
\
Cálculo de
θ
é baseado na
maximização
da
função
L(
θ
)
\
Equivalente à
minimização
de uma
função de
erro
Redes Neurais e Verossimilhança
]
Considera-se:
\ Dados
D = {(x
1, t
1), (x
2, t
2),…, (x
Ny, t
Ny)}
\ Parâmetrosθ
= {
θ
1, θ
2,…, θ
Nm}
\ Verossimilhança
L(
θ
) = p(D |
θ
) = p(x , t |
θ
)
\ Supondo que as observações(x
k, t
k), k = 1… N
y sãoindependentes entre si, tem-se que:
( ) (
)
∏
(
)
= = = Ny k k kt x p t x p L 1 | , | , θ θ θRedes Neurais e Verossimilhança
]
Decompondo:
]
Mas os dados de entrada são
independentes
das
observações!
( )
∏
(
)
∏
(
) (
)
= = = = y Ny k k k k N k k kt pt x px x p L 1 1 | , | | , θ θ θ θ(
xk) ( )
pxk p |θ =( )
∏
(
) ( )
= = y N k k k k x px t p L 1 , | θ θRedes Neurais e Verossimilhança
]
Valor mais apropriado para
θ
:
\
Aquele que
maximiza
a função
L(
θ
)
\
Equivalente a
minimizar
a função
E(
θ
) = -ln
L(
θ
)
Redes Neurais e Verossimilhança
]
Função de Erro
E(
θ
)
( )
∏
(
) ( )
= = Ny k k k k x px t p L 1 , | θ θ( )
( )
∑
(
)
∑
( )
= = − − = − = y Ny k k N k k k x px t p L E 1 1 ln , | ln ln θ θ θRedes Neurais e Verossimilhança
]
Função de Erro
E(
θ
)
( )
∏
(
) ( )
= = y N k k k k x px t p L 1 , | θ θ( )
( )
∑
(
)
∑
( )
= = − − = − = y y N k k N k k k x px t p L E 1 1 ln , | ln ln θ θ θ Independe de θRedes Neurais e Verossimilhança
]
Função de Erro
E(
θ
)
\ Cada termo do somatório: erro referente a um dos padrões de treinamento
\ Diferentes tipos de erro são obtidos de acordo com a
forma assumida para a densidade condicional
( )
∑
(
)
= − = Ny k k k x t p E 1 , | ln θ θ(
tk|xk,θ)
pRedes Neurais e Verossimilhança
]
Função de Erro
E(
θ
)
\ Dados
D = {(x
1, t
1), (x
2, t
2),…, (x
Ny, t
Ny)}
\ Saídas do modelo:y
k= g(θ, x
k)
\
Por exemplo, pode-se supor quet
k= y
k+ e
k\
e
k: N(0,
σ)
( )
⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛− = 2 2 2exp 2 2 1 σ πσ k k e e pRedes Neurais e Verossimilhança
]
Função de Erro
E(
θ
)
\ Logo, tem-se:(
)
(
(
)
)
⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ − − = 2 2 2 2 , exp 2 1 , | σ θ πσ θ k k k k x y t x t p( )
∑
(
)
∑
(
(
)
)
= = ⎪⎭ ⎪ ⎬ ⎫ ⎪⎩ ⎪ ⎨ ⎧ ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛− − − = − = y Ny k k k N k k k x y t x t p E 1 2 2 2 1 2 , exp 2 1 ln , | ln σ θ πσ θ θRedes Neurais e Verossimilhança
]
Função de Erro
E(
θ
)
\ Logo, tem-se:( )
∑
∑
(
(
)
)
= = ⎪⎭ ⎪ ⎬ ⎫ ⎪⎩ ⎪ ⎨ ⎧ ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛− − − ⎭ ⎬ ⎫ ⎩ ⎨ ⎧ − = y Ny k k k N k x y t E 1 2 2 1 2 2 , exp ln 2 1 ln σ θ πσ θRedes Neurais e Verossimilhança
]
Função de Erro
E(
θ
)
\ Logo, tem-se:( )
∑
∑
(
(
)
)
= = ⎪⎭ ⎪ ⎬ ⎫ ⎪⎩ ⎪ ⎨ ⎧ ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛− − − ⎭ ⎬ ⎫ ⎩ ⎨ ⎧ − = y Ny k k k N k x y t E 1 2 2 1 2 2 , exp ln 2 1 ln σ θ πσ θ Independe de θ ln(exp(x)) = xRedes Neurais e Verossimilhança
]
Função de Erro
E(
θ
)
\ Logo, tem-se:\ O princípio da máxima verossimilhança implica na minimização de uma função de erro
\ Essa função nada mais é que o Erro Quadrático \ É a mesma função minimizada pelo algoritmo de
backpropagation.
\ Logo, o treinamento tradicional de redes neurais é baseado no princípio da máxima verossimilhança
( )
∑
(
(
)
)
= − = Ny k k k yx t E 1 2 2 , 2 1 θ σ θRedes Neurais Bayesianas
]
Treinamento Bayesiano:
\
Inspirado na
Estatística Bayesiana
\
Assume um modelo em particular (
distribuição a
priori
) para a densidade de probabilidade dos
parâmetros do modelo
p
(
θ
)
[ Expressa o grau de credibilidade de cada um dos valores que o vetor de parâmetros pode assumir.
\
Teorema de Bayes: infere, a partir dos dados
disponíveis, o
melhor conjunto
de parâmetros
Inferência Bayesiana
]
Método que auxilia a definir o
melhor
conjunto de parâmetros
do modelo a partir
dos dados disponíveis:
\
Dados: Variável aleatória D
\
Parâmetros:Variável aleatória θ
a priori p(θ)
θ
Inferência Bayesiana
]
Método que auxilia a definir o
melhor
conjunto de parâmetros
do modelo a partir
dos dados disponíveis:
\
Dados: Variável aleatória D
\
Parâmetros:Variável aleatória θ
a priori p(θ) θ D+
Inferência Bayesiana
]
Método que auxilia a definir o
melhor
conjunto de parâmetros
do modelo a partir
dos dados disponíveis:
\
Dados: Variável aleatória D
\
Parâmetros:Variável aleatória θ
a posteriori θ p(θ |D)Inferência Bayesiana
(
)
(
( )
) ( )
D
p
p
D
p
D
p
θ
|
=
|
θ
⋅
θ
Inferência Bayesiana
Priori: informação sobre θ derivada do conhecimento prévio (background knowledge)
(
)
(
( )
) ( )
D
p
p
D
p
D
p
θ
|
=
|
θ
⋅
θ
PrioriInferência Bayesiana
(
)
(
( )
) ( )
D
p
p
D
p
D
p
θ
|
=
|
θ
⋅
θ
Verossimilhança PrioriPriori: informação sobre θ derivada do conhecimento prévio (background knowledge)
Verossimilhança: informação sobre θ derivada dos dados
Priori: informação sobre θ derivada do conhecimento prévio (background knowledge)
Verossimilhança: informação sobre θ derivada dos dados
Posteriori: combina as duas fontes de informação
Inferência Bayesiana
(
)
(
( )
) ( )
D
p
p
D
p
D
p
θ
|
=
|
θ
⋅
θ
Verossimilhança PrioriInferência Bayesiana
]
Para facilitar o cálculo da posteriori
p(
θ
| D)
:
\
Priori
p(
θ
)
\
Verossimilhança
p(D |
θ
)
(
)
(
( )
) ( )
D
p
p
D
p
D
p
θ
|
=
|
θ
⋅
θ
Inferência Bayesiana
]
Para facilitar o cálculo da posteriori
p(
θ
| D)
:
\
Priori
p(
θ
)
\
Verossimilhança
p(D |
θ
)
Forma exponencial(
)
(
( )
) ( )
D
p
p
D
p
D
p
θ
|
=
|
θ
⋅
θ
e
ye
xInferência Bayesiana
]
Densidade a priori
p(
θ
)
:
\
Em geral:
\
Z
θ(
α
):
fator de normalização para garantir\ Para favorecer parâmetros pequenos, pode-se fazer:
( )
( ) (
θ)
θα
α
θ
E
Z
p
=
1
exp
−
( )
=1∫
pθ
dθ
∑
= =1θ
2 1Nmθ
Inferência Bayesiana
]
Densidade a priori
p(
θ
)
:
\
Em geral:
\
Z
θ(
α
):
fator de normalização para garantir \ Para favorecer parâmetros pequenos, pode-se fazer:( )
( ) (
θ)
θα
α
θ
E
Z
p
=
1
exp
−
( )
=1∫
pθ
dθ
∑
= = = Nm i i E 1 2 2 2 1 2 1θ
θ
θ hiper-parâmetroInferência Bayesiana
]
Densidade a priori
p(
θ
)
:
\
Então fica:
\
Ou seja quando θ é grande, p(θ) é pequeno, o que penaliza valores grandes dos parâmetros\ Normalização:
( )
( )
⎟ ⎠ ⎞ ⎜ ⎝ ⎛− = 2 2 exp 1 α θ α θ θ Z p( )
(
)
2 1 2 2 2 exp exp m m N N i i d d E Z ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ = ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ − = − =∫
∫
∑
=α
π
θ
θ
α
θ
α
α
θ θInferência Bayesiana
]
Densidade a priori
p(
θ
)
:
\
Então fica:
\
Ou seja quando θ é grande, p(θ) é pequeno, o que penaliza valores grandes dos parâmetros\ Normalização:
( )
( )
⎟ ⎠ ⎞ ⎜ ⎝ ⎛− = 2 2 exp 1 θ α α θ θ Z p Regularized Weight Decay( )
(
)
2 1 2 2 2 exp exp m m N N i i d d E Z ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ = ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ − = − =∫
∫
∑
=α
π
θ
θ
α
θ
α
α
θ θInferência Bayesiana
]
Verossimilhança
p(D |
θ
)
\
Em geral:
(
)
( ) (
D)
D E Z D p β β θ = 1 exp− |Inferência Bayesiana
]
Verossimilhança
p(D |
θ
)
\
Em geral:
\
Z
D(
β
):
fator de normalização(
)
( ) (
D)
D E Z D p β β θ = 1 exp− |( )
=∫
(
− E)
dD ZDβ
expβ
D hiper-parâmetroInferência Bayesiana
]
Verossimilhança
p(D |
θ
)
\ DadosD = {(x
1, t
1), (x
2, t
2),…, (x
Ny, t
Ny)}
\ Saídas do modelo:y
k= g(θ, x
k)
(
)
∏
(
) ( )
= = Ny k k k k x px t p D p 1 , | |θ θ(
)
(
(
)
)
⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛− − = 2 2 2 2 , exp 2 1 , | σ θ πσ θ k k k k x y t x t p Deduzido anteriormente:Inferência Bayesiana
]
Verossimilhança
p(D |
θ
)
:
\
Então fica:
\
Ou seja:
(
)
∏
(
(
)
)
= ⎟⎟⎠ ⎞ ⎜⎜ ⎝ ⎛− − =Ny k k k yx t D p 1 2 2 2 2 , exp 2 1 | σ θ πσ θ(
)
{
(
)
}
⎟⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ =∑
= y y N k k k N x y t D p 1 2 2 2 2 , 2 1 exp 2 1 | θ σ πσ θ(
)
{
(
)
}
⎟⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ =∑
= y y N k k k N x y t D p 1 2 2 , 2 exp 2 | β θ π β θ 2 1 σ β=Inferência Bayesiana
]
Verossimilhança
p(D |
θ
)
:
(
)
{
(
)
}
⎟⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ =∑
= y y N k k k N x y t D p 1 2 2 , 2 exp 2 | β θ π β θ(
)
( ) (
D)
D E Z D p β β θ = 1 exp− |Inferência Bayesiana
]
Verossimilhança
p(D |
θ
)
:
(
)
{
(
)
}
⎟⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ =∑
= y y N k k k N x y t D p 1 2 2 , 2 exp 2 | β θ π β θ(
)
( ) (
D)
D E Z D p β β θ = 1 exp− |( )
2 2 y N D Z ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ =β
π
β
(
)
{
}
2 , 1 2∑
= − = y N k k k D t x y Eθ
Sum squared Error !
Inferência Bayesiana
]
Posteriori
p(
θ
| D)
:
(
)
(
( )
) ( )
D
p
p
D
p
D
p
θ
|
=
|
θ
⋅
θ
(
)
( ) (
)
( ) (
) ( )
D
p
E
Z
E
Z
D
p
D D1
exp
1
exp
1
|
⎥
⎦
⎤
⎢
⎣
⎡
−
⎥
⎦
⎤
⎢
⎣
⎡
−
=
θ θα
α
β
β
θ
( )
D =∫
p(
Dθ
) ( )
pθ
dθ
p |Inferência Bayesiana
]
Posteriori
p(
θ
| D)
:
(
)
(
( )
) ( )
D
p
p
D
p
D
p
θ
|
=
|
θ
⋅
θ
(
)
(
) (
β
α
θ)
β
α
θ
E
E
Z
D
p
D S−
−
=
exp
,
1
|
Inferência Bayesiana
]
Posteriori
p(
θ
| D)
:
(
)
(
( )
) ( )
D
p
p
D
p
D
p
θ
|
=
|
θ
⋅
θ
(
)
(
) (
β
α
θ)
β
α
θ
E
E
Z
D
p
D S−
−
=
exp
,
1
|
-S(θ)Inferência Bayesiana
]
Função de Erro
E(
θ
)
( )
θ lnp(
D|θ)
E =−( )
(
)
(
( )
)
⎭
⎬
⎫
⎩
⎨
⎧
−
−
=
θ
β
α
θ
S
Z
E
Sexp
,
1
ln
( )
θ
{
Z
(
α
β
)
}
{
(
S
( )
θ
)
}
E
=
ln
S,
−
ln
exp
−
Inferência Bayesiana
]
Função de Erro
E(
θ
)
( )
θ lnp(
D|θ)
E =−( )
(
)
(
( )
)
⎭
⎬
⎫
⎩
⎨
⎧
−
−
=
θ
β
α
θ
S
Z
E
Sexp
,
1
ln
( )
θ
{
Z
(
α
β
)
}
{
(
S
( )
θ
)
}
E
=
ln
S,
−
ln
exp
−
Independe de θInferência Bayesiana
]
Função de Erro
E(
θ
)
( )
θ lnp(
D|θ)
E =−( )
(
)
(
( )
)
⎭
⎬
⎫
⎩
⎨
⎧
−
−
=
θ
β
α
θ
S
Z
E
Sexp
,
1
ln
( ) ( )
θ
S
θ
E
=
( )
θ
β
E
α
E
θE
=
D+
Inferência Bayesiana
]
Posteriori
p(
θ
| D)
:
(
)
(
) (
β
α
θ)
β
α
θ
E
E
Z
D
p
D S−
−
=
exp
,
1
|
(
)
{
}
2 , 1 2∑
= − = y N k k k D t x y Eθ
∑
= = = Nm i i E 1 2 2 2 1 2 1θ
θ
θ quadráticas em θInferência Bayesiana
]
Posteriori
p(
θ
| D)
:
θ p(θ |D)(
θ
)
(
α
β
) (
β
E
α
E
θ)
Z
D
p
D S−
−
=
exp
,
1
|
Gaussiana!Inferência Bayesiana
]
Posteriori
p(
θ
| D)
:
θ p(θ |D)(
θ
)
(
α
β
) (
β
E
α
E
θ)
Z
D
p
D S−
−
=
exp
,
1
|
Gaussiana! θMPInferência Bayesiana
]
Máxima a Posteriori
θ
MP:
\
Representa o
valor mais provável
para o vetor
de parâmetros
θ
\
Maximizar
p(θ | D) equivale a
minimizar
θ p(θ |D) Gaussiana! θMP
( ) ( )
θ Sθ E =Inferência Bayesiana
]
Máxima a Posteriori
θ
MP:
θ p(θ |D) Gaussiana! θMP( )
∑
{
(
)
}
∑
= = + − = y Nm i i N k k k t x y S 1 2 1 2 2 , 2θ
α
θ
β
θ
Inferência Bayesiana
]
Máxima a Posteriori
θ
MP:
\
N
ygrande
: muitos dados de treinamento,
primeiro termo domina o erro, e máxima
verossimilhança dá uma boa aproximação
\
N
ypequeno
: termo de weight decay passa a
ser importante
( )
∑
{
(
)
}
∑
= = + − = y Nm i i N k k k t x y S 1 2 1 2 2 , 2θ
α
θ
β
θ
Inferência Bayesiana
Cálculo da Densidade a PosterioriAnaliticamente Aproximação Gaussiana
MCMC
Inferência Bayesiana
Cálculo da Densidade a PosterioriAnaliticamente Aproximação Gaussiana
MCMC
Inferência Bayesiana - Exemplo
]
Suponha um processo bastante simples:
\
y =
ω
0x
t =
ω
0x +
η
\
ω
0= 1.57
η = N(0,0.1)
Inferência Bayesiana - Exemplo
]
Cálculo da função
S(
θ
)
:
\
Modelo y = θ
1x
N
m= 1
θ = {θ
1}
( )
∑
{
(
)
}
∑
= = + − = y Nm i i N k k k t x y S 1 2 1 2 2 , 2θ
α
θ
β
θ
( )
{
}
2 2 2 1 1 2 1αθ
θ
β
θ
=∑
− + = y N k k k t x SInferência Bayesiana - Exemplo
]
Cálculo da função
S(
θ
)
:
\
Modelo y = θ
1x
N
m= 1
θ = {θ
1}
\
Deseja-se encontrar θ que minimize S(θ)
( )
{
}
2 2 2 2 1 1 1 2 2 2 1αθ
θ
θ
β
θ
=∑
+ − + = y N k k k k k t xt x SInferência Bayesiana - Exemplo
]
Mínimo da função
S(
θ
)
:
( )
{
}
0 1 1 2 1 − + = = ∂ ∂∑
=αθ
θ
β
θ
θ
Ny k k k k xt x S 0 1 1 2 1 ⎟⎟− = ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ +∑
∑
= = y y N k k k N k k xt xβ
β
α
θ
Inferência Bayesiana - Exemplo
]
Mínimo da função
S(
θ
)
:
∑
∑
= = + = y y N k k N k k k MP x t x 1 2 1β
α
β
θ
2 1 σ β=Inferência Bayesiana - Exemplo
]
Mínimo da função
S(
θ
)
:
α = 0∑
∑
= = = y y N k k N k k k MP x t x 1 2 1θ
Mínimos QuadradosInferência Bayesiana - Exemplo
]
No exemplo:
\
σ = 0.1
→
β = 100
\
N
y= 10
∑
∑
= = + = 10 1 2 10 1 100 100 k k k k k MP x t xα
θ
Inferência Bayesiana - Exemplo
]
Posteriori
p(
θ
| D)
:
(
)
(
)
(
( )
θ
)
β
α
θ
S
Z
D
p
S−
=
exp
,
1
|
(
α
β
)
=∫
(
−S( )
θ
)
dθ
ZS , exp( )
{
}
2 2 2 2 1 1 1 2 2 2 1αθ
θ
θ
β
θ
=∑
+ − + = y N k k k k k t xt x SInferência Bayesiana - Exemplo
]
Posteriori
p(
θ
| D)
:
(
)
+∞∫
∑
{
}
∞ − = ⎟⎟⎠ ⎞ ⎜⎜ ⎝ ⎛ − − + − =β
θ
θ
αθ
θ
β
α
x t xt d Z y N k k k k k S 2 2 2 exp , 2 1 1 1 2 2 2 1(
)
+∞∫
∑
∑
∑
∞ − = = = ⎪⎭ ⎪ ⎬ ⎫ ⎪⎩ ⎪ ⎨ ⎧ ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ − ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ − − ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ + − = β α θ β θ β θ β α x xt t d Z y y y N k k N k k k N k k S 1 2 1 1 2 1 1 2 2 2 2 exp ,Inferência Bayesiana - Exemplo
]
Posteriori
p(
θ
| D)
:
(
)
+∞∫
{
}
∞ − − − − = θ θ θ β α a b cd ZS 1 2 1 exp , 2 2 1 2 α β + =∑
= y N k k x a∑
= − = Ny k k kt x b 1 β∑
= = y N k k t c 1 2 2 βInferência Bayesiana - Exemplo
]
Posteriori
p(
θ
| D)
:
(
)
⎭ ⎬ ⎫ ⎩ ⎨ ⎧ − = c a b a ZS 4 exp , 2 π β α 2 2 1 2 α β + =∑
= y N k k x a∑
= − = Ny k k kt x b 1 β∑
= = y N k k t c 1 2 2 βInferência Bayesiana - Exemplo
]
Priori
p(
θ
)
:
α = 0.5
Inferência Bayesiana - Exemplo
Inferência Bayesiana - Exemplo
]
Modelo
y =
θ
MPx
:
θMP= 1.56
ω0= 1.57
Inferência Bayesiana
Cálculo da Densidade a PosterioriAnaliticamente Aproximação Gaussiana MCMC
Inferência Bayesiana
(
)
(
)
(
( )
θ
)
β
α
θ
S
Z
D
p
S−
=
exp
,
1
|
(
θ
)
(
α
β
) (
β
E
α
E
θ)
Z
D
p
D S−
−
=
exp
,
1
|
(
)
(
( )
) ( )
D
p
p
D
p
D
p
θ
|
=
|
θ
⋅
θ
( )
θ
β
E
α
E
θS
=
D+
Inferência Bayesiana
(
)
(
)
(
( )
θ
)
β
α
θ
S
Z
D
p
S−
=
exp
,
1
|
Cálculo analítico é complicado!
Aproximação Gaussiana (Mackay)
Inferência Bayesiana
]
Aproximação Gaussiana
\ Primeiro passo: expansão em série de Taylor de S(θ)
em torno de um ponto qualquer θ :
\ Fazendo θ = θ∗ = mínimo de S(θ ) ^
( )
θ
=( ) ( ) ( ) ( )
θ
+θ
−θ
∇θ
+θ
−θ
ˆ ∇∇( )( )
θ
ˆθ
−θ
ˆ+K ! 2 1 ˆ ˆ ˆ S S S S T T ^Inferência Bayesiana
]
Aproximação Gaussiana
\ Primeiro passo: expansão em série de Taylor de S(θ)
em torno de um ponto qualquer θ :
\ Fazendo θ = θ∗ = mínimo de S(θ ) ^
( )
θ
=( ) ( ) ( ) ( )
θ
+θ
−θ
∇θ
+θ
−θ
ˆ ∇∇( )( )
θ
ˆθ
−θ
ˆ +K ! 2 1 ˆ ˆ ˆ S S S S T T ^Inferência Bayesiana
]
Aproximação Gaussiana
\ Primeiro passo: expansão em série de Taylor de S(θ) em torno de um ponto qualquer θ :
\ Fazendo θ = θ∗ = mínimo de S(θ ) ^
( )
θ
=( ) ( ) ( ) ( )
θ
+θ
−θ
∇θ
+θ
−θ
ˆ ∇∇( )( )
θ
ˆθ
−θ
ˆ+K ! 2 1 ˆ ˆ ˆ S S S S T T ^( )
=( ) (
* + − *)
∇∇( )(
* − *)
+K ! 2 1θ
θ
θ
θ
θ
θ
θ
S S S TInferência Bayesiana
]
Aproximação Gaussiana
\ Considerando somente a expansão linear:
( )
( ) (
* *) (
*)
! 2 1θ
θ
θ
θ
θ
θ
=S + − H − S T( )
θ
* S H=∇∇ Matriz HessianaInferência Bayesiana
]
Aproximação Gaussiana
\ Considerando somente a expansão linear:
( )
( ) (
* *) (
*)
! 2 1θ
θ
θ
θ
θ
θ
=S + − H − S T( )
θ
* S H=∇∇ Matriz Hessiana( )
θ
β
E
α
E
θS
=
D+
H
=
β
∇∇
E
D( )
θ
+
α
I
*Inferência Bayesiana
]
Aproximação Gaussiana
\ Considerando somente a expansão linear:
( )
θ
=S( )
θ
+ ∆θ
H∆θ
S T ! 2 1 * *θ
θ
θ
= − ∆Inferência Bayesiana
]
Aproximação Gaussiana
\ Considerando somente a expansão linear:
( )
θ
=S( )
θ
+ ∆θ
H∆θ
S T ! 2 1 * *θ
θ
θ
= − ∆(
θ
D
)
=
(
α
β
)
⎨
⎧
−
S
( )
θ
−
∆
θ
H
∆
θ
⎫
⎬
p
|
1
exp
*1
TInferência Bayesiana
]
Aproximação Gaussiana
(
)
∫
( )
⎭
⎬
⎫
⎩
⎨
⎧
−
−
∆
∆
=
θ
θ
θ
θ
β
α
S
H
d
Z
T S2
1
exp
,
* *Inferência Bayesiana
]
Aproximação Gaussiana
(
)
∫
( )
⎭
⎬
⎫
⎩
⎨
⎧
−
−
∆
∆
=
θ
θ
θ
θ
β
α
S
H
d
Z
T S2
1
exp
,
* *(
)
( )
( )
2 1 2 *2
,
=
e
− *H
−Z
m N S Sα
β
π
θCálculo analítico é fácil
Inferência Bayesiana
]
Aproximação Gaussiana
(
)
( )
( )
( )
⎭
⎬
⎫
⎩
⎨
⎧
−
∆
∆
=
− − −θ
θ
π
θ
θ θH
H
e
e
D
p
T N S S m2
1
exp
2
|
2 1 2 * *(
)
( )
⎭
⎬
⎫
⎩
⎨
⎧
−
∆
∆
=
−θ
θ
π
θ
H
H
D
p
T Nm2
1
exp
2
1
|
2 1 2Inferência Bayesiana
]
Aproximação Gaussiana
(
)
( )
(
) (
)
⎭
⎬
⎫
⎩
⎨
⎧
−
−
−
=
− * * 2 1 22
1
exp
2
1
|
θ
θ
θ
θ
π
θ
H
H
D
p
N T mInferência Bayesiana
]
Aproximação Gaussiana
(
)
( )
(
) (
)
⎭
⎬
⎫
⎩
⎨
⎧
−
−
−
=
− * * 2 1 22
1
exp
2
1
|
θ
θ
θ
θ
π
θ
H
H
D
p
N T m( )
( )
(
)
(
)
⎭
⎬
⎫
⎩
⎨
⎧
−
−
∑
−
∑
=
µ
−µ
π
x
x
x
p
T d 1 2 1 22
1
exp
2
1
Distribuição gaussiana multivariável em d dimensões;
µ: média
Σ: matriz de covariância
Inferência Bayesiana
]
Ou seja:
\ A distribuição a posteriori p(θ | D) tem a forma de uma gaussiana em Nm dimensões
\ θ∗ é a média da distribuição a posteriori
\ θ∗ é equivalente a θMP (máxima a posteriori)
\ θMP pode ser encontrado minimizando a função S(θ) por meio de algum processo de otimização não-linear:
[ Algoritmos Genéticos [ Gradiente descendente [ Levenberg-Marquardt
Redes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros\ Até o momento, considerou-se os hiper-parâmetros
α e βcomo constantes conhecidas.
\ a abordagem Bayesiana permite inferir os valores mais apropriados para estes hiper-parâmetros a partir dos dados de treinamento.
\ Tais valores devem maximizar a distribuição a
Redes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Pode-se escrever:
(
θ D)
=∫∫
p(
θα β D)
dαdβp | , , |
Redes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Pode-se escrever:
(
θ D)
=∫∫
p(
θα β D)
dαdβp | , , |
(
θ D)
=∫∫
p(
θ α β D) (
pα β D)
dαdβp | | , , , |
Redes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros \ Pode-se escrever:
(
θ D)
=∫∫
p(
θα β D)
dαdβp | , , |
(
θ D)
=∫∫
p(
θ α β D) (
pα β D)
dαdβp | | , , , |
Solução analítica muito difícil!
Redes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Solução aproximada (evidence approximation) – Mackay
(
θ D) (
≅pθ α β D)
∫∫
p(
α β D)
dαdβp | | MP, MP, , |
Redes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Solução aproximada (evidence approximation) – Mackay
(
θ D) (
≅pθ α β D)
∫∫
p(
α β D)
dαdβp | | MP, MP, , |
=1
Redes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Solução aproximada (evidence approximation) – Mackay
\ Onde αMP e βMP são os valores que maximizam a
distribuição a posteriori p(α,β | D)
\ p(α,β | D) é similar a p(θ | D), sendo dada por (Bayes):
(
D) (
p D)
pθ| ≅ θ|αMP,βMP,
Redes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros \ Assim, deseja-se maximizar
\ p(D) → independe de α e β
\ p(α,β) → distribuição a priori dos hiper-parâmetros, supõe-se uniforme
\ Logo, maximizar p(α,β | D) equivale a maximizar p(D|α,β)
(
)
(
( )
) (
)
D p p D p D pα,β| = |α,β⋅ α,βRedes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Assim, deseja-se maximizar a verossimilhança dos hiper-parâmetros:
(
D|α,β)
p
Redes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Assim, deseja-se maximizar a verossimilhança dos hiper-parâmetros:
(
D|α,β)
p
(
D α β)
=∫
p(
D θαβ) (
pθ α β)
dθ p | , | , , | ,Redes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Assim, deseja-se maximizar a verossimilhança dos hiper-parâmetros:
(
D|α,β)
p(
Dα β)
=∫
p(
Dθαβ) (
pθ α β)
dθ p | , | , , | , Independe de α(
)
{
(
)
}
⎟⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ =∑
= y y N k k k N x y t D p 1 2 2 , 2 exp 2 | β θ π β θRedes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Assim, deseja-se maximizar a verossimilhança dos hiper-parâmetros:
(
D|α,β)
p
(
Dα β)
=∫
p(
D θ β) (
pθ α β)
dθ p | , | , | ,Redes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Assim, deseja-se maximizar a verossimilhança dos hiper-parâmetros:
(
D|α,β)
p(
Dα β)
=∫
p(
Dθ β) (
pθ αβ)
dθ p | , | , | , Independe de β( )
( )
⎟ ⎠ ⎞ ⎜ ⎝ ⎛− = 2 2 exp 1 α θ α θ θ Z pRedes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Assim, deseja-se maximizar a verossimilhança dos hiper-parâmetros:
(
D αβ)
=∫
p(
Dθ β) (
pθ α)
dθ p | , | , |Redes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Assim, deseja-se maximizar a verossimilhança dos hiper-parâmetros: \ Onde (já deduzido):
(
D α β)
=∫
p(
D θβ) (
pθ α)
dθ p | , | , | ( ) ( ) ( D) D E Z D p β β β θ, = 1 exp− |( )
2 2 y N D Z ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ =β
π
β
(
)
( ) (
θ)
θ α α α θ E Z p | = 1 exp−( )
2 2 m N Z ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ =α
π
α
θRedes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Logo, tem-se:
(
)
=∫
(
−( )
)
(
−( )
)
θ α α β β β α θ θ d Z E Z E D p D D exp exp , |( )
2 2 y N D Z ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ =β
π
β
( )
2 2 m N Z ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ =α
π
α
θRedes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Logo, tem-se:
(
)
=∫
(
−( )
)
(
−( )
)
θ α α β β β α θ θ d Z E Z E D p D D exp exp , |( )
2 2 y N D Z ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ =β
π
β
( )
2 2 m N Z ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ =α
π
α
θ Independem de θ !Redes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Logo, tem-se:
(
)
=( ) ( )
∫
(
−β −α)
θ α β β α θ θ d E E Z Z D p D D exp 1 , |Redes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Logo, tem-se:
(
)
=( ) ( )
∫
(
−β −α)
θ α β β α θ θ d E E Z Z D p D D exp 1 , | S(θ)Redes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros \ Logo, tem-se:
(
αβ)
( ) ( )
β(
αβ)
α θ Z Z Z D p D S , , | =(
αβ)
=∫
{
−S( )
θ}
dθ ZS , expRedes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros \ Logo, tem-se:
(
αβ)
( ) ( )
β(
αβα)
θ Z Z Z D p D S , , | =(
αβ)
=∫
{
−S( )
θ}
dθ ZS , exp(
)
( )( )
21 2 *2
,
=
e
−H
−Z
MP m N S Sα
β
π
θ Aproximação Gaussiana:( )
MP MP D MPE
E
S
θ
=
β
+
α
θRedes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Finalmente:
(
αβ)
( ) ( )
β( )
πα θ α β θ Z Z H e D p D N E EMP MP m D 2 1 2 2 , | − − − =( )
2 2 y N D Z ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ =β
π
β
( )
2 2 m N Z ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ =α
π
α
θRedes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Ou seja:
\ Agora, deseja-se maximizar p(D|α,β) em relação a α e β, ou seja, encontrar α e β tais que
(
)
( )
2 1 2 2 2 2 , | − − − − = e e H D p y MP D E y MP E m N N N π β α β α αθ β(
| ,)
0 = ∂ ∂ α β α D p(
)
0 , | = ∂ ∂ β β α D p eRedes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Ou seja:
\ Agora, deseja-se maximizar p(D|α,β) em relação a α e β, ou seja, encontrar α e β tais que
\ O que é equivalente a:
(
)
0 , | = ∂ ∂ α β α D p(
| ,)
=0 ∂ ∂ β β α D p e(
| ,)
0 ln = ∂ ∂ α β α D p(
)
0 , | ln = ∂ ∂ β β α D p e(
)
( )
2 1 2 2 2 2 , | − − − − = e e H D p y MP D E y MP E m N N N π β α β α αθ βRedes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Inicialmente, calcula-se:
(
D)
N E N E N( )
H p MP y D y MP m ln 2 1 2 ln 2 ln 2 ln 2 , | ln αβ = α−α θ + β−β − π −Redes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros \ Agora, tem-se:
(
)
ln 0 2 1 2 , | ln = − − = ∂ ∂ α α α β α θ d H d E N D p m MPRedes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros \ Agora, tem-se:
(
)
ln 0 2 1 2 , | ln = − − = ∂ ∂ α α α β α θ d H d E N D p m MP α α θ d H d N EMP m ln 2 1 2 − = α θ α α d H d N E m MP ln 2 = −Redes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Matriz Hessiana:
\ Pode-se mostrar que:
∑
= + =Nm i i d H d 1 1 ln α λ α λi : autovalores da matriz G( )
I G I E H=β∇∇ Dθ +α =β +α *Redes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Logo, tem-se:
∑
∑
= = + = + − = m Nm i i i N i i m MP N E 1 1 2 α λ λ α λ α α θ MP MP Eθ γ α 2 =∑
= + =Nm i i i 1λ α λ γRedes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Agora para β:
(
)
ln 0 2 1 2 , | ln = − − = ∂ ∂ β β β β α d H d E N D p MP D y β β d H d N EMP y D ln 2 1 2 − = β β β d H d N E y MP D ln 2 = −Redes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros
\ Agora para β:
(
)
ln 0 2 1 2 , | ln = − − = ∂ ∂ β β β β α d H d E N D p MP D y β β d H d N EMP y D ln 2 1 2 − = β β β d H d N E y MP D ln 2 = − λRedes Neurais Bayesianas
] Cálculo dos Hiper-parâmetros \ Logo, tem-se:
∑
= + − = Nm i i i y MP D N E 1 2 α λ λ β MP D y MP E N 2 γ β = −∑
= + =Nm i i i 1λ α λ γInferência Bayesiana - Exemplo
]
No exemplo:
\
Modelo y = θ
1x
N
m= 1
θ = {θ
1}
( )
∑
{
}
= − = Ny k k k D x t E 1 2 1 2 1θ
θ
( )
θ
* D E G=∇∇∑
= =Ny k k x G 1 2∑
= =Ny k k x 1 2 1λ
γ λλα + = 1 1( )
2 2 1θ
θ
θ = EInferência Bayesiana - Exemplo
]
No exemplo:
\
Agora,
não é necessário
definir precisamente os
valores de
α
e
β
\
Define-se inicialmente:
[ α0 = 1
[ β0 = 1
\
E aplica-se iterativamente os passos abaixo:
[ Inferir θMP a partir de p(θ | D)
[ Inferir αMP e βMP a partir de p(α,β | D)
Inferência Bayesiana - Exemplo
]
Priori
p(
θ
)
:
α = 1.0
Inferência Bayesiana - Exemplo
]
Posteriori
p(
θ
| D)
:
θMP= 1.24
ω0= 1.57
Inferência Bayesiana - Exemplo
]
Modelo
y =
θ
MPx
:
θMP= 1.24
Inferência Bayesiana - Exemplo
]
Inferência dos hiper-parâmetros:
∑
= = =Ny k k x 1 2 1 3.85λ
0.79 0 . 1 1 1 1 1 = + = + =λλα λλ γ 52 . 0 2 = = MP MP Eθ γ α 20.01 2 = − = MP D y MP E N γ β 77 . 0 = MP Eθ =0.26 MP D EInferência Bayesiana - Exemplo
]
Posteriori
p(
θ
| D)
:
θMP= 1.55
ω0= 1.57
Inferência Bayesiana - Exemplo
]
Modelo
y =
θ
MPx
:
θMP= 1.55
ω0= 1.57
Inferência Bayesiana - Exemplo
]
Inferência dos hiper-parâmetros:
∑
= = = y N k k x 1 2 1 3.85λ
0.88 52 . 0 1 1 1 1 = + = + = λ λ α λ λ γ 37 . 0 2 = = MP MP Eθ γ α 89.85 2 = − = MP D y MP E N γ β 20 . 1 = MP Eθ =0.056 MP D EInferência Bayesiana - Exemplo
]
Posteriori
p(
θ
| D)
:
θMP= 1.56
ω0= 1.57
Inferência Bayesiana - Exemplo
]
Modelo
y =
θ
MPx
:
θMP= 1.56
Redes Neurais Bayesianas
] Função Densidade de Probabilidade da Saída \ O treinamento Bayesiano baseia-se na função densidade de
probabilidade dos parâmetros do modelo.
\ Para uma nova entrada, a saída do modelo também é descrita por uma f.d.p. definida por:
(
t xD)
=∫
p(
t xθ) (
pθ D)
dθp | , | , |
Redes Neurais Bayesianas
] Função Densidade de Probabilidade da Saída \ O treinamento Bayesiano baseia-se na função densidade de
probabilidade dos parâmetros do modelo.
\ Para uma nova entrada, a saída do modelo também é descrita por uma f.d.p. definida por:
(
t xD)
=∫
p(
t xθ) (
pθ D)
dθ p | , | , |(
)
(
( )
)
⎟ ⎠ ⎞ ⎜ ⎝ ⎛− − ∝ 2 , 2 exp , |xθ β t yxθ t p(
)
⎭ ⎬ ⎫ ⎩ ⎨ ⎧− ∆ ∆ ∝ θ θ θ D H p T 2 1 exp | MP θ θ θ= − ∆Redes Neurais Bayesianas
] Função Densidade de Probabilidade da Saída
\ Então fica:
\ Mas y(x,θ ) pode ser aproximada pela expansão de Taylor:
(
)
∫
⎡⎢⎣(
( )
)
⎩⎨⎧− ∆ ∆ ⎭⎬⎫⎥⎦⎤ ⎭ ⎬ ⎫ ⎩ ⎨ ⎧− − ∝ β t yxθ θ H θ dθ D x t p T 2 1 exp , 2 exp , | 2( ) (
x yx)
g w y T MP + ∆ = θ θ , , MP y g=∇θ θRedes Neurais Bayesianas
] Função Densidade de Probabilidade da Saída
\ Então fica:
(
)
∫
⎢⎣⎡(
)
⎩⎨⎧− ∆ ∆ ⎭⎬⎫⎦⎤⎥ ⎭ ⎬ ⎫ ⎩ ⎨ ⎧− − − ∆ ∝ β t y g θ θ H θ dθ D x t p T T MP 2 1 exp 2 exp , | 2(
MP)
MP yx y = ,θRedes Neurais Bayesianas
] Função Densidade de Probabilidade da Saída
\ Então fica:
\ Calculando esta integral, vem: