agregação de algoritmos de aprendizado de máquina...
TRANSCRIPT
![Page 1: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/1.jpg)
Professor: Eduardo R. Hruschka
Estagiário PAE: Luiz F. S. Coletta
Agregação de Algoritmos de
Aprendizado de Máquina (AM)
![Page 2: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/2.jpg)
Sumário
1. Motivação
2. Bagging
3. Random Forest
4. Boosting
5. C3E
![Page 3: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/3.jpg)
Métodos de Aprendizado de Máquina (AM)
◦Classificadores
Árvore de decisão, rede neural, SVM, etc.
◦Agrupadores
EM, K-Means, Bisecting K-Means, etc.
3
![Page 4: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/4.jpg)
Aplicações
◦ Análise de sentimentos;
◦ Churn prediction (prever cancelamento de serviços);
◦ Detecção de comportamento em vídeos
Anormalidades, monitoramento de idosos, pacientes, etc.
◦ Identificação de padrões em imagens;
◦ Sensoriamento remoto;
◦ Reconhecimento de pessoas (face, íris, etc.).
4
![Page 5: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/5.jpg)
Uso de algoritmos individualmente
◦ Cada modelo assume um conjunto de suposições e,
portanto, está sujeito a um “bias”
Diferentes algoritmos podem convergir para diferentes
soluções podendo falhar sobre determinadas
circunstâncias;
Dados de treinamento podem ser escassos ou oriundos de
uma amostragem deficiente.
5
![Page 6: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/6.jpg)
Forma de melhorar a qualidade dos resultados
◦ Agregação (ensemble) de classificadores
Maior precisão e/ou robustez [Oza & Tumer, 2008].
◦ Agregação de agrupadores (cluster ensembles)
Conciliar diversas partições com o objetivo de obter uma
partição de consenso [Ghosh & Acharya, 2011].
6
Oza, Nikunj C., and Kagan Tumer. "Classifier ensembles: Select real-world applications." Information
Fusion 9.1 (2008): 4-20.
Ghosh, Joydeep, and Ayan Acharya. "Cluster ensembles." Wiley Interdisciplinary Reviews: Data
Mining and Knowledge Discovery 1.4 (2011): 305-315.
![Page 7: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/7.jpg)
Exemplo didático para classificação
◦ Um objeto no conjunto de treinamento pode ser visto
como uma tupla < xi, Ci >, Ci ∈ {C1, C2, ..., Cc};
◦ O problema de inferir a classe de novos objetos
desconhecidos é chamado de classificação;
Árvores de decisão, redes neurais, SVM, K-NN, Naive
Bayes, etc...
7
![Page 8: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/8.jpg)
Dados três classificadores h1, h2 e h3 e um novo objeto
xi a ser classificado:
◦ Se h1, h2 e h3 são idênticos, então quando h1(xi) erra, h2(xi)
e h3(xi) também erram...
◦ Se são diferentes, quando h1(xi) está errado, h2(xi) e h3(xi)
podem estar certos!
Usando-se voto majoritário xi tem a chance de ser corretamente
classificado!
8
![Page 9: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/9.jpg)
Dados três classificadores h1, h2 e h3 e um novo objeto
xi a ser classificado:
◦ Se h1, h2 e h3 são idênticos, então quando h1(xi) erra, h2(xi)
e h3(xi) também erram...
◦ Se são diferentes, quando h1(xi) está errado, h2(xi) e h3(xi)
podem estar certos!
Usando-se voto majoritário xi tem a chance de ser corretamente
classificado!
9
Classificadores base diversificados!!!
![Page 10: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/10.jpg)
Arquitetura ◦ Diferentes espaços de atributos, mesmo classificador
10
Conjunto de
Atributos 2
Classificador m1
Conjunto de
Atributos 3
Conjunto de
Atributos 1
H{x} Agregação
![Page 11: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/11.jpg)
Arquitetura ◦ Diferentes conjuntos de treinamento, mesmo classificador
11
Conjunto de
Treinamento 2
Classificador m1
Conjunto de
Treinamento 3
Conjunto de
Treinamento 1
H{x} Agregação
![Page 12: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/12.jpg)
Arquitetura ◦ Diferentes conjuntos de treinamento, mesmo classificador
12
Conjunto de
Treinamento 2
Classificador m1
Conjunto de
Treinamento 3
Conjunto de
Treinamento 1
H{x} Agregação
Bagging, Random Forests, Boosting...
![Page 13: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/13.jpg)
Cada classificador é treinado usando-se uma
distribuição específica dos dados
◦ Amostragem baseada em Bootstrap:
Mesmo tamanho do conjunto original;
Com reposição a partir de distribuição uniforme:
Podem haver instâncias repetidas, outras podem não aparecer;
63% dos dados originais aproximadamente!
13
Breiman, Leo. "Bagging predictors." Machine learning 24.2 (1996): 123-140.
![Page 14: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/14.jpg)
Uso de classificadores instáveis
◦ Pequenas mudanças no conjunto de treinamento levam a
grandes mudanças no resultado de classificação
Instáveis: Redes Neurais, Árvores de decisão;
Estável: K-NN.
Naturalmente paralelizável;
Agregação por voto majoritário;
Robusto a ruídos nos dados.
14
![Page 15: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/15.jpg)
Extensão de Bagging
◦ Amostragem baseada em bootstrap
◦ Cada Árvore de Decisão:
É construída a partir de amostragem das instâncias do
conjunto de treinamento e também de um subconjunto de
atributos!
◦ Tem tido grande destaque na área de ensembles!
15
Breiman, Leo. "Random forests." Machine learning 45.1 (2001): 5-32.
![Page 16: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/16.jpg)
Classificadores fracos são capazes de se tornarem
classificadores fortes?
Induz sequencialmente um conjunto de classificadores
◦ O classificador corrente depende dos anteriores tendo maior
foco no erro destes últimos
Distribuição do conjunto de treinamento é modificada
Instâncias incorretamente preditas anteriormente são escolhidas com maior
frequência / ponderadas com maior peso.
16 Schapire, Robert E. "The strength of weak learnability." Machine learning 5.2 (1990): 197-227.
![Page 17: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/17.jpg)
Classificadores fracos são capazes de se tornarem
classificadores fortes?
Induz sequencialmente um conjunto de classificadores
◦ O classificador corrente depende dos anteriores tendo maior
foco no erro destes últimos
Distribuição do conjunto de treinamento é modificada
Instâncias incorretamente preditas anteriormente são escolhidas com maior
frequência / ponderadas com maior peso.
17
Computação distribuída?
Schapire, Robert E. "The strength of weak learnability." Machine learning 5.2 (1990): 197-227.
![Page 18: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/18.jpg)
Exemplo didático – passo 1
18
De “A Tutorial on Boosting” de Y. Freud & R. Schapire
![Page 19: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/19.jpg)
Exemplo didático – passo 2
19
![Page 20: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/20.jpg)
Exemplo didático – passo 3
20
![Page 21: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/21.jpg)
Exemplo didático – hipótese final
◦ Análises empíricas sugerem sensibilidade a ruídos!
21
![Page 22: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/22.jpg)
Arquitetura ◦ Mesmo conjunto de treinamento, diferentes classificadores
22
Conjunto de
Treinamento
Classificador m1
H{x} Agregação Classificador m2
Classificador m3
![Page 23: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/23.jpg)
Modelos não supervisionados podem fornecer
uma série de restrições complementares para
classificar novos dados
◦ Premissa subjacente: objetos similares no
conjunto-alvo provavelmente compartilham do
mesmo rótulo de classe.
23
![Page 24: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/24.jpg)
Benefícios
◦ Aumentar a capacidade de generalização e a robustez
(especialmente em aprendizado semi-supervisionado);
◦ Auxiliar na identificação de mudanças de conceito e
novas classes não previstas.
24
![Page 25: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/25.jpg)
25
Acharya, A., Hruschka, E. R., Ghosh, J., and Acharyya, S. (2011). C3e: A framework for combining
ensembles of classifiers and clusterers. In Multiple Classifier Systems, pages 269-278. LNCS Vol. 6713,
Springer.
![Page 26: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/26.jpg)
26
Acharya, A., Hruschka, E. R., Ghosh, J., and Acharyya, S. (2011). C3e: A framework for combining
ensembles of classifiers and clusterers. In Multiple Classifier Systems, pages 269-278. LNCS Vol. 6713,
Springer.
Vetor c-dimensional que captura a
distribuição de probabilidades de classes
![Page 27: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/27.jpg)
27
Acharya, A., Hruschka, E. R., Ghosh, J., and Acharyya, S. (2011). C3e: A framework for combining
ensembles of classifiers and clusterers. In Multiple Classifier Systems, pages 269-278. LNCS Vol. 6713,
Springer.
Média de matrizes binárias nas
quais o elemento sij é igual a 1 se
os objetos i e j estão no mesmo
grupo e igual a 0 caso contrário
Vetor c-dimensional que captura a
distribuição de probabilidades de classes
![Page 28: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/28.jpg)
Problema de otimização (minimizar função J)
◦ 1º termo: captura as dissimilaridades entre as distribuições de probabilidades de
classes iniciais (πi) e finais (yi);
◦ 2º termo: captura a dissimilaridade de todos os possíveis pares (yi, yj) ponderados
por sij ∈ S;
◦ α: controla a importância relativa entre agrupadores e classificadores;
◦ Processo iterativo de computação da seguinte equação:
28
![Page 29: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/29.jpg)
Resultados de classificação
29
Taxa de classificação correta média (%) – desvio entre parênteses
Problema NB + AD C3E
Wisconsin (câncer de mama) 95,60 (2,8) 96,48 (1,2)
Yeast (localização de proteínas) 95,61 (3,2) 97,56 (1,7)
Spam (detecção de spams) 81,20 (1,2) 92,81 (1,1)
Wine Red (qualidade de vinhos) 55,91 (4,5) 57,48 (9,1)
Blood (doação de sangue) 75,80 (1,9) 76,60 (1,7)
Seeds (classificação de trigo) 88,57 (7,4) 91,90 (3,2)
COLETTA, L. F. S. ; HRUSCHKA, E. R. ; ACHARYA, A. ; GHOSH, J. . Towards the Use of Metaheuristics
for Optimizing the Combination of Classifier and Cluster Ensembles. Proceddings of the 1st BRICS
Countries Congress on Computational Intelligence (BRICS-CCI), 2013. p. 1-6.
![Page 30: Agregação de Algoritmos de Aprendizado de Máquina (AM)wiki.icmc.usp.br/images/7/74/Ensembles_TAIA_2013.pdf · Conjunto de Atributos 1 Agregação H{x} ... Aumentar a capacidade](https://reader033.vdocuments.site/reader033/viewer/2022052713/5be1cd3b09d3f284098b8819/html5/thumbnails/30.jpg)
Resultados de classificação
30
50
55
60
65
70
75
80
85
90
95
100
Wisconsin Yeast Spam Wine Red Blood Seeds
NB + AD
C3E
Acu
rácia
mé
dia
Base da dados