Sei sulla pagina 1di 78

Inteligência Artificial: Uma

Abordagem de Aprendizado
de Máquina

Métodos Probabilísticos
Métodos probabilísticos

Informações disponíveis podem ser incompletas ou
imprecisas

Ex. presença de ruído, atributos que não incluem todas as
características que permitem predição acurada

 Uso de algoritmos baseados no teorema de Bayes

Métodos probabilísticos Bayesianos: modelam relaciona-
mento probabilístico entre atributos de entrada e alvo
P(A|B) em que A pode ser uma classe (doença) e B o conjunto
de valores de atributos de entrada (sintomas):
não depende apenas da relação entre A e B, mas também da
probabilidade de observar A independentemente de observar B
Métodos probabilísticos

Ex.: Predizer se uma pessoa terá problemas de
coração

Atributos de entrada: peso e frequência de exercício

Ignora outras causas para doença cardíaca

Hereditariedade

Fumo

Stress

...
Métodos probabilísticos

Estimativa de P(B): frequência com que esse
evento ocorre

Também é possível estimar probabilidade que B ocorra
para cada classe P(B|A)

Interesse é calcular P(A|B)
• Probabilidade de objeto pertencer à classe A

Teorema de Bayes calcula P(A|B) usando:


(i) probabilidade a priori da classe P(A)
(ii) a probabilidade de observar objetos que pertencem à classe
P(B|A)
(iii) probabilidade de ocorrência desses objetos P(B)
Probabilidades

Espaço amostral () : todos os possíveis resulta-
dos de um experimento

Também chamado espaço de resultados

Valores do conjunto de atributos de entrada


Evento (E): subconjunto de resultados em 

Resultado de experimento/observação

Ex. E = pacientes cujo resultado em um exame foi +

Ex.: Jogar um dado

 = {1, 3, 3, 4, 2, 5, 1, 6}

E = valor do dado < 4 = {1, 3, 3, 2, 1}
Conceitos básicos

P(E) satisfaz axiomas de Kolmogorov

P(E)  0

P() = 1

Se A e B são eventos disjuntos  P(A  B) = P(A) + P(B)

Eventos disjuntos ou mutuamente exclusivos: P(A  B) = 

Caso contrário, P(A  B) = P(A) + P(B) - P(A  B)

A B A B
Probabilidades

Ex.: características de estudantes
Tipo/número Mulheres Homens Total

Calouros 482 596 1078


Graduação 1916 2316 4232
Pós-graduação 1916 4236 6152
Total estudantes 3832 6552 10384
Probabilidades


Ex.: características de estudantes
Mulheres Homens

calouros Graduação

Pós

Mulheres Homens
Probabilidades

Ex.: características de estudantes

Supor que um calouro é selecionado

Espaço amostral = 1078 calouros

Qual é a probabilidade de uma mulher ter sido
selecionada?

Evento = ser mulher

45% dos calouros são mulheres (482 / 1078)

Se todos têm mesma probabilidade de serem escolhidos,
probabilidade de selecionar mulher é 45%
Eventos

Ex.: um calouro é selecionado

Resultado é a pessoa em específico selecionada

Evento fundamental

Outros eventos:

Seleção de uma mulher

Seleção de alguém de São Paulo

Seleção de alguém maior de 18 anos

Seleção de mulher de Minas Gerais

Seleção de qualquer pessoa

Evento universal

Seleção de nenhum aluno

Evento nulo

etc.
Eventos

Diferentes eventos podem ou não se sobrepor

Ocorrer para o mesmo resultado
Eventos que não se sobrepõem: mutuamente exclusivos
Ex.: aluno selecionado ser homem ou mulher

Conjunto de eventos exaustivo: ao menos um deles
ocorre

Ex.: aluno escolhido tem:

Evento 1: menos que 25 anos

Evento 2: mais que 17 anos

São exaustivos, mas não são mutuamente exclusivos
Eventos

Partição: conjunto de eventos mutuamente exclusivos e
exaustivos

Partição fundamental: contém todos os eventos
fundamentais

Ex.: Eventos selecionar mulher e selecionar homem
formam uma partição

