algoritmos bio-inspirados -...
TRANSCRIPT
![Page 1: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/1.jpg)
Algoritmos Bio-inspirados
Conceitos e Aplicaçõesem Aprendizado de Máquina
Gisele L. PappaDepartamento de Ciência da Computação
Universidade Federal de Minas [email protected]
![Page 2: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/2.jpg)
Parte 2 (Continuação): Aprendizado de Máquina e
Mineração de Dados
![Page 3: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/3.jpg)
Mineração de Dados:Foco em Classificação
![Page 4: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/4.jpg)
Classificação
• Conjunto de exemplos cuja classe é conhecida
• Induz um modelo a partir dos exemplos de treinamento
– Modelo define como o conhecimento será representado
• Testa o modelo em um conjunto de teste, diferente do conjunto de treinamento
• 2 fases: treinamento e teste
![Page 5: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/5.jpg)
Dados de
Treinamento
NAME RANK YEARS TENURED
Mike Assistant Prof 3 no
Mary Assistant Prof 7 yes
Bill Professor 2 yes
Jim Associate Prof 7 yes
Dave Assistant Prof 6 no
Anne Associate Prof 3 no
Algoritmos de
Classificação
IF rank = ‘professor’
OR years > 6
THEN tenured = ‘yes’
Classificador
(Modelo)
Fase 1:Treinamento
![Page 6: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/6.jpg)
Classificador
Dados de
Teste
NAME RANK YEARS TENURED
Tom Assistant Prof 2 no
Merlisa Associate Prof 7 no
George Professor 5 yes
Joseph Assistant Prof 7 yes
Dados Novos
(Jeff, Professor, 4)
Tenured?
Fase 2: Teste
![Page 7: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/7.jpg)
Tipos de Modelos de Classificação
• Modelos de conhecimento compreensível– Regras de decisão
– Árvore de decisão
– Redes Bayesianas
• Modelos “caixa preta”– SVMs (Support Vector Machines)
– Redes neurais
– KNN
• Algoritmos evolucionários podem ser usados para gerar os 2 tipos de modelos
![Page 8: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/8.jpg)
Algoritmos de Indução de Regras
• Geram modelos do tipo
SE (deitado na carteira = verdadeiro)
ENTÃO AULA_RUIM
..............
SE (perguntas > 5)
ENTÃO AULA_BOA
![Page 9: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/9.jpg)
Avaliação dos algoritmos de classificação
![Page 10: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/10.jpg)
Avaliação
• Normalmente é feita utilizando a taxa de acerto ou acurácia
– Problemas com classes não-balanceadas
• Outras métricas mais pertinentes
– Sensitividade
– Especificidade
– Precisão
– F1
![Page 11: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/11.jpg)
Acurácia – Taxa de erros
• Acc(M) = porcentagem dos exemplos de teste quesão corretamente classificadas.
• Err(M) = 1 – Acc(M)
• Matriz de Confusão
C1 C2
C1 Positivos
verdadeiros
Falsos
Negativos
C2 Falsos
Positivos
Negativos
verdadeiros
Classes Preditas
Classes Reais
![Page 12: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/12.jpg)
Classes “não-balanceadas”
Exemplo : acc(M) = 90%
C1 = tem-câncer (4 pacientes)
C2 = não-tem-câncer (500 pacientes)
• Classificou corretamente 454 pacientes que não tem câncer
• Não acertou nenhum dos que tem câncer
• Pode ser considerado como “bom classificador”
mesmo com acurácia alta ?
![Page 13: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/13.jpg)
Medidas para classificadores (classes não-balanceadas)
Sensitividade (recall) = true-pos pos
Especificidade = true-negneg
Precisão = true-pos true-pos + falso-pos
% pacientes classificados corretamente
como positivos dentre todos os que foram classificados como positivos
% pacientes classificados corretamente
como positivos dentre todos os que realmente são positivos
Precisão e Recall : medidas originadas em Recuperação de Informação
utilizadas em Classificação, quando se lida com “classes não-balanceadas”
![Page 14: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/14.jpg)
Medida F1 : Média harmônica de Precisão e Recall
• Média harmônica entre dois números x e y tende a ser próxima de min(x,y)
• F1 alto implica que precisão e recall são razoavelmente altos.
r + pF1 =
2 rp
![Page 15: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/15.jpg)
Parte 3:Algoritmos Evolucionários em
Mineração de Dados
![Page 16: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/16.jpg)
AEs e Mineração de Dados
Conjunto de Treinamento
Algoritmo de Classificação
Modelo de Classificação
Conjunto de Teste
AEs para evoluir
algoritmos
AEs para evoluir
modelos
AEs para evoluir
dados
Esquema básico de execução da tarefa de classificação
![Page 17: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/17.jpg)
Sumário
• Algoritmos Genéticos para Seleção de Atributos
• Algoritmos Genéticos e Programação Genética para Classificação
– AGP
– Credibilidade
• Programação Genética para Criação de Algoritmos de Indução de Regras
![Page 18: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/18.jpg)
Algoritmo Genético para Seleção de Atributos
![Page 19: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/19.jpg)
Seleção de Atributos em dados de alta dimensão
• 2 abordagens principais:
– Filtro (independe do classificador)
– Wrapper (dependente do classificador)
Dados de Treinamento
Algoritmo de Seleção
Atributos Selecionados
Dados de Treinamento
Algoritmo de Seleção
Atributos Selecionados
Algoritmo de Classificação
Filtro Wrapper
![Page 20: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/20.jpg)
Seleção de Atributos Wrapper em Imagens Médias
• Objetivo
– Criar modelos de prognóstico de pacientes com linfoma baseado em imagens obtidas em exames PET (tomografia de emissão de positrons)
• Dados de alta dimensão extraídos de imagens
– Pré-processamento• Seleção de atributos com algoritmos genéticos
![Page 21: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/21.jpg)
Antes do Tratamento 2 ciclos de quimio 4 ciclos de quimio
![Page 22: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/22.jpg)
Representação dos indivíduos
• Utilizando um vetor de bits, onde cada posiçãorepresenta a presença ou ausência de um atributo
• Fitness– A cada geração o algoritmo de classificação é
executado e avaliado
• Operadores genéticos padrão
![Page 23: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/23.jpg)
Esquema do algoritmo implementado
PopulaçãoInicial
Seleção
ReproduçãoNova
População
Fitness
Critério de paradasatisfeito?
Não
Sim
Crossover
Mutação
pcross
preprod
pmut
Retorna melhor solução
Fitness
![Page 24: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/24.jpg)
FitnessDados de
treinamento
Seleção dos atributos
ClassificadorDados de
treinamentomodificados
Dados devalidação
Modelo
Métrica deQualidade
Fitness
![Page 25: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/25.jpg)
Vantagens e desvantagens
• Vantagens
– Consideram interações entre os atributos
– Busca global
• Desvantagens
– Tempo computacional (acontece com qualquer método wraper)
![Page 26: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/26.jpg)
Algoritmos Evolucionários em Clasificação
![Page 27: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/27.jpg)
Muita coisa já foi feita…
• Tanto algoritmos genéticos quanto programação genética podem ser utilizadas
• Os tipos de modelos que podem ser representados variam, sendo os mais comuns:
– Árvores de decisão
– Regras de decisão
– Funções matemáticas
![Page 28: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/28.jpg)
Exemplo de representação - GA
• Utilizando um conjunto de regras em GA
• 2 abordagens principais– Pittsburgh
• Indivíduo representa um conjunto de regras
– Michigan• Indivíduo representa uma regra
• Classe normalmente é mantida fixa
• Atributos são representados– De forma binária
– Utilizando uma codificação de alto nível
![Page 29: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/29.jpg)
Exemplo de representação - GA
• Atributos com codificação binária– Atributos categóricos recebem um bit para cada valor
possível que podem assumir• ESTADO CIVIL: casado, solteiro, divorciado, viúvo
– Representados por 4 bits 0000
– 2 bits podem estar ativos simbolizando um OR
– Todos os bits ativos excluem automaticamente a condição da regra
– Atributos contínuos são discretizados (dividido em intervalos) e modelados como categóricos
• Idade dividida em 5 intervalos:
0-18, 19-25, 26-40, 41-70, 70-..., representada por 5 bits
![Page 30: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/30.jpg)
Exemplo de representação - GA
• Atributos com codificação de alto nível– Cada gene representa uma condição da regra, dividida
em 3 partes• Atributo Operador Valor (ex: idade > 18)
• Um bit extra pode ser incluído para tornar o tamanho do genoma variável
– Classe definida pela maioria de exemplos que obedecem a regra
Sexo = Masculino Salário = Alto Idade > 18
Sexo = Masculino 1 Salário = Alto 0 Idade > 18 1
![Page 31: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/31.jpg)
Exemplo de representação - GP
• Utilizando GP
– Regras de decisão
Idade >= 25
Sexo = F
And
Or
Casado= Sim
Se ((idade >= 25) E (sexo = feminino) ) OU (casado = sim) então Classe mais frequente nos dados
![Page 32: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/32.jpg)
Exemplo de representação - GP
• Utilizando GP• Funções matemáticas (para bases apenas com
atributos numéricos e classes binárias)
• Classe determinada aplicando um limiar sobre o resultado retornado pelo indivíduo– Ex: Todos exemplos com valor > 0.5 pertencem a classe 1
valor < 0.5 são classe 2
Tamanho 4
*
+
Largura
![Page 33: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/33.jpg)
Tipos de Representação
• Baseada em aplicação
– Classificação de documentos. Atributos binários
![Page 34: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/34.jpg)
34
Exemplo de Representação
• Vetor binário representando termos quedevem estar presentes ou ausentes nosdocumentos representados por aquela classe
• A classe de um exemplo e é determinanda de acordo com a expressão abaixo:
![Page 35: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/35.jpg)
Inicialização não-aleatória da população
• Para classificação, a inicialização aleatório não faz muito sentido. Por que?
• Gerar indivíduos representando dados que não aparecem na base é um desperdício de memória e tempo de avaliação de fitness
• Inicializa-se indivíduos a partir de exemplos presentes no conjunto de treinamento
![Page 36: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/36.jpg)
Operadores específicos
• Existem 2 operadores específicos para o caso de indução de regras
– Especialização
• Adiciona uma (ou mais) condição a regra ou altera valor de atributo numérico
– Generalização
• Remove uma (ou mais) condição da regra
Sexo = Masculino Salário = Alto Idade > 40
Sexo = Masculino Salário = Alto Idade > 18 Graduado = Sim
Sexo = Masculino Idade > 18
![Page 37: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/37.jpg)
AGP
Active Learning Genetic Programming
CEC 2010
![Page 38: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/38.jpg)
Contexto
• A maioria dos algoritmos seguem umaabordagem supervisionada– Todos os exemplos de treinamento são rotulados
• Em alguns aplicações, obter dados rotulados é uma tarefa muito cara– Deduplicação de dados, análise de sentimentos, etc
• Abordagem alternativa: apredizado semi-supervisionado– Combina dados rotulados e não rotulados
– Pode ser feito através de aprendizado ativo
![Page 39: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/39.jpg)
Aprenzizado Supervisionado
![Page 40: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/40.jpg)
Aprendizado Ativo
![Page 41: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/41.jpg)
Aprendizado Ativo
• Técnica para amostragem de dados– Seleciona os exemplos mais informativos
– Em aprendizado ativo, eles serão rotulados por um oráculo, que pode ser o usuário
• Desafio: como escolher esses exemplos?
• 3 técnica mais utilizadas:– Escolher os exemplos que o classificador tem menos
certeza na classificação
– Escolher os exemplos que causam a maior redução de erro
– Consultar um comitê de classificadores
![Page 42: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/42.jpg)
Aprendizado Ativo e GP
• Já foram utilizados juntos no contexto de aprendizado supervisionado para reduzir o tempo de treinamento -> tempo necessáriopara calcular a fitness
– Seleção utilizando histórico
– Seleção dinâmica
• Proposta: utilizar GP e aprendizado ativo para reduzir o custo de rotulação de dados
![Page 43: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/43.jpg)
Deduplicação de dados
• Identificar registros diferentes em uma base de dados que se referem a mesma entidadedo mundo real
• Motivação:
– Repositórios de dados são enormes
– É difícil até para humanos identificarem réplicas se não tiverem informação suficiente disponível
![Page 44: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/44.jpg)
Deduplicação de dados
• Realizada em 3 etapas:
– Gera os pares de registro
– Calcula a similaridade entre os pares
– Classifica os pares como réplicas ou não, de acordo com sua similaridade ou um modeloaprendido a partir dos dados
![Page 45: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/45.jpg)
GP para Aprendizado Ativo
• Objetivo: programação genética irá explorarcombinações de funções de similaridade entre oscampos do registro, e aprender um modelo
• Exemplo
Nome Idade Cidade Sexo
R1 João Silva 34 Belo Horizonte Masculino
R2 J. Silva 34 BH Masculino
Dist 0.01 0 0.1 0
R1 e R2 se referem a mesma pessoa?
![Page 46: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/46.jpg)
Indivíduo
• Cada indivíduo está associado a um peso wf
• Cada registro está associado a um peso wp
![Page 47: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/47.jpg)
AGP
![Page 48: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/48.jpg)
Avaliação da fitness
• Realizada depois do treinamento
– Na primeira geração, apenas pares rotulados são considerados
– A partir da segunda geração, todos os pares são considerados
• A classificação do comitê ou do usuário (se o comitê não chega a um acordo) é considerada correta
• Comitês e outros indivíduos da população são avaliados em momentos diferentes
![Page 49: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/49.jpg)
Avaliação da fitness
F1 F2
Dado um conjunto de indivíduos que não estão presentes no comitê:
F1 F2
• Se classificado corretamente como réplica, ganha um ponto• Se classificado incorretamente como não-réplica, perde um ponto
![Page 50: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/50.jpg)
Votação do Comitê
Conjunto de rotulados
![Page 51: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/51.jpg)
Aprendizado por reforço
• Boas funções são aquelas que identificam réplicas, e réplicas tendem a ser corretamente identificadas por boas funções
• Wf é atualizado de acordo com o Alg. 2
![Page 52: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/52.jpg)
Experiments
• 3 bases de dados
![Page 53: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/53.jpg)
AGP versus GP
• Avaliação utilizando F-measure e o número de pares necessários para aprender
![Page 54: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/54.jpg)
AGP versus GP
![Page 55: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/55.jpg)
AGP versus Alias
Base Restaurant
• AGP aprende mais rápido• AGP se torna estável mais rápido
![Page 56: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/56.jpg)
Estimando aCredibilidade de Dados
![Page 57: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/57.jpg)
Credibilidade de Dados
• O que faz um usuário confiar mais em um website A ou B?
• Pesquisa na área de credibilidade– Medidas objetivas e subjetivas para determinar o
que faz um usuário acreditar ou não em qualquer tipo de informação
• Vasta gama de aplicação– Sistemas e serviços Web
– Métodos de mineração de dados
![Page 58: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/58.jpg)
Contexto
• Algoritmos de classificação padrão normalmente assumem que todos os dados devem contribuir igualmente para o modelo sendo criado
– Exceção: KNN (k vizinhos mais próximos)
![Page 59: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/59.jpg)
Contexto
• Objetivo: fazer com que a contribuição de um exemplo para o modelo de classificação seja dependente de uma medida que chamamos de credibilidade, que pode ser estimada através de uma função de credibilidade
![Page 60: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/60.jpg)
Credibilidade
• A credibilidade de uma entidade reflete o valor que ela agrega a uma tarefa sendo executada.
• Em classificação de documentos, por exemplo, ela reflete:– Termos
– Autores
– Citações
– Local de publicação, etc
X
![Page 61: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/61.jpg)
Fatores de Credibilidade
• Este trabalho foca em 3 fatores:
– Conteúdo
– Autoria
– Citação
• Efeito:
![Page 62: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/62.jpg)
Credibilidade de Dados
• Propomos um algoritmo de programação genética para criar funções de credibilidade
• Cada indivíduo é uma função, representada por uma árvore
• Avaliação
– De acordo com resultados
obtidos na classificação de
dados
![Page 63: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/63.jpg)
Função de Credibilidade
• Depois de criada, a função é incorporada a algoritmos de mineração de dados
• Algoritmos originais são comparados com versões modificadas
• Mostramos que levar em conta a credibilidade melhora o processo de classificação
![Page 64: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/64.jpg)
Resultados Experimentais
• Base de dados da ACM
![Page 65: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/65.jpg)
Resultados Experimentais
![Page 66: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/66.jpg)
Programação Genética para Criação de Algoritmos de Indução de Regras
![Page 67: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/67.jpg)
Como Algoritmoas de Indução de Regras (AIR) são criados?
• Sequential-covering (separar e conquistar)
• Extraindo regras de árvores de decisão
• Algoritmos evolucionários – AG e PG
![Page 68: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/68.jpg)
Sequential Covering
while existirem elementos no conjunto de treinamento
– Aprenda uma regra que cubra parte dos exemplos de treinamento
– Remova os exemplos cobertos pela regra do conjunto de treinamento
end while
![Page 69: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/69.jpg)
Como um AIR aprende regras?
• Baseado em 4 elementos principais
– Linguagem de representação de regras
– Um mecanismo de busca
– Um método de avaliação das regras encontradas
– Métodos de pruning
![Page 70: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/70.jpg)
Mecanismo de busca
• Estratégia de busca
– Geral para específica/ específica para geral/ híbrida
• Método de busca
– Greedy
– Busca em feixe
– Melhor-primeiro
![Page 71: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/71.jpg)
Avaliação das Regras
• 4 tipos de heurísticas
– Baseada no número de examples positivos/ negativos cobertos pela regra (confiança)
– Baseada na complexidade das regras geradas
– Heurísticas de ganho, que comparam a diferença no valor de uma segunda heurística
– Heurísticas com pesos
![Page 72: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/72.jpg)
Pruning
• Evita over-fitting dos dados
• Pruning
– pre-pruning
– pos-pruning
![Page 73: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/73.jpg)
Por que evoluir automaticamente AIR para classificação?
• Existem centenas de algoritmos de indução de regras, e a maioria deles segue uma estrutura básica, modificando apenas alguns elementos dessaestrutura. Difícil escolher qual utilizar
• Algoritmo estaria livre de bias do programador
• Criar algoritmos voltados para bases de dados específicas.
![Page 74: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/74.jpg)
PG e AIR
• PG e PG baseada em gramática já foram utilizadas para criar conjuntos de regras para bases de dados específicas
A1,A2,A3,C0, 0, 1, 11, 1, 0, 1
…. 0, 1, 0, 0
Conjunto deRegras
Algoritmode IR
Conjunto deTreinamento
A1,A2,A3,C0, 0, 1, 11, 1, 0, 1
…. 0, 1, 0, 0
Conjunto deRegras
Algoritmode IR
Conjunto deTreinamento
ProgramaçãoGenética
A1,A2,A3,C0, 0, 1, 11, 1, 0, 1
…. 0, 1, 0, 0
ProgramaçãoGenética
Conjunto deTreinamento
Conjunto deRegras
![Page 75: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/75.jpg)
NãoTerminais
TerminaisPopulaçãoInicial
Seleção
NovaPopulação
Fitness
Não
Reprodução
Crossover
Mutação
pcross
preprod
pmutSim
Retorna melhorsolução
Programação Genética
Critério de Paradasatisfeito?
![Page 76: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/76.jpg)
PG baseado em Gramática
NãoTerminais
TerminaisPopulação
InicialPG Traditional
Não
Terminais
Terminais
Regras de Produção
Símbolo Inicial
Gramática
PopulaçãoInicial
PG baseada emGramática
![Page 77: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/77.jpg)
Método Proposto
• Gramática
– Conjunto de terminais/ não-terminais da PG
• Representação dos indivíduos
• Função de Avaliação (Fitness)
• Adaptação dos operadores de mutação e crossover de acordo com a gramática e com a representação dos indivíduos.
![Page 78: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/78.jpg)
Definição da Gramática
• Gramática inclui– Implementação de várias técnicas de
• Mecanismo de busca• Heurísticas para avaliação de regras• Heurísticas que definem quando parar de refinar
regras• Heurísticas que definem quando parar de produzir
regras• Pre e Pos Pruning
– Elementos anteriormente não utilizados por algoritmos de indução de regras
![Page 79: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/79.jpg)
Definição da Gramática
• Trabalha com o conceito de building blocks• Exemplo:
RefineRule ::= AddCond|RemoveCond.AddCond ::= Add1 | Add2
EvaluateRule ::= confidence | informationGain .
Building Block Add1()
for i = 0 to i < número de atributos
for j = 0 to j < número de valores que Ai assume
Adicione atributo i /valor j a regra atual
![Page 80: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/80.jpg)
Representação dos Indivíduos
• Indivíduos são representados por uma árvore de derivação criada utilizando-se produções da gramática.
![Page 81: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/81.jpg)
Fragamento da Gramática
<Start>::=(<CreateRuleList>|<CreateRuleSet>)
[<PostProcess>].<CreateRuleList>::=<whileLoop>
<RuleListTest>.<whileLoop>::=while <condWhile>
<FindBestRule>endWhile.
<condWhile>::=uncoveredNotEmpty |…...
SelectCandidateRules>::=1CR| 4CR|8CR.
![Page 82: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/82.jpg)
Função de Fitness
Fitness(Indij) = (Accij-DefAccj) / 1- DefAccj, se Accij > DefAccj
(Accij-DefAccj) / DefAccj, cc
![Page 83: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/83.jpg)
T e s t S e t
R u le
M o d e l
In it ia lizeP o p u la tio n
G ra m m a r
G G P In d iv id u a l
In te rfa ce G G P /Ja va
R u le In d u c tio n
A lg o r ith m
R u le M o d e l
F itn e ss
B u ild in g S e t
V a lid a tio n S e t
A ccu ra cy
In d iv id u a ls E va lu a tio n
T o u rn a m e n tS e le c tio n
R e p ro d u c tio n
M u ta tio n
C ro sso ve r
N e w P o p u la tio n
C o m p le te ?
S to p p in g C rite r io n
S a tis fie d ?
R e tu rn B e s t
In d iv id u a l
Y e s
Y e s
N o
N o
p r
p m
p c
B u ild in g S e t
V a lid a tio n S e t
![Page 84: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/84.jpg)
Experimentos
• 2 Conjuntos de parâmetros:
– Programação Genética• Tamanho da população/número de gerações (100/30)
• Taxas de crossover, mutação e reprodução(0.75,0.25,0.05)
– Dados
• 2 conjuntos de experimentos:
- Usando vários data sets
- Usando apenas um data set
![Page 85: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/85.jpg)
Resultados
• Criação de algoritmos de indução de regras inovadores
• Resultados competitivos com os reportados na literatura
• Existem muitos trabalhos futuros a serem feitos
![Page 86: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/86.jpg)
Evolução de ACs personalizados para um tipo de dados
• Já propomos AC genéricos e personalizados para uma base de dados específica
• ACs personalizados para um tipo de dados
– Agrupar bases de dados de acordo com suas características
– Engenharia reversa: através dos resultados do próprio GP procurar agrupar os dados
![Page 87: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/87.jpg)
Evolução de ACs personalizados para um tipo de dados
Resultados esperados
• Desenvolver uma metodologia para comparação e agrupamento de bases de dados
• Algs. de classificação desenvolvidos especialmente para esses grupos de dados
![Page 88: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/88.jpg)
Evolução de outros tipos de ACs
• Atualmente trabalhamos com algoritmos de indução de regras
• Podemos também evoluir outros tipos de algoritmos de classificação
– Redes bayesianas
• Gramática é a melhor forma de representação?
![Page 89: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/89.jpg)
Algoritmos Evolucionários são uma alternativa interessante para resolver problemas de mineração de dados e aprendizado de
máquina
![Page 90: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/90.jpg)
Disciplina de Computação Natural
2º semestre de 2012
www.dcc.ufmg.br/~glpappa/
![Page 91: Algoritmos Bio-inspirados - homepages.dcc.ufmg.brhomepages.dcc.ufmg.br/~glpappa/cverao/CursoVerao-Parte2.pdf · Algoritmo de Classificação Filtro Wrapper. Seleção de Atributos](https://reader034.vdocuments.net/reader034/viewer/2022051202/5a7891ec7f8b9a87198d49de/html5/thumbnails/91.jpg)
Referências
• Livro de Data Mining disponível para download– http://www.dcc.ufmg.br/miningalgorithms/DokuWiki/doku.php
• Gisele L. Pappa e Alex Freitas. Automating the Design of Data Mining Algorithms: An Evolutionary Computation Approach (Natural Computing Series), Springer, 2010
• Freitas, J. ; PAPPA, G. L. ; Gonçalves, Marcos A. ; Veloso, A. ; Moura, EdlenoSilva de ; Silva, Altigran Soares da . Active Learning Genetic Programming for Record Deduplication. In: IEEE Congress on Evolutionary Computation (CEC), 2010
• PALOTTI, J. ; SALLES, T. ; PAPPA, G. L. ; ARCANJO, F. L. ; GONÇALVES, Marcos A. ; MEIRA JR, W. . Estimating the Credibility of Examples in Automatic Document Classification. Journal of Information and Data Management, v. 1, p. 439-454, 2009.