Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
●
Baseados na teoria de Thomas Bayes
●
Trata da probabilidade de acontencimento de eventos
●
Altera a estimativa inicial com base em novas informações
●
Nova informação atua como um modificador de opinião
●
Mostra como fazer avaliações e como ajustá-las quando deparados com novos
dados
●
Terminologia
●
probabilidade a priori: estimativas iniciais
●
probabilidade a posteriori: novos palpites sobre a probabilidade
Classificadores Bayesianos
●
Teorema de Bayes
●
Expressa a probabilidade a posteriori de uma hipótese baseado
●
na probabilidade a priori dessa hipótese
●
na probabilidade a priori da evidência
●
verossimilhança entre causa e efeito
P X | Y ∗P Y
P Y | X =
P X
Classificadores Bayesianos
●
Frequentemente não sabemos calcular P(X)
●
Lei da probabilidade total
●
Se
● Acontecimento Y pode ocorrer em m condições diferentes Y1, Y2, Y3, … Ym
●
Esses m sub-acontecimentos forem mutuamente exclusivos
●
Então
●
Pode-se escrever a probabilidade de X como
●
Lei da probabilidade total
●
Exemplo
●
Dispositivos de segurança A ou (exclusivo) B instalados em automóveis na mesma
proporçao
●
Em caso de acidente grave
●
A é eficaz em 95% dos casos
●
B é eficaz em 90% dos casos
●
Qual a probabilidade do dispositivo ser eficaz em caso de acidente grave?
Classificadores Bayesianos
●
Lei da probabilidade total
●
Exemplo
●
Dispositivos de segurança A ou (exclusivo) B instalados em automóveis na mesma
proporçao
●
Em caso de acidente grave
●
A é eficaz em 95% dos casos
●
B é eficaz em 90% dos casos
●
Qual a probabilidade do dispositivo ser eficaz em caso de acidente grave?
●
Acidente pode acontecer de duas maneiras diferentes (A ou B)
●
Frequentemente não sabemos calcular P(X)
●
Lei da probabilidade total
●
Se
● Acontecimento Y pode ocorrer em m condições diferentes Y1, Y2, Y3, … Ym
●
Esses m sub-acontecimentos forem mutuamente exclusivos
●
Então
●
Probabilidade de Y ocorrer é a soma das probabilidades dos m sub-acontecimentos
P X | Y ∗P Y
P Y | X =
P X P X = i=1..m P X | Y i ∗P Y i
P X |Y i∗PY i
P Y i | X =
i=1..m P X |Y i∗PY i
Classificadores Bayesianos
Classificadores Bayesianos
●
Exemplo de aplicação
●
Dois times de futebol
●
Time 1 vence 65% das vezes
●
Time 2 vence 35% das vezes
●
Sabe-se que
●
Time 1: dentre esses 65% de vitórias, somente 30% delas ocorrem no campo
adversário
●
Time 2: dentre os 35% de vitórias, 75% das vitórias ocorrem jogando em casa
●
Se o próximo jogo for na casa do time 2, qual time será, provavelmente, o vitorioso?
Classificadores Bayesianos
●
Reformulando a pergunta:
●
Qual a probabilidade de cada time vencer dado um jogo no campo de t2
●
P(t1 vencer | campo t2)
●
P(t2 vencer | campo t2)
●
Segundo bayes, temos:
●
Precisamos de 2 variáveis aleatórias:
●
variável aleatória para que representar quem tem o “mando de campo”.
●
variável aleatória para representar quem vence o jogo
●
P(t1 vencer) = 0.65
●
P(t2 vencer) = 0.35
●
P(campo t2 | t2 venceu) = 0.75
●
P(campo t2 | t1 venceu) = 0.30
●
Teorema de bayes para classificação
●
Definição:
● Seja X um conjunto de atributos {X , X , X … X } e Y a classe de cada atributo
1 2 3 n
●
X e Y tem relação não determinística
●
Podemos tratar X e Y como variáveis randômicas
● Calcula-se a probabilidade a posteriori usando P(Y | {X1, X2, X3 … Xn} )
●
Treinamento
●
Aprende-se a probabilidade a posteriori P(Y|X) para cada combinação de X e Y
baseados em dados de treinamento.
●
Um registro de teste X' é classificado de acordo com a classe Y' que maximiza a
probabilidade a posteriori, P(Y'|X').
Classificadores Bayesianos
●
Problema de classificação:
●
Arquivo de treinamento abaixo
●
Rótulo Y representa classe inadimplente
●
Registro X sendo:
●
casa própria=não
●
Estado civil = casado
●
Renda anual = $120k
●
Como esse registro é classificado?
●
Se P(inadimplete=sim|X) > P(inadimplete=nao|X)
●
Classificado como sim
id Casa Estado Renda inadim
●
Caso contrário própria? civil anual plente?
●
Classificado como não 1 sim solteiro 125k não
●
Resta só gerar essas probabilidades 2 não casado 100k não
3 não solteiro 70k não
4 sim casado 120k não
5 não divorciado 95k sim
6 não casado 60k não
7 sim divorciado 220k não
8 não solteiro 85k sim
9 não casado 75k não
10 não solteiro 90k sim
Classificadores Bayesianos
●
Estimando as probabilidades
●
Estimar a probabilidade a posteriori exata é difícil:
●
Exige um conjunto de dados grande para treinamento
●
Com o teorema de bayes tem-se:
P X | Y ∗P Y
P Y | X =
P X
Classificadores Bayesianos
●
Estimando as probabilidades
●
Estimar a probabilidade a posteriori exata é difícil:
●
Exige um conjunto de dados grande para treinamento
●
Com o teorema de bayes tem-se:
●
Estimando as probabilidades
●
Estimar a probabilidade a posteriori exata é difícil:
●
Exige um conjunto de dados grande para treinamento
●
Com o teorema de bayes tem-se:
Probabilidade é
sempre constante ao
P X | Y ∗P Y comparar diferentes
P Y | X =
P X valores de Y. Pode
ser ignorado
Classificadores Bayesianos
●
Estimando as probabilidades
●
Estimar a probabilidade a posteriori exata é difícil:
●
Exige um conjunto de dados grande para treinamento
●
Com o teorema de bayes tem-se:
●
Classificadores Bayesianos
●
Método para estimar P(X|Y)
●
Duas implementações
●
Classificador ingênuo
●
Rede bayesiana de crenças
Classificadores Bayesianos
●
Classificadores Ingênuos
●
Assumem que os atributos são condicionalmente independentes
● Probabilidade de um conjunto de atributos X= {X1, X2, X3 … Xn} dado Y ser da classe y
●
produtório da probabilidade de cada atributo individual dado y
●
probabilidade individual é fácil computar
P X | Y ∗P Y
P Y | X = P X |Y = y= i=1..n P X i |Y = y
P X
Classificadores Bayesianos
●
Classificadores Ingênuos
●
Assumem que os atributos são condicionalmente independentes
● Probabilidade de um conjunto de atributos X= {X1, X2, X3 … Xn} dado y ser da classe y
●
produtório da probabilidade de cada atributo individual dado y
●
probabilidade individual é fácil computar
P X | Y ∗P Y
P Y | X = P X |Y = y= i=1..n P X i |Y = y
P X
●
Classificadores Ingênuos
●
Assumem que os atributos são condicionalmente independentes
● Probabilidade de um conjunto de atributos X= {X1, X2, X3 … Xn} dado y ser da classe y
●
produtório da probabilidade de cada atributo individual dado y
●
probabilidade individual é fácil computar
P X | Y ∗P Y
P Y | X = P X |Y = y= i=1..n P X i |Y = y
P X
P Y = y | X =P Y = y∗i=1..n P X i |Y = y
Classificadores Bayesianos
●
Estimando probabilidades para atributos categóricos (com rótulo)
● Dado atributo categórico Xi, a probabilidade condicional P(Xi=xi | Y=y)
● Estimado de acordo com o número de instâncias da classe Y com valor Xi
●
Simplesmente contar o número de ocorrências nos dados de treinamento
Classificadores Bayesianos
●
Estimando probabilidades para atributos categóricos (com rótulo)
●
Dado atributo categórico Xi, a probabilidade condicional P(Xi=xi | Y=y)
●
Estimado de acordo com o número de instâncias da classe Y com valor xi
●
Simplesmente contar o número de ocorrências nos dados de treinamento
●
P(casa própria = sim | inadimplente = não)
●
Estimando probabilidades para atributos categóricos (com rótulo)
●
Dado atributo categórico Xi, a probabilidade condicional P(Xi=xi | Y=y)
●
Estimado de acordo com o número de instâncias da classe Y com valor xi
●
Simplesmente contar o número de ocorrências nos dados de treinamento
●
P(casa própria = sim | inadimplente = não) = 3/7 = 42.85%
●
Estimando probabilidades para atributos contínuos
●
Duas abordagens
●
Discretizar atributos
●
Assumir uma função de distribuição de probabilidades
Classificadores Bayesianos
●
Estimando probabilidades para atributos contínuos
●
Discretização
●
Transforma atributos continuos em ordinais
● P(X | Y=y) é estimada computando a fração de registros de treinamento pertencentes
i
●
Estimando probabilidades para atributos contínuos
●
Assumir uma função de distribuição de probabilidades
●
Estimar os parâmetros dessa função de probabilidades de acordo com dados
treinamento
●
Geralmente usado uma curva gaussiana
●
Parâmetros são média e variância
● Para cada classe Y , a probabilidade condicional para atributo X é
j i
●
Tanto µ quanto σ podem facilmente ser estimados com base nos registros de teste.
Classificadores Bayesianos
●
Estimando probabilidades para atributos contínuos
●
Definindo os parâmetros da curva para atributo rendimento dado não inadimplente
●
Dado um registro de teste com valor 120k, podemos calcular a probabilidade como
segue
P(rendimento=120|Nao) = 0.0072
Classificadores Bayesianos
●
Voltando ao exemplo
●
Registro X sendo: PY = y ∗ i=1..n P X i | Y = y
●
casa própria=não P Y = y | X =
P X
●
Estado civil = casado
●
Renda anual = $120k
●
Como classificar?
●
Calcular probabilidade (sim|X) e probabilidade de (não|X)
●
A maior probabilidade corresponde ao rótulo
P(sim) = 3/10
P(não) = 7/10 id Casa Estado Renda inadim
P(casa própria=sim | não) = 3/7 própria? civil anual plente?
P(casa própria=não | não) = 4/7 1 sim solteiro 125k não
P(casa própria=sim | sim) = 0
P(casa própria=não | sim) = 1 2 não casado 100k não
P(estado civil = solteiro | não) = 2/7 3 não solteiro 70k não
P(estado civil = divorciado | não) = 1/7
4 sim casado 120k não
P(estado civil = casado| não) = 4/7
P(estado civil = solteiro | sim) = 2/3 5 não divorciado 95k sim
P(estado civil = divorciado | sim) = 1/3 6 não casado 60k não
P(estado civil = casado| sim) = 0
7 sim divorciado 220k não
Para rendimentos anuais: 8 não solteiro 85k sim
Classe não: média 110, variância 2975
9 não casado 75k não
Classe sim: média 90, variância 25
10 não solteiro 90k sim
Classificadores Bayesianos
●
Voltando ao exemplo
●
Registro X sendo:
●
casa própria=não P Y = y | X =P Y = y∗i=1..n P X i |Y = y
●
Estado civil = casado
●
Renda anual = $120k
●
P(não | X) = P(Y=não) * P(X|não)
●
P(não | X) = 7/10 * (4/7 * 4/7 * 0.0072) = 0.0016
P(sim) = 3/10
P(não) = 7/10
P(casa própria=sim | não) = 3/7
P(casa própria=não | não) = 4/7
P(casa própria=sim | sim) = 0
P(casa própria=não | sim) = 1
P(estado civil = solteiro | não) = 2/7
P(estado civil = divorciado | não) = 1/7
P(estado civil = casado| não) = 4/7
P(estado civil = solteiro | sim) = 2/3
P(estado civil = divorciado | sim) = 1/3
P(estado civil = casado| sim) = 0
●
Voltando ao exemplo
●
Registro X sendo:
●
casa própria=não P Y = y | X =P Y = y∗i=1..n P X i |Y = y
●
Estado civil = casado
●
Renda anual = $120k
●
P(sim | X) = P(Y=sim) * P(X|sim)
●
P(sim | X) = c * 3/10 * (1 * 0 * 0.0000000012) = 0
P(sim) = 3/10
P(não) = 7/10
P(cas própria=sim | não) = 3/7
P(casa própria=não | não) = 4/7
P(casa própria=sim | sim) = 0
P(casa própria=não | sim) = 1
P(estado civil = solteiro | não) = 2/7
P(estado civil = divorciado | não) = 1/7
P(estado civil = casado| não) = 4/7
P(estado civil = solteiro | sim) = 2/3
P(estado civil = divorciado | sim) = 1/3
P(estado civil = casado| sim) = 0
●
Voltando ao exemplo
●
Registro X sendo:
●
casa própria=não
●
Estado civil = casado
●
Renda anual = $120k
●
P(não | X) = 0.0016
●
P(sim | X) = 0
●
Logo o registro é classificado como não
Classificadores Bayesianos
●
Características dos Classificadores Ingênuos
●
São robustos para isolar pontos de ruído porque tais pontos ficam fora da media ao
estimar probabilidades condicionais
● São robustos para atributos irrelevantes. Se um X é um atributo irrelevante então
i
●
Classificadores Bayesianos
●
Método para estimar P(X|Y)
●
Duas implementações
●
Classificador ingênuo
●
Rede bayesiana de crenças
Classificadores Bayesianos
●
Rede Bayesiana de Brenças (BBN)
●
Abordagem mais flexível para questão das dependências condicionais
●
Não exige que todos os atributos sejam condicionalmente independentes
●
Permite especificar quais pares de atributos são condicionalmente independentes
●
Representação do modelo
●
Grafo acíclico direcionado – contém relação de dependencia entre variáveis
●
Tabela de propriedades associada a cada nodo.
Classificadores Bayesianos
●
Rede Bayesiana de Brenças (BBN)
●
Representação gráfica
●
Grafo de dependências condicionais
Y
A B D
C A B C D
C
A B
- A e B influenciam C
AeB Todos os atributos
- A e B condicional- condicionalmente condionalmente independentes
mente dependentes independentes – representação da rede ingênua
dado C dado C
Classificadores Bayesianos
●
Rede Bayesiana de Brenças (BBN)
●
Representação Gráfica
●
Grafo de dependências condicionais
●
Tabela de probabilidades
●
Nodo X não tem pais – tabela contem somente P(X)
●
Nodo X tem somente um pai – tabela contém P(X|Y)
● Nodo X tem vários pais {Y , Y , …, Y } – tabela contém P(X|Y , Y , …, Y )
1 2 k 1 2 k
Classificadores Bayesianos
●
Rede Bayesiana de Brenças (BBN)
●
Exemplo
●
Detecão de doenças (problemas de coração e azia) em pacientes
●
Rede tem nodos para
●
Fatores de risco
●
Doenças
●
Sintomas
Classificadores Bayesianos
●
Rede Bayesiana de Brenças (BBN)
●
Exemplo
Exercício Dieta
Problema
azia
coração
Pressão
Dor no peito
sanguínea
Classificadores Bayesianos
●
Rede Bayesiana de Brenças (BBN)
●
Exemplo
E=sim D=saudável
Exercício Dieta
0.7 0.25
PC=sim
E=sim 0.25
D=saudável
A=sim
E=sim 0.45
D=saudável 0.2
D= não saudável
E=não 0.55 D= não 0.85
Problema saudável
D=saudável azia
coração
E=não 0.75
D=não saudável
DP=sim
PC=sim 0.8
Pressão A=sim
PS=alta Dor no peito
sanguínea
PC=sim 0.6
PC=sim 0.85
A= não
PC=não 0.2
PC=não 0.4
A=sim
PC=não 0.1
A=não
Classificadores Bayesianos
●
Rede Bayesiana de Brenças (BBN)
●
Contrução da Rede
●
É feita em dois passos:
●
Criação da estrutura da rede
●
Estimativa para montar a tabela de probabilidades para cada nodo
Classificadores Bayesianos
●
Rede Bayesiana de Brenças (BBN) – Estrutura da Rede
●
Rede Bayesiana de Brenças (BBN)
●
Exemplo de construção da topologia
●
Passo 1: assumir a ordem (E, D, PC, A, DP, PS)
●
Laço for:
P(D|E) → simplificado para P(D) pois D não é afetado por D
P(PC|E,D) → não pode ser simplificado, fica P(PC|E,D)
P(A|E,D,PC) → simplificado para P(A|D)
P(DP|E,D,PC,A) → simplificado para P(DP|PC,A)
P(PS|E,D,PC,A,DP) → simplificado para P(PS|PC)
●
Baseado nessas dependências condicionais criar arcos entre nodos
●
Problema Coração – Exercício
●
Problema Coração – Dieta
●
Azia – Dieta
●
Dor no peito – Problema no coração
●
Dor no peito – Azia
●
Pressão sanguínea – problema no coração
Classificadores Bayesianos
●
Rede Bayesiana de Brenças (BBN)
●
Contrução da Rede
●
É feita em dois passos:
●
Criação da estrutura da rede
●
Estimativa para montar a tabela de probabilidades para cada nodo
●
Exatamente como foi feito no classificador ingênuo
Classificadores Bayesianos
●
Rede Bayesiana de Brenças (BBN)
●
Problemas na contrução da Rede
●
Exige o conhecimento de um especialista para saber como as variáveis se afetam
●
Topologia da rede pode variar ao se aplicar o algoritmo numa ordem diferente
●
Em princípio é necessário eximinar todas as d! possibilidades de ordenamento
●
inviável
●
Construir a topologia de uma BBN sem conhecimento prévio (especilialista) ainda é
um desafio nessa área.
Classificadores Bayesianos
●
Rede Bayesiana de Brenças (BBN)
●
Inferência: como usar a rede?
●
Algoritmos:
●
Eliminação de Variáveis
●
Árvore de propagação clique
●
Condicionamento recursivo
●
Inferência manual
Classificadores Bayesianos
●
Rede Bayesiana de Brenças (BBN)
●
Exemplo de Inferência
●
Caso 1: nenhum conhecimento prévio
●
Probabilidade de uma pessoa ter problema no coração
●
Pode acontecer de 4 maneiras diferentes
Classificadores Bayesianos
●
Rede Bayesiana de Brenças (BBN)
E=sim D=saudável
Exercício Dieta
0.7 0.25
PC=sim
E=sim 0.25
D=saudável
A=sim
E=sim 0.45
D=saudável 0.2
D= não saudável
E=não 0.55 D= não 0.85
Problema saudável
D=saudável azia
coração
E=não 0.75
D=não saudável
DP=sim
PC=sim 0.8
Pressão A=sim
PS=alta Dor no peito
sanguínea
PC=sim 0.6
PC=sim 0.85
A= não
PC=não 0.2
PC=não 0.4
A=sim
PC=não 0.1
A=não
Classificadores Bayesianos
●
Rede Bayesiana de Brenças (BBN)
●
Exemplo de Inferência
●
Caso 1: nenhum conhecimento prévio
●
Probabilidade de uma pessoa ter doença do coração
●
Pode acontecer de 4 maneiras diferentes
●
Usando a lei da probabilidade total:
●
Rede Bayesiana de Brenças (BBN)
●
Exemplo de Inferência
●
Probabilidade de uma pessoa ter problema de coração, sabendo-se que ela tem
pressão alta
●
P(PC=sim|PS=alta) = P(PS=alta|PC=sim)*P(PC=sim) / P(PS=alta)
●
P(PC=sim|PS=alta) = P(PS=alta|PC=sim)*0.49 / P(PS=alta)
●
P(PS=alta) = P(PS=alta|PC=sim)*P(PC=sim) + P(PS=alta|PC=não)*P(PC=não)
●
P(PS=alta) = 0.85 * 0.49 + 0.2 * 0.51 = 0.5185
●
P(PS=alta) = 0.5185
●
P(PC=sim|PS=alta) = 0.85 * 0.49 / 0.5185
●
P(PC=sim|PS=alta) = 0.8033
●
P(PC=nao|PS=alta) = 1-0.8033 = 0.1967
Classificadores Bayesianos
●
Rede Bayesiana de Brenças (BBN)
●
Características
●
BBN's fornecem uma abordagem para captuarar o conhecimento a priori para um
domínio particular usando um modelo gráfico.
●
Construir o modelo pode ser bastante custoso. Entretanto, uma vez que o modelo
está pronto, a adição de novas variáveis é simples.
●
São adequadas para trabalhar com dados incompletos. Instâncias que tenham
atributos faltantes podem ser tratadas integrando-se a probabilidade de todas as
variáveis possíveis para este atributo.
●
Como a informação é combinada probabilisticamente com conhecimento prévio, o
método é muito robusto ao sobretreinamento (overfitting).