Ex.: Eventos fundamentais associados a cada uma
das pessoas formam partição fundamental
Partição

Lei da probabilidade total:

Se B1, B2, ..., Bn formam uma partição em , então para
qualquer evento A:

P(A) = i=1:n P(A|Bi) x P(Bi)

Além disso, para qualquer partição: i=1:n P(Bi) = 1


Eventos conjuntos

Probabilidade de ter duas propriedades diferentes

Ex.: escolha de caloura (mulher) de Minas Gerais

P(M) = probabilidade de ser mulher

P(MG) = probabilidade de ser de Minas Gerais

P(M,MG) = probabilidade de ser mulher de Minas Gerais


Probabilidade conjunta
Conceitos básicos

Probabilidade conjunta:

Probabilidade de dois eventos A e B ocorrerem
simultaneamente

P(A  B) ou P(A,B)

Se eventos são independentes:

P(A  B) = P(A) * P(B)

P(A|B) = P(A)

A ocorrência de um não afeta a probabilidade de
ocorrência do outro
Eventos conjuntos

Independência não é usual

Fórmula mais geral para a probabilidade do evento
conjunto (ambos ocorrerem)

Probabilidades condicionais: probabilidade de um
evento dado que outro ocorreu

Ex.: P(M|MG) = probabilidade condicional de selecionar
mulher, dado que a pessoa escolhida é de Minas Gerais

P(A,B) = P(B) P(A|B) Teorema de


= P(A) P(B|A) Bayes
Eventos conjuntos

No ex.:

P(M, MG) = P(MG) P(M|MG)

Probabilidade de pessoa ser mulher de Minas Gerais é
probabilidade de pessoa ser de Minas Gerais vezes a
probabilidade de que, sendo mineira, a pessoa é mulher

OU


P(M, MG) = P(M) P(MG|M)

Probabilidade de pessoa ser mulher de Minas Gerais é
probabilidade de pessoa ser mulher vezes a probabilidade de
que a pessoa escolhida, sendo mulher, é mineira
Probabilidade condicional

Lei da probabilidade condicional:

P(A|B) = P(A  B)
P(B)

A B
Exemplo

Considere que um estudante qualquer é selecionado
(entre todos) aleatoriamente

Igual probabilidade para todos estudantes

Qual é a probabilidade de ser um homem pós-
graduando?

Probabilidade conjunta P(H,PG)

Partição fundamental: 10384 eventos fundamentais

Cada aluno em particular

Soma de todas probabilidades = 1

Então cada um tem probabilidade 1/10384 = 0,01%
Exemplo

Considere que um estudante qualquer é selecionado
(entre todos) aleatoriamente

Qual é a probabilidade de ser um homem pós-
graduando?

Probabilidade conjunta P(H,PG)

P(eventos fundamentais) = 0,01%

Probabilidade de ter selecionado pós-graduando

P(PG) = 6152 / 10384 = 0,59

Soma das probabilidades fundamentais dos 6152 eventos
associados a estudantes pós-graduandos
Exemplo

Considere que um estudante qualquer é selecionado
(entre todos) aleatoriamente

Qual é a probabilidade de ser um homem pós-
graduando?

Probabilidade conjunta P(H,PG)

P(eventos fundamentais) = 0,01%

P(PG) = 0,59

Selecionado pós-graduando, qual é a probabilidade
condicional dele ser um homem?

P(H |PG)
Exemplo

Considere que um estudante qualquer é selecionado
(entre todos) aleatoriamente

P(H |PG)

Nova partição fundamental = 6152 possíveis pós-
graduandos

4236 desses são homens

Cada um tem igual probabilidade de ser selecionado, ou
seja, 1/6152

Evento selecionar um homem é relacionado a 4236 desses
eventos fundamentais

P(H | PG) = 4236/6152 = 0,69
Exemplo

Considere que um estudante qualquer é selecionado
(entre todos) aleatoriamente

P(H,PG)

Teorema de Bayes

P(H,PG) = P(PG) P(H | PG)
= 6152 x 4236 = 4236
10384 6152 10384
Probabilidade em AM

