seminario classificadores
TRANSCRIPT
![Page 1: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/1.jpg)
Classificadores
Cleiane GonCleiane Gonççalves Oliveiraalves OliveiraMestrado em Ciência da Computação
Universidade Federal de Uberlândia
![Page 2: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/2.jpg)
Agenda
� A tarefa de classificação
� Um classificador lazy: KNN
� Um classificador eager: Redes bayesianas
� A ferramenta WEKA
![Page 3: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/3.jpg)
A tarefa de Classificação
� Seguradora de automóveis
Sexo Idade Acidente
F 45 Não
M 25 Sim
F 18 Não
F 32 Não
M 37 Não
M 18 Sim
![Page 4: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/4.jpg)
A tarefa de Classificação
� Seguradora de automóveis
Sexo Idade Acidente
F 45 Não
F 18 Não
F 32 Não
M 37 Não
M 18 Sim
M 25 Sim
![Page 5: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/5.jpg)
Classificadores
� O que é um classificador?
� Classificação é uma técnica que consiste na aplicação de um conjunto
de exemplos pré-classificados para desenvolver um modelo capaz de
classificar uma população maior de registros.
![Page 6: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/6.jpg)
Etapas do Processo
REGRAS
Classificador
Amostras
Classificadas Banco de
Testes
REGRAS CONFIÁVEIS
![Page 7: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/7.jpg)
Etapas do Processo
Amostras
Classificadas
![Page 8: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/8.jpg)
Amostras classificadas
Nome Idade Renda Profissão Classe
Daniel ≤ 30 Média Estudante Sim
João 31..50 Média-Alta Professor Sim
Carlos 31..50 Média-Alta Engenheiro Sim
Maria 31..50 Baixa Vendedora Não
Paulo ≤ 30 Baixa Porteiro Não
Otavio > 60 Média-Alta Aposentado Não
![Page 9: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/9.jpg)
Etapas do Processo
REGRAS
Classificador
Amostras
Classificadas
![Page 10: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/10.jpg)
Regras
� Se � idade = 41..50 e
�Renda = Media-Alta
então ClasseProdEletr = Sim.
� Se �Renda = Baixa
então ClasseProdEletr = Nao.
![Page 11: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/11.jpg)
Etapas do Processo
REGRAS
Classificador
Amostras
Classificadas Banco de
Testes
![Page 12: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/12.jpg)
Banco de testesNome Idade Renda Profissão Classe
Pedro 41 .. 50 Média-Alta Ecologista Não
José 41 .. 50 Média-Alta Professor Não
Luiza 41 .. 50 Média-Alta Assistente Social Não
Carla ≤ 30 Baixa Vendedora Não
Wanda ≤ 30 Baixa Faxineira Não
Felipe > 60 Média-Alta Aposentado Não
Se idade = 41..50 e Renda = Media-Alta
então ClasseProdEletr = Sim.
Se Renda = Baixa
então ClasseProdEletr = Nao.
Acurácia: 50%Acurácia: 50%
![Page 13: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/13.jpg)
Etapas do Processo
REGRAS
Classificador
Amostras
Classificadas Banco de
Testes
REGRAS CONFIÁVEIS
![Page 14: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/14.jpg)
Classificadores
� Classificadores lazy
�Método kNN (k-nearest-neighbor)
�Case-Based Reasoning (CBR)
![Page 15: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/15.jpg)
Classificadores
� Classificadores eager
�Arvores de Decisão
�Redes Neuronais
�Redes Bayseanas
�Máquinas de Suporte Vetorial
![Page 16: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/16.jpg)
KNN
![Page 17: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/17.jpg)
Método
Dados: Banco de Dados de m tuplas classificadas (a1,...,an,C)
![Page 18: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/18.jpg)
Método
Uma tupla X = (x1,...,xn) não classificada
Calcula-se a distância
de X a cada uma das
tuplas do banco de
dados.
![Page 19: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/19.jpg)
Método
Pega-se as k tuplas do banco de dados mais
próximas de X.
A classe de X é a
classe que aparece
com mais frequência
entre as k tuplas mais
próximas de X.K = 3
![Page 20: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/20.jpg)
Diferentes valores de K
K = 1 K = 2 K = 3
![Page 21: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/21.jpg)
Banco de Dados com tuplas classificadas
� Qualidade de lenço de papel
X1 = durabilidade (segundos)
X2 = força (kg/metro quadrado)
Classificação
7 7 Ruim
7 4 Ruim
3 4 Bom
1 4 Bom
![Page 22: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/22.jpg)
Tupla não classificada
� Qualidade de lenço de papel
X1 = durabilidade (segundos)
X2 = força (kg/metro quadrado)
Classificação
7 7 Ruim
7 4 Ruim
3 4 Bom
1 4 Bom
3 7 ?
![Page 23: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/23.jpg)
Calcular a distância
� Distância Euclidiana
� Distância de Mahalanobis.
� Distância de Minkowsky.
� Hamming Distance.
![Page 24: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/24.jpg)
Calcular a distância
� Distância Euclidiana
� As coordenadas das tuplas (px,py)
� As coordenadas da tupla a ser classificada (qx,qy)
∑=
−=
n
i
ii qpqpd1
2)(),(
![Page 25: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/25.jpg)
Calcular a distância
X1 X2 Cálculo Resultado Classe Ranking
7 7 (7-3)2 + (7-7)2 16 Ruim
7 4 (7-3)2 + (4-7)2 25 Ruim
3 4 (3-3)2 + (4-7)2 9 Bom
1 4 (1-3)2 + (4-7)2 13 Bom
� K = 3
4
3
2
1
BOM!!!
![Page 26: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/26.jpg)
Questões diversas
� Como calcular a distância quando existem
atributos cujos valores não são numéricos,
por exemplo o atributo Cor ?
� O que fazer quando a tupla a ser
classificada é incompleta, isto é, alguns
campos estão faltando ?
� Como determinar o melhor valor de k?
![Page 27: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/27.jpg)
Considerações
� Técnica simples e facilmente
implementada
� Dispendiosa computacionalmente
� Necessidade de determinar o valor de K
� O tipo de cálculo de distância escolhido
pode gerar melhores resultados.
![Page 28: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/28.jpg)
Aplicações
� Reconhecimento de voz
� Classificação de animais
� Mapas, definição de fronteiras
� Classificação automática de textos e
imagens
![Page 29: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/29.jpg)
![Page 30: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/30.jpg)
![Page 31: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/31.jpg)
Redes Bayesianas
![Page 32: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/32.jpg)
Rede Bayesiana
Z
X Y
Valores de X = { 1, 3}
Valores de Y = {2,4}
Valores de Z = {5,6}
X = 1
Y = 2
X = 1
Y = 4
X = 3
Y = 2
X = 3
Y = 4
Z = 5 0.5 0.3 0.2 0.1
Z = 6 0.5 0.7 0.8 0.9
P[Z |{X,Y}]
![Page 33: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/33.jpg)
Como classificar usando uma Rede Bayesiana de Crença
� Output: P[C1|X], P[C2|X], ..., P[Cn|X]
� Input:
�um banco de tuplas classificadas
�uma rede bayseana de crença
�Um atributo da rede selecionado como sendo o atributo classe
�Uma tupla X a ser classificada.
![Page 34: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/34.jpg)
Exemplo Histórico
FamiliarFumante
Efisema
DispnéiaRaio
X+
Câncer
Pulmão
![Page 35: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/35.jpg)
Exemplo HF= 1
F = 1
HF= 1
F = 0
HF= 0
F = 1
HF= 0
F = 0
1 0.8 0.5 0.7 0.1
0 0.2 0.5 0.3 0.9
F=1 F= 0
1 0.03 0.2
0 0.97 0.8
CP=1 CP=0
1 0.9 0.02
0 0.1 0.98
HF F
CP E
DRX+
HF =história familiar E = Efisema
F = fumante D = Dispnéia
CP = câncer de pulmão RX+ = raio X +
CPT(CP)
CPT(E) CPT(RX+)
CPT(D)
CP=1
E=1
CP=1
E=0
CP=0
E=1
CP=0
E=0
1 0.99 0.3 0.2 0.01
0 0.01 0.7 0.8 0.99
X = (HF=1, F=1, E = 0, RX+ = 1, D=0)
![Page 36: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/36.jpg)
Cálculo das probabilidades
P[C|X]
Teorema de Bayes
P[C|X] = P[X|C] * P[C]P[X]
P[x1|pais(x1)] * P[x2|pais(x2)] * ...* P[xn|pais(xn)]* P[Ci|pais(Ci)]
![Page 37: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/37.jpg)
Cálculos
X = (HF=1, F=1, E = 0, RX+ = 1, D=0)
P[X|CP=0] * P[CP=0] =
HF F
CP E
DRX+P[HF=1] *
P[F=1] *
P[E=0 | F=1] *
P[RX=1 |CP=0]*
P[D=0 |CP=0, E=0] *
P[CP=0 | HF = 1, F=1).
![Page 38: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/38.jpg)
Exemplo HF= 1
F = 1
HF= 1
F = 0
HF= 0
F = 1
HF= 0
F = 0
1 0.8 0.5 0.7 0.1
0 0.2 0.5 0.3 0.9
F=1 F= 0
1 0.03 0.2
0 0.97 0.8
CP=1 CP=0
1 0.9 0.02
0 0.1 0.98
HF F
CP E
DRX+
HF =história familiar E = Efisema
F = fumante D = Dispnéia
CP = câncer de pulmão RX+ = raio X +
CPT(CP)
CPT(E) CPT(RX+)
CPT(D)
CP=1
E=1
CP=1
E=0
CP=0
E=1
CP=0
E=0
1 0.99 0.3 0.2 0.01
0 0.01 0.7 0.8 0.99
X = (HF=1, F=1, E = 0, RX+ = 1, D=0)
![Page 39: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/39.jpg)
Cálculos
X = (HF=1, F=1, E = 0, RX+ = 1, D=0)
P[X|CP=0] * P[CP=0] =
1 *
1 *
0,97 *
0,02 *
0,99 *
0,2
HF F
CP E
DRX+
= 0,00384
![Page 40: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/40.jpg)
Cálculos
X = (HF=1, F=1, E = 0, RX+ = 1, D=0)
P[X|CP=1] * P[CP=1] =
HF F
CP E
DRX+P[HF=1] *
P[F=1] *
P[E=0 | F=1] *
P[RX=1 |CP=1]*
P[D=0 |CP=1, E=0] *
P[CP=1 | HF = 1, F=1).
![Page 41: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/41.jpg)
Exemplo HF= 1
F = 1
HF= 1
F = 0
HF= 0
F = 1
HF= 0
F = 0
1 0.8 0.5 0.7 0.1
0 0.2 0.5 0.3 0.9
F=1 F= 0
1 0.03 0.2
0 0.97 0.8
CP=1 CP=0
1 0.9 0.02
0 0.1 0.98
HF F
CP E
DRX+
HF =história familiar E = Efisema
F = fumante D = Dispnéia
CP = câncer de pulmão RX+ = raio X +
CPT(CP)
CPT(E) CPT(RX+)
CPT(D)
CP=1
E=1
CP=1
E=0
CP=0
E=1
CP=0
E=0
1 0.99 0.3 0.2 0.01
0 0.01 0.7 0.8 0.99
X = (HF=1, F=1, E = 0, RX+ = 1, D=0)
![Page 42: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/42.jpg)
Cálculos
X = (HF=1, F=1, E = 0, RX+ = 1, D=0)
P[X|CP=1] * P[CP=1] =
1 *
1 *
0,97 *
0,9 *
0,7 *
0,8
HF F
CP E
DRX+
= 0,48 > 0,00384
X = CP = 1
![Page 43: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/43.jpg)
Aplicações
� Diagnóstico médico
� Aprendizado de mapas
� Sistema de exploração e aquisição de
conhecimento espacial
� Interpretação de linguagem
� Visão
![Page 44: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/44.jpg)
![Page 45: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/45.jpg)
![Page 46: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/46.jpg)
Projetos
� ABS-Bayes: Sistema Especialista Probabilístico para Apoio ao Diagnóstico de Absenteísmo
� Agente Bayesiano de Apoio à Vigilância de Infecção Hospitalar - SAVIH
� Sistema especialista probabilístico para apoio ao diagnóstico de potencial econômico – SEPE
� Sistema de Avaliação da Evasão Escolar: E-Bayes
� Sistema Especialista de Apoio à Nutrição Enteral Pediátrica - SANEP
� Sistema de Avaliação do Crescimento Infantil - SACI
![Page 47: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/47.jpg)
WEKA
Waikato Environment for Knowledge Analysis
![Page 48: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/48.jpg)
Arquivo .ARFF@relation jogar_golfe
@attribute ceu {sol, nublado, chuva}
@attribute temperatura {alta,baixa,suave}
@attribute umidade {alta, normal}
@attribute vento {sim, nao}
@attribute classe {sim, nao}
@data
sol,alta,alta,nao,nao
sol,alta,alta,sim,nao
nublado,alta,alta,nao,sim
chuva,alta,alta,nao,sim
chuva,baixa,normal,nao,sim
chuva,baixa,normal,sim,nao
nublado,baixa,normal,sim,sim
![Page 49: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/49.jpg)
Interface
� Weka
� Carregando arquivos
� Classificadores
![Page 50: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/50.jpg)
� Executando um classificador Knn
�Algoritmo Ibk
�Correctly Classified Instances
�Matriz de discussão
![Page 51: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/51.jpg)
� Executando um classificador bayesiano
�Algoritmo BayesNet
�Correctly Classified Instances
�Matriz de discussão
�Gráfico da rede bayesiana
�Utilização de algoritmos de busca para a confecção da rede e CPT
![Page 52: Seminario classificadores](https://reader033.vdocuments.pub/reader033/viewer/2022042614/559fe1851a28ab022e8b4609/html5/thumbnails/52.jpg)
� Obrigada!