Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
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
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
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:
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
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 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
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:
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
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
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
André de Carvalho -
05/11/19 ICMC/USP 56
Exemplo
Conjunto de dados balance
Novo exemplo: x = (3,2,1,3)
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)
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:
André de Carvalho -
05/11/19 ICMC/USP 59
Exemplo
Conjunto de dados balance
Novo exemplo: x = (3,2,1,3)
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)
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
Edu Área
Salári
o
DAG
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
x2
x1 x2 x3 x4 x1 x2 x3 x4 x1 x3 x4
x2
x1 x2 x3 x4 x1 x2 x3 x4 x1 x3 x4
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/