Sejam dois eventos A e B

A: atributo alvo (presença de uma doença)

Variável aleatória com dois valores: presença e ausência

B: atributo de entrada (resultado de um exame)

Variável aleatória com dois valores: positivo e negativo

P(A) ou P(A=presente): probabilidade do evento A ocorrer
(doença estar presente)

P(A) = 1 – P( A)

P(B) ou P(B=+): probabilidade do evento B ocorrer
(exame +)

P(B) = 1 – P(B)
Probabilidade em AM

Exemplo: Probabilidade a priori pode
Paciente Teste Doença
ser estimada pela frequência
001 positivo presente
002 negativo presente P(-) = 4/10 = 0,4
003 negativo ausente P(+) = 6/10 = 0,6
004 positivo presente P(presente) = 6/10 = 0,6
005 positivo ausente P(ausente) = 4/10 = 0,4
006 positivo presente
007 negativo ausente
008 negativo presente
O que se deseja em
009 positivo ausente AM é a
010 positivo presente probabilidade a
posteriori
Probabilidade condicional

Probabilidade a priori x a posteriori de um indivíduo
estar doente


Probabilidade de ocorrência de um evento pode
depender da ocorrência de outro: P(A|B)

Probabilidade de ocorrência de um evento A depende da
ocorrência de um evento B

Ex.: Probabilidade de estar doente (A) dado que um exame (B)
deu positivo

Se eventos são independentes  P(A|B) = P(A)
Probabilidade condicional

É fácil estimar as probabilidades a priori: pela
frequência

P(B): prob. do resultado do exame ser positivo

P(A): prob. do resultado do paciente estar doente

P(B|A): prob. do resultado do exame ser positivo dado
que o paciente está doente


É difícil estimar probabilidade a posteriori

P(A|B): probabilidade do paciente estar doente dado que
um exame deu positivo

Uso do teorema de Bayes: Permite calcular probabilidade a
posteriori de um evento
Teorema de Bayes

Teorema de Bayes:

P(A|B) = P(B|A)P(A) / P(B)

Posteriori = (verossimilhança do dado x priori) / evidência

P(B): lei da probabilidade total

Evento B pode ter dois possíveis resultados, B1 (B) e B2 (B),
que formam uma partição em 
P ( A )= P ( A ∩ B 1 )+ P ( A ∩ B 2 )

P ( A )= P ( A∣ B 1 ) P ( B 1 )+ P ( A∣ B 2 ) P ( B 2 )
Aprendizado Bayesiano

Ex. diagnóstico de uma doença X

De acordo com experiências passadas:

Probabilidade de alguém possuir a doença é 8%

Teste para diagnóstico possui um grau de incerteza

75% dos testes positivos e 96% dos testes negativos
foram confirmados

Como representar essa informação?

Doença: variável aleatória com dois possíveis valores (presente/ausente)


Resultado do teste: dois valores (+ / -)
Aprendizado Bayesiano

Ex. diagnóstico de uma doença X

Valor da doença influencia valor do teste

 representação em um grafo

Doença Teste
Doença positivo negativo
presente: 8% presente: 75% 4%
ausente: 92% ausente: 25% 96%


Nós = variáveis ou atributos

Arestas = influência entre as variáveis
Aprendizado Bayesiano

Ex. diagnóstico de uma doença X
Doença Teste
Doença positivo negativo
presente: 8% presente: 75% 4%
ausente: 92% ausente: 25% 96%


Probabilidade de verdadeiros positivos (sensibilidade) = 75%

P(Teste = positivo|Doença = presente)

Probabilidade de verdadeiros negativos (especificidade) = 96%

P(Teste = negativo|Doença = ausente)
Aprendizado Bayesiano

Ex. diagnóstico de uma doença X

Doença Teste
Doença positivo negativo
presente: 8% presente: 75% 4%
ausente: 92% ausente: 25% 96%


Ou seja, podemos resumir:

P(Doença=presente) = 0,08 e P(Doença=ausente)=0,92

P(Teste=positivo|Doença=presente) = 0,75 e P(Teste=negativo|
Doença=positivo) = 0,25

P(Teste = positivo|Doença=negativo) = 0,04 e P(Teste=negativo|
Doença=negativo) = 0,96
Aprendizado Bayesiano

Ex. diagnóstico de uma doença X
Doença Teste
Doença positivo negativo
presente: 8% presente: 75% 4%
ausente: 92% ausente: 25% 96%


Qual o poder preditivo do Teste com respeito à Doença?
P(Teste = positivo) = P(Teste) = P(Teste|Doença)P(Doença) +
P(Teste|Doença)P(Doença) = 0,75x0,08 + 0,04x0,92 = 0,0968

P(Teste = negativo) = P(Teste) = P(Teste|Doença)P(Doença) +


P(Teste|Doença)P(Doença) = 0,25x0,08 + 0,96x0,92 = 0,9032
Aprendizado Bayesiano

Ex. diagnóstico de uma doença X
Doença Teste
Doença positivo negativo
presente: 8% presente: 75% 4%
ausente: 92% ausente: 25% 96%


Se sabemos que o resultado do Teste de um paciente foi +,
podemos concluir que ele está doente?

Calcular P(Doença|Teste)
Aprendizado Bayesiano

P(yi|x) = probabilidade de x pertencer a classe yi

Função de custo 0/1 é minimizada se x é associado a yk
para o qual P(yk|x) é máxima

Estimativa MAP (Maximum a Posteriori)

Predição:

yMAP = arg maxi P(yi | x)


Aprendizado Bayesiano

Funções que calculam probabilidades P(yi|x) são
chamadas discriminantes

Separam exemplos de classes diferentes

Teorema de Bayes provê método para calcular P(yi|x)

P(yi | x) = P(yi) P(x | yi)


P(x)
Aprendizado Bayesiano

Teorema de Bayes provê método para calcular P(yi|x)

P(yi | x) = P(yi) P(x | yi)


P(x)

P(x) pode ser ignorado, pois é o mesmo para todas as classes,


não afetando os valores relativos de suas probabilidades
Aprendizado Bayesiano

No exemplo da doença:

Calcular P(Doença=presente|Teste=positivo) e
P(Doença=ausente|Teste=positivo) e verificar qual é a maior

P(Doença=presente|Teste=positivo) = P(Teste=positivo|Doença=presente)
P(Doença=presente)/P(Teste=positivo)

P(Doença=ausente|Teste=positivo) = P(Teste=positivo|Doença=ausente)
P(Doença=ausente)/P(Teste=positivo)
Aprendizado Bayesiano

No exemplo da doença:

P(Teste=positivo|Doença=presente) P(Doença=presente) = 0,75 x
0,08 = 0,06

P(Teste=positivo|Doença=ausente) P(Doença=ausente) = 0,04 x
0,92 = 0,04


Normalizando para obter probabilidades:

Soma das probabilidades anteriores deve ser 1

P(Doença=presente|Teste=positivo) = 0,06 / (0,06+0,04) = 0,6

P(Doença=ausente|Teste=positivo) = 0,04 / (0,06+0,04) = 0,4

E o paciente pode ser diagnosticado como doente


Aprendizado Bayesiano

Assumindo que as probabilidades a priori P(yi) são iguais, o
cálculo da hipótese mais provável pode ser simplificado:
yMV = arg maxi P(x| yi)

P(Dados|hipótese) é chamado verossimilhança

A hipótese que maximiza P(Dados|hipótese) é designada por máxima
verossimilhança

Aplicabilidade ainda é reduzida devido ao grande número de exemplos


necessários para calcular P(x| yi) de forma viável
Variações para superar esse problema: diferentes discriminantes
Aprendizado Bayesiano

Voltando ao estimador MAP:

yMAP = arg maxi P(yi | x) = arg maxi P(yi) P(x|yi)



Ou seja, temos que estimar probabilidade a posteriori para cada
classe e encontrar o maior valor

Observe que:

P(yi) P(x|yi) = P(yi) P(x1,...,xd|yi) = P(yi,x1,...,xd)


Aplicando definição de probabilidade condicional sucessivamente:
P(yi,x1,...,xd) = P(yi) P(x1,...,xd|yi) = P(yi) P(x1|yi) P(x2,...,xd|yi,x1) =
P(yi) P(x1|yi) P(x2|yi,x1) P(x3,...,xd|yi,x1,x2) = ... =
P(yi) P(x1|yi) P(x2|yi,x1) P(x3|yi,x1,x2) ... P(xd|yi,x1,x2,...,xd-1)

Impraticável calcular
Naive Bayes

Classificador Bayesiano mais simples
Assume que os valores dos atributos de um exemplo são
independentes entre si dada a classe

Ou seja, que P(xl|yi,xm) = P(xl|yi), para l  m

Assim, P(yi,x1,...,xd) = P(yi) P(x1|yi) P(x2|yi) ... P(xd|yi)

 P(x|yi) pode ser decomposto em P(x1|yi) x ... x P(xd|yi)
Naive Bayes

Temos:


Aplicando log para transformar produto em soma

Todas as probabilidades
necessárias são
computadas a partir dos dados
de treinamento
Naive Bayes

Para duas classes, podemos reescrever:


Lado direito: sinal de cada termo indica contribuição
de cada atributo para a classe

Quociente > 1  logaritmo é positivo  atributo
contribui para a predição da classe y1

André de Carvalho -
05/11/19 ICMC/USP 44
Naive Bayes

Naive Bayes:

P(yi): manter contador para cada classe

P(xj|yi): Probabilidade de observar um valor de
atributo dado que o exemplo pertence a uma classe

Depende do tipo do atributo

Qualitativo: manter contador para cada valor de atributo
por classe

Quantitativo: assumir distribuição para os valores do
atributo (ex Normal) ou discretizar o atributo

Discretização é mais comum: = min(10, número de
valores diferentes) intervalos de mesmo tamanho
André de Carvalho -
05/11/19 ICMC/USP 45
Exemplo

Conjunto de dados balance scale
 http://archive.ics.uci.edu/ml/machine-learning-databases/balance-scale/balance-scale.data


Modela resultados de experimentos psicológicos

Classe: uma de três posições de uma balança

Inclinada para a direita

Inclinada para a esquerda

Sem inclinação (balanceada)

Atributos: pesos e dimensões dos braços direito e
esquerdo

Classe é o maior valor entre DesqxPesq e DdirxPdir

Se valores são iguais, é balanceada

05/11/19 46
Exemplo

Conjunto de dados balance
B,1,1,1,1
R,1,1,1,2
DistânciaDir
R,1,1,1,3
DistânciaESq R,1,1,1,4
R,1,1,1,5
R,1,1,2,1
.
.
PesoDir .

L,1,2,1,1
PesoESq B,1,2,1,2
R,1,2,1,3
.
.
.

André de Carvalho -
05/11/19 ICMC/USP 47
Exemplo

Conjunto de dados balance

NB

André de Carvalho -
05/11/19 ICMC/USP 48
Exemplo

Conjunto de dados balance

Conjunto tem 625 exemplos

Domínio valores de atributos de entrada: {1, 2, 3, 4, 5}

Meta: definir P(Classes|Atributos)

Calculando as prioris das classes:

Bl Es Dr
Contagem 49 288 288
P(classe) 0,078 0,461 0,461

André de Carvalho -
05/11/19 ICMC/USP 49
Exemplo

Conjunto de dados balance

Atributos numéricos

Supor que são normalmente distribuídos

Calcular média e desvio-padrão dos valores para cada
classe

Ou discretizar os atributos

Usando regra n. intervalos = min(10,n. valores diferentes) =
5 intervalos

André de Carvalho -
05/11/19 ICMC/USP 50
Exemplo

Conjunto de dados balance

Distribuição de valores para cada atributo em cada classe
Dist. Normal Discretização
PesoEsq Média DP V1 V2 V3
V4 V5
Balanceada 2,938 1,42 10 11 9 10
9
Esquerda 3,611 1,23 17 43 63 77
88
Direita 2,399 1,33 98 71 53 38
28
DistânciaEsq Média DP V1 V2 V3 V4
André de Carvalho -
V5
05/11/19 ICMC/USP 51
Exemplo

Conjunto de dados balance

Distribuição de valores para cada atributo em cada classe
Dist. Normal Discretização
PesoDir Média DP V1 V2 V3
V4 V5
Balanceada 2,938 1,42 10 11 9 10
9
Esquerda 2,399 1,33 98 71 53 38
28
Direita 3,611 1,22 17 43 63 77
88
DistânciaDir Média DP V1 V2 V3 V4
André de Carvalho -
V5
05/11/19 ICMC/USP 52
Exemplo

Conjunto de dados balance

Distribuição de valores para cada atributo em cada classe

André de Carvalho -
05/11/19 ICMC/USP 53
Exemplo

Conjunto de dados balance

Chegando um novo exemplo:

x = (3,2,1,3) = (Pesq,Desq,Pdir,Ddir)

Sabemos que está para a esquerda, pois 3 x 2 > 1 x 3

E o NB, o que diz?

André de Carvalho -
05/11/19 ICMC/USP 54
Exemplo

Conjunto de dados balance

Novo exemplo: x = (3,2,1,3)

Calcular P(yE|x), P(yD|x) e P(yB|x) e ver qual tem maior valor
d
log P( y i∣x )∝ log P( y i )+ ∑ log P( x j∣yi )
j=1

• Cáculo para classe E (balanceado para esquerda):


P(yE) = 0,461
P(xj|yE) para cada xj, tem duas formas de fazer, dependendo de
como assumir os atributos

André de Carvalho -
05/11/19 ICMC/USP 55
Exemplo

Conjunto de dados balance

Novo exemplo: x = (3,2,1,3)
• Cáculo para classe E (balanceado para esquerda):
2
v− μ
P(x |yE) usando a normal:
j

(
2
jy ) i

j 1 2σ jy
P ( x =v∣ y i )= e i

2
√ 2 πσ jy i

Atributo Média Desvio v P


Pesq 3,61 1,23 3 0,29
Desq 3,61 1,22 2 0,14
Pdir 2,4 1,33 1 0,17
Ddir 2,4 1,33 3 0,27

André de Carvalho -
05/11/19 ICMC/USP 56
Exemplo

Conjunto de dados balance

Novo exemplo: x = (3,2,1,3)

• Cáculo para classe E (balanceado para esquerda):


Substituindo valores, temos: log P(yE|x) = -3,07

• Cáculo para classe D (balanceado para direita):


Fazendo procedimentos similares, temos: log P(yD|x) = -3,47

• Cáculo para classe B (balanceado ou equilibrado):


Fazendo procedimentos similares, temos: log P(yB|x) = -3,81

André
O de maior deéCarvalho
valor - a classificação final
E, que dá
05/11/19 ICMC/USP 57
Exemplo

Conjunto de dados balance

Novo exemplo: x = (3,2,1,3)

• Cáculo para classe E (balanceado para esquerda):


log P(yE|x) = -3,07  P(yE|x) = 0,000845 / soma = 0,63

• Cáculo para classe D (balanceado para direita):


log P(yD|x) = -3,47  P(yD|x) = 0,000342 / soma = 0,26

• Cáculo para classe B (balanceado ou equilibrado):


log P(yB|x) = -3,81  P(yB|x) = 0,000154 / soma = 0,11

André
O de maior deéCarvalho
valor - a classificação final
E, que dá
05/11/19 ICMC/USP 58
Exemplo

Conjunto de dados balance

Novo exemplo: x = (3,2,1,3)
• Cáculo para classe E (balanceado para esquerda):
P(xj|yE) usando a discretização:

Atributo v Contagem Frequência P


Pesq 3 63 0,22 0,22
Desq 2 43 0,15 0,15
Pdir 1 98 0,34 0,34
Ddir 3 53 0,18 0,18

André de Carvalho -
05/11/19 ICMC/USP 59
Exemplo

Conjunto de dados balance

Novo exemplo: x = (3,2,1,3)

• Cáculo para classe E (balanceado para esquerda):


Substituindo valores, temos: log P(yE|x) = -3,03

• Cáculo para classe D (balanceado para direita):


Fazendo procedimentos similares, temos: log P(yD|x) = -3,57

• Cáculo para classe B (balanceado ou equilibrado):


Fazendo procedimentos similares, temos: log P(yB|x) = -3,92

André
O de maior deéCarvalho
valor - a classificação final
E, que dá
05/11/19 ICMC/USP 60
Exemplo

Conjunto de dados balance

Novo exemplo: x = (3,2,1,3)

• Cáculo para classe E (balanceado para esquerda):


log P(yE|x) = -3,03 P(yE|x) = 0,000943 / soma = 0,71

• Cáculo para classe D (balanceado para direita):


log P(yD|x) = -3,57  P(yD|x) = 0,000270 / soma = 0,20

• Cáculo para classe B (balanceado ou equilibrado):


log P(yB|x) = -3,92  P(yB|x) = 0,000121 / soma = 0,09

André
O de maior deéCarvalho
valor - a classificação final
E, que dá
05/11/19 ICMC/USP 61
Análise do algoritmo

Fronteira de decisão para problema de duas
classes definido por atributos booleanos é linear


Para problemas de classificação com custo 0-1,
basta que a ordenação das classes seja correta

Ou seja, estimativas a posteriori não precisam ser
realistas

André de Carvalho -
05/11/19 ICMC/USP 62
Análise do algoritmo

Vantagens do NB:

Todas as probabilidades exigidas podem ser calcula-
das dos dados de treinamento em uma passagem

Construção do modelo é bastante eficiente

Fácil de estender para incremental

Possui bom desempenho em vários domínios

Incluindo com dependência de atributos

Robusto a ruídos e atributos irrelevantes

André de Carvalho -
05/11/19 ICMC/USP 63
Análise do algoritmo

Desvantagens do NB:

Desconsidera relações entre os atributos

Dificuldade para atributos contínuos

André de Carvalho -
05/11/19 ICMC/USP 64
Desenvolvimentos

Algumas técnicas desenvolvidas para melhorar o
desempenho do NB:

Diferentes NB para diferentes regiões do espaço de
entradas

Ex. hierarquia das descrições probabilísticas

Ex. árvore de decisão com NB nas folhas

Construção de novos atributos que refletem
interdependências entre atributos originais

Outras alternativas para lidar com atributos contínuos

André de Carvalho -
05/11/19 ICMC/USP 65
Redes Bayesianas

Usam Independência condicional (IC)

Existe uma relação entre duas variáveis quando uma
terceira é conhecida

X é condicionalmente independente de Y dado Z:

P(X|Y, Z) = P(X|Z)

André de Carvalho -
05/11/19 ICMC/USP 66
Redes Bayesianas

Redes de crença ou rede causal

Modelos gráficos probabilísticos que usam IC entre
variáveis

Obter um equilíbrio entre #parâmetros a calcular e a
representação de dependências entre variáveis

#parâmetros: distribuições de probabilidade

Representam a distribuição de probabilidade conjunta
de um grupo de variáveis aleatórias

André de Carvalho -
05/11/19 ICMC/USP 67
Redes Bayesianas

Formadas por tupla (S, S)

S: estrutura da rede

DAG: grafo direcionado acíclico

Nós: variáveis aleatórias (VAs)

Arestas: dependências diretas entre variáveis

Arco entre dois nós indica influência ou correlação

S: conjunto de tabelas de probabilidade condicional
(TBC)

André de Carvalho -
05/11/19 ICMC/USP 68
Redes Bayesianas

Pais de uma variável aleatória xi

Conjunto de VAs que influenciam xi

P(xi | Paii)  S: TBC sobre os valores de xi dados os
valores de seu pai Paii


DAG S satisfaz condições de Markov

Cada nó é independente de todos os seus não
descendentes, dados seus pais

Permite representar a distribuição de probabilidade conjunta
de x na forma fatorada d
P ( x 1 , x 2 ,. . . , x d )= ∏ P ( x i∣ Pai i )
i=1
André de Carvalho -
05/11/19 ICMC/USP 69
Redes Bayesianas

Modelo qualitativo Modelo quantitativo V.A. Salário


Classe Não Sim
Classe
Edu Não Sim Não Sim
Salário Baixo 0,6 0,4 0,33 0,66
Alto 0,4 0,6 0,66 0,33

Edu Área
Salári
o
DAG

Fatoração para as variáveis do modelo:


P(Classe)P(Edu|Classe)P(Salário|Edu,Classe)P(Área|Salário,Classe)

André de Carvalho -
05/11/19 ICMC/USP 70
Redes Bayesianas

Classificação

Escolher um dos atributos como alvo

Outras variáveis são atributos de entrada

Markov Blanquet:

Conjunto de variáveis que influenciam alvo

Pais, filhos e outros pais dos filhos da VA alvo

P(y|x,S) pode ser calculada retornando:

hCRB (x) = argmaxj P(yj,x|S)

André de Carvalho -
05/11/19 ICMC/USP 71
Redes Bayesianas

Aprendizado

Estrutura da rede

Dada

Inferida do conjunto de treinamento

Tabelas de probabilidade condicional

Distribuição para atributos pode ser claramente
definida de um conjunto de dados

Ajuste de parâmetros

Similar a ajuste de pesos de Rede Neural Artificial

André de Carvalho -
05/11/19 ICMC/USP 72
Redes Bayesianas

Dificuldades

Escolha da estrutura para a rede

Busca dentre várias possíveis DAGs

Inferência de probabilidades condicionais é NP Hard

André de Carvalho -
05/11/19 ICMC/USP 73
Classificadores
Bayesianos com k
dependências

K-CBD

Framework unificado para vários classificadores CRB

Cada atributo pode ter no máximo k atributos
preditivos como pais

Classe Classe Classe

x2
x1 x2 x3 x4 x1 x2 x3 x4 x1 x3 x4

NB é 0-DBC TAN é 1-DBC BAN é 2-DBC


André de Carvalho -
05/11/19 ICMC/USP 74
Classificadores
Bayesianos com k
dependências
Classe Classe Classe

x2
x1 x2 x3 x4 x1 x2 x3 x4 x1 x3 x4

NB é 0-DBC TAN é 1-DBC BAN é 2-DBC



Fatorações P(Class,x1,x2,x3,x4):

NB: P(Class) P(x1|Class) P(x2|Class) P(x3|Class)P(x4|Class)

TAN: P(Class) P(x1|Class) P(x2|x1,Class) P(x3|x2,Class)P(x4|x3,Class)

BAN: P(Class) P(x1|Class) P(x2|x1,Class) P(x3|x1,x2,Class)P(x4|
x3,Class)

André de Carvalho -
05/11/19 ICMC/USP 75
Conclusão

Métodos baseados em probabilidade

Teorema de Bayes

Naive Bayes

Classificadores Bayesianos

Classificadores Bayesianos com k dependências

André de Carvalho -
05/11/19 ICMC/USP 76
Exercícios

Utilizando dois conjuntos de dados para classificação do
repositório UCI

Investigar desempenho de Naive Bayes e redes
Bayesianas


Usando mesmo conjunto de paridade da aula anterior:

Investigar desempenho de Naive Bayes e redes
Bayesianas

André de Carvalho -
05/11/19 ICMC/USP 77
Referências

Ilustrações utilizadas:
 http://www.webciencia.com/11_05coracao.htm

 http://desenhospaintcolor.blogspot.com/2010/05/desenho-de-dado-para-colorir-desenho-de.html

 http://sermineirouai.blogspot.com/2011/02/minas-gerais-quem-te-conhece.html

 http://www.organizacaocultural.ufba.br/index.php?/instituicao/exibir_pub/40


Alguns slides:

Prof Dr André C. P. L. F. Carvalho

Prof Dr Rodrigo Mello

Profa Dra Flavia Bernardini


Material probabilidade:
http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-050j-information-and-entropy-spring-2008/

Potrebbero piacerti anche