Buscar

Continue navegando


Prévia do material em texto

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE
CENTRO DE CIÊNCIAS EXATAS E DA TERRA
DEPARTAMENTO DE INFORMÁTICA E MATEMÁTICA APLICADA
PROGRAMA DE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃO
Investigando a Combinação de Técnicas de
Aprendizado Semissupervisionado e
Classi�cação Hierárquica Multirrótulo
Araken de Medeiros Santos
Natal - RN
Maio de 2012
Araken de Medeiros Santos
Investigando a Combinação de Técnicas de
Aprendizado Semissupervisionado e
Classi�cação Hierárquica Multirrótulo
Tese de doutorado submetida ao Programa
de Pós-Graduação em Sistemas e Computa-
ção do Departamento de Informática e Mate-
mática Aplicada da Universidade Federal do
Rio Grande do Norte como parte dos requi-
sitos para a obtenção do grau de Doutor em
Ciência da Computação.
Orientador:
Profa. Dra. Anne Magaly de Paula Canuto
Natal - RN
Maio de 2012
 
ii
À minha família, por todo apoio, amor e com-
preensão.
iii
Agradecimentos
A Deus: por estar sempre presente em minha vida, iluminando o meu caminho;
À minha mãe: por dedicar sua vida às realizações pessoais e pro�ssionais de seus �lhos.
Nada em minha vida seria possível sem o seu apoio;
À minha esposa: pela compreensão e apoio nos momentos de ausência;
Ao meu pai e minhas irmãs: meus agradecimentos por tudo que �zeram para a con-
cretização deste sonho. Saibam que vocês estarão sempre em meu coração;
À minha orientadora Anne Magály: obrigado pela paciência, compreensão, colaboração
e amizade;
Aos amigos, porque os são;
En�m, a todos que, mesmo que minimamente, vieram a contribuir para meu êxito.
iv
"A mente que se abre a uma nova idéia, jamais voltará ao seu tamanho original."
Albert Einstein
v
Resumo
A classi�cação de dados é uma tarefa com alta aplicabilidade em uma grande quanti-
dade de domínios. A maioria dos métodos para tratar problemas de classi�cação encontra-
dos na literatura, tratam problemas tradicionais ou unirrótulo. Nos últimos anos vem sendo
identi�cada uma série de tarefas de classi�cação nas quais os exemplos podem ser rotulados
a mais de uma classe simultaneamente (classi�cação multirrótulo). Adicionalmente, tais
classes podem estar hierarquicamente organizadas (classi�cação hierárquica e classi�cação
hierárquica multirrótulo). Por outro lado, tem-se estudado também uma nova categoria de
aprendizado, chamada de aprendizado semissupervisionado, que combina dados rotulados
(aprendizado supervisionado) e dados não-rotulados (aprendizado não-supervisionado), du-
rante a fase de treinamento, reduzindo, assim, a necessidade de uma grande quantidade de
dados rotulados quando somente um pequeno conjunto de exemplos rotulados está disponí-
vel. Desse modo, uma vez que tanto as técnicas de classi�cação multirrótulo e hierárquica
multirrótulo quanto o aprendizado semissupervisionado vem apresentando resultados fa-
voráveis à sua utilização, neste trabalho é proposta e utilizada a aplicação de aprendizado
semissupervisionado em tarefas de classi�cação hierárquica multirrótulo, de modo a se
atender e�cientemente as principais necessidades das duas áreas. Uma análise experimen-
tal dos métodos propostos veri�cou que a utilização do aprendizado semissupervisionado
em métodos de classi�cação hierárquica multirrótulo apresentou resultados satisfatórios,
uma vez que as duas abordagens apresentaram resultados estatisticamente semelhantes
Palavras-chave: classi�cação multirrótulo; classi�cação hierárquica multirrótulo; apren-
dizado semissupervisionado.
vi
Abstract
Data classi�cation is a task with high applicability in a lot of areas. Most methods for
treating classi�cation problems found in the literature dealing with single-label or traditio-
nal problems. In recent years has been identi�ed a series of classi�cation tasks in which the
samples can be labeled at more than one class simultaneously (multi-label classi�cation).
Additionally, these classes can be hierarchically organized (hierarchical classi�cation and
hierarchical multi-label classi�cation). On the other hand, we have also studied a new
category of learning, called semi-supervised learning, combining labeled data (supervised
learning) and non-labeled data (unsupervised learning) during the training phase, thus
reducing the need for a large amount of labeled data when only a small set of labeled sam-
ples is available. Thus, since both the techniques of multi-label and hierarchical multi-label
classi�cation as semi-supervised learning has shown favorable results with its use, this work
is proposed and used to apply semi-supervised learning in hierarchical multi-label classi-
�cation tasks, so e�ciently take advantage of the main advantages of the two areas. An
experimental analysis of the proposed methods found that the use of semi-supervised le-
arning in hierarchical multi-label methods presented satisfactory results, since the two
approaches were statistically similar results
Keywords: multi-label classi�cation; hierarchical multi-label classi�cation, semi-supervised
learning.
vii
Sumário
Lista de Figuras xiv
Lista de Tabelas xviii
Lista de Abreviaturas e Siglas xxi
1 Introdução 1
1.1 Motivação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Principais Contribuições . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4 Estrutura do Trabalho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2 Aprendizado de Máquina 8
2.1 Conceitos Básicos de Aprendizado de Máquina . . . . . . . . . . . . . . . . 9
2.2 Tipos de Aprendizado de Máquina . . . . . . . . . . . . . . . . . . . . . . 11
2.2.1 Aprendizado Supervisionado . . . . . . . . . . . . . . . . . . . . . . 11
2.2.2 Aprendizado Não-Supervisionado . . . . . . . . . . . . . . . . . . . 13
2.2.3 Aprendizado Semissupervisionado . . . . . . . . . . . . . . . . . . . 14
2.3 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3 Classi�cação de Dados 18
Sumário viii
3.1 Classi�cação de Dados Multirrótulo . . . . . . . . . . . . . . . . . . . . . . 20
3.1.1 Transformação do Problema . . . . . . . . . . . . . . . . . . . . . . 23
3.1.1.1 Relevância Binária . . . . . . . . . . . . . . . . . . . . . . 24
3.1.1.2 Label Powerset . . . . . . . . . . . . . . . . . . . . . . . . 24
3.1.1.3 Random K-labelsets . . . . . . . . . . . . . . . . . . . . . 27
3.1.1.4 Técnicas Baseadas em Ranking . . . . . . . . . . . . . . . 28
3.1.2 Adaptação de Algoritmo . . . . . . . . . . . . . . . . . . . . . . . . 29
3.1.2.1 Árvore de Decisão . . . . . . . . . . . . . . . . . . . . . . 30
3.1.2.2 Redes Neurais Arti�ciais . . . . . . . . . . . . . . . . . . . 30
3.1.2.3 Máquinas de Vetores Suporte . . . . . . . . . . . . . . . . 31
3.1.2.4 k Vizinhos Mais Próximos . . . . . . . . . . . . . . . . . . 32
3.1.2.5 Algoritmos de Agrupamento . . . . . . . . . . . . . . . . . 33
3.1.2.6 Métodos Probabilísticos . . . . . . . . . . . . . . . . . . . 34
3.1.2.7 Métodos Associativos . . . . . . . . . . . . . . . . . . . . 34
3.2 Classi�cação de Dados Hierárquico . . . . . . . . . . . . . . . . . . . . . . 35
3.2.1 Abordagens de Classi�cação Para Problemas Hierárquicos . . . . . 39
3.2.1.1 Transformação do Problema Hierárquico em um Problema
de Classi�cação Plana . . . . . . . . . . . . . . . . . . . . 39
3.2.1.2 Predição Hierárquica com Algoritmos de Classi�cação Plana 41
3.2.1.3 Classi�cação Hierárquica Top-Down . . . . . . . . . . . . 42
3.2.1.4 Classi�cação Hierárquica Big-Bang . . . . . . . . . . . . . 44
3.3 Classi�cação de Dados Hierárquica Multirrótulo . . . . . . . . . . . . . . . 45
3.4 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Sumário ix
4 Trabalhos Relacionados 53
4.1 Classi�cação Hierárquica Multirrótulo . . . . . . . . . . . . . . . . . . . . . 55
4.1.1 Aprendizado Semissupervisionado . . . . . . . . . . . . . . . . . . . 58
4.2 Considerações Finais . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . 59
5 Métodos Propostos 60
5.1 Classi�cação Multirrótulo Semissupervisionada . . . . . . . . . . . . . . . . 61
5.1.1 SSBR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
5.1.2 SSLP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.1.3 SSRAkEL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
5.1.4 SSRAkELd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
5.2 Classi�cação Hierárquica Multirrótulo Semissupervisionada . . . . . . . . . 70
5.2.1 HMC-SSBR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
5.2.2 HMC-SSLP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.2.3 HMC-SSRAkEL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.2.4 HMC-SSRAkELd . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
5.3 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
6 Metodologia dos Experimentos 76
6.1 Bases de Dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
6.1.1 Bases de Dados Multirrótulo . . . . . . . . . . . . . . . . . . . . . . 77
6.1.1.1 Emotions . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
6.1.1.2 Genbase . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
6.1.1.3 Medical . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Sumário x
6.1.1.4 Scene . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
6.1.1.5 Yeast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
6.1.2 Bases de Dados Hierárquica Multirrótulo . . . . . . . . . . . . . . . 78
6.1.2.1 Cellcycle . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
6.1.2.2 Church . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
6.1.2.3 Derisi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
6.1.2.4 Eisen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
6.1.2.5 Pheno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
6.2 Métodos Utilizados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
6.2.1 Métodos de Classi�cação Multirrótulo . . . . . . . . . . . . . . . . . 81
6.2.2 Métodos de Classi�cação Hierárquica Multirrótulo . . . . . . . . . . 81
6.3 Métricas de Avaliação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
6.3.1 Métricas Baseadas em Bipartição . . . . . . . . . . . . . . . . . . . 83
6.3.1.1 Hamming Loss . . . . . . . . . . . . . . . . . . . . . . . . 83
6.3.1.2 Subset Accuracy . . . . . . . . . . . . . . . . . . . . . . . 84
6.3.1.3 Precision . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
6.3.1.4 Recall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
6.3.1.5 F-Measure . . . . . . . . . . . . . . . . . . . . . . . . . . 84
6.3.1.6 Accuracy . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
6.3.2 Métricas Baseadas em Ranking . . . . . . . . . . . . . . . . . . . . 85
6.3.2.1 One-Error . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
6.3.2.2 Average Precision . . . . . . . . . . . . . . . . . . . . . . 86
6.3.2.3 Is-Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Sumário xi
6.3.2.4 Error Set Size . . . . . . . . . . . . . . . . . . . . . . . . 86
6.3.2.5 Coverage . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
6.3.2.6 Ranking Loss . . . . . . . . . . . . . . . . . . . . . . . . . 86
6.3.3 Hierarquical Loss . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
6.4 Con�guração dos Experimentos . . . . . . . . . . . . . . . . . . . . . . . . 87
6.5 Testes Estatísticos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
7 Resultados Experimentais: Métodos de Classi�cação Multirrótulo 90
7.1 Métodos Multirrótulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
7.1.1 Fator de Con�dência . . . . . . . . . . . . . . . . . . . . . . . . . . 92
7.1.2 Número de Classi�cadores . . . . . . . . . . . . . . . . . . . . . . . 97
7.1.3 Percentual de Rotulados . . . . . . . . . . . . . . . . . . . . . . . . 100
7.1.4 Percentual de Não-Rotulados . . . . . . . . . . . . . . . . . . . . . 104
7.1.5 Análise dos Resultados . . . . . . . . . . . . . . . . . . . . . . . . . 107
7.1.5.1 Métodos baseados no BR . . . . . . . . . . . . . . . . . . 107
7.1.5.2 Métodos baseados no LP . . . . . . . . . . . . . . . . . . . 108
7.1.5.3 Métodos baseados no RAkEL . . . . . . . . . . . . . . . . 112
7.1.5.4 Métodos baseados no RAkELd . . . . . . . . . . . . . . . 114
7.1.5.5 Abordagem Supervisionada versus Abordagem Semissuper-
visionada . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
7.2 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
8 Resultados Experimentais: Métodos de Classi�cação Hierárquica Mul-
tirrótulo 120
8.1 Métodos Hierárquicos Multirrótulo: Primeiro Nível da Hierarquia . . . . . 121
Sumário xii
8.1.1 Fator de Con�dencia . . . . . . . . . . . . . . . . . . . . . . . . . . 122
8.1.2 Número de Classi�cadores . . . . . . . . . . . . . . . . . . . . . . . 127
8.1.3 Percentual de Rotulados . . . . . . . . . . . . . . . . . . . . . . . . 127
8.1.4 Percentual de Não-Rotulados . . . . . . . . . . . . . . . . . . . . . 132
8.1.5 Análise dos Resultados . . . . . . . . . . . . . . . . . . . . . . . . . 135
8.1.5.1 Métodos baseados no BR . . . . . . . . . . . . . . . . . . 135
8.1.5.2 Métodos baseados no LP . . . . . . . . . . . . . . . . . . . 136
8.1.5.3 Métodos baseados no RAkEL . . . . . . . . . . . . . . . . 140
8.1.5.4 Métodos baseados no RAkELd . . . . . . . . . . . . . . . 142
8.1.5.5 Abordagem Supervisionada versus Abordagem Semissuper-
visionada . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
8.2 Métodos Hierárquicos Multirrótulo: Segundo Nível da Hierarquia . . . . . 146
8.2.1 Fator de Con�dencia . . . . . . . . . . . . . . . . . . . . . . . . . . 147
8.2.2 Número de Classi�cadores . . . . . . . . . . . . . . . . . . . . . . . 151
8.2.3 Percentual de Rotulados . . . . . . . . . . . . . . . . . . . . . . . . 153
8.2.4 Percentual de Não-Rotulados . . . . . . . . . . . . . . . . . . . . . 157
8.2.5 Análise dos Resultados . . . . . . . . . . . . . . . . . . . . . . . . . 159
8.2.5.1 Métodos baseados no BR . . . . . . . . . . . . . . . . . . 160
8.2.5.2 Métodos baseados no LP . . . . . . . . . . . . . . . . . . . 162
8.2.5.3 Métodos baseados no RAkEL . . . . . . . . . . . . . . . . 164
8.2.5.4 Métodos baseados no RAkELd . . . . . . . . . . . . . . . 166
8.2.5.5 Abordagem Supervisionada versus Abordagem Semissuper-
visionada . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
8.3 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Sumário xiii
9 Conclusão 173
9.1 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
Referências 177
xiv
Lista de Figuras
1.1 Caracterização das Aplicações de Aprendizado de Máquina. . . . . . . . . . 2
2.1 Estrutura das tarefas de aprendizado de máquina . . . . . . . . . . . . . . 12
3.1 (a) Problema de classi�cação tradicional ou unirrótulo. (b) Problema de
classi�cação multirótulo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2 Processo utilizado pelo BR. . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.3 Processo utilizado pelo LP. . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.4 Processo utilizado pelo RAkEL. . . . . . . . . . . . . . . . . . . . . . . . . 27
3.5 Processo utilizado pelo RAkELd. . . . . . . . . . . . . . . . . . . . . . . . 28
3.6 Classi�cação Plana (FREITAS; CARVALHO, 2007). . . . . . . . . . . . . . . . 36
3.7 Classi�cação Hierárquica (FREITAS; CARVALHO, 2007). . . . . . . . . . . . 36
3.8 Exemplo de uma hierarquia de classes especi�cada como uma Árvore (FREI-
TAS; CARVALHO, 2007). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.9 Exemplo de uma hierarquia de classes especi�cada como um Grafo AcíclicoDirecionado (DAG) (FREITAS; CARVALHO, 2007). . . . . . . . . . . . . . . 38
3.10 Abordagens para resolução de problemas hierárquicos: (a) Exemplo de uma
hierarquia de classes; (b)Abordagem 1 - Transformação de um Problema
de Classi�cação Hierárquica em um Problema de Classi�cação Plana; (c)
Abordagem 2 - Predição Hierárquica de Classes utilizando Algoritmos de
Classi�cação Plana; (d) Abordagem 3 - Classi�cação Hierárquica Top-Down;
(e) Abordagem 4 - Classi�cação Hierárquica Big-Bang (COSTA, 2008). . . . 40
Lista de Figuras xv
3.11 Hierarquia de classes de um problema hierárquico multirrótulo estruturado
como uma árvore (CERRI; CARVALHO, 2009). . . . . . . . . . . . . . . . . . 47
3.12 Predições gerando uma subárvore (CERRI; CARVALHO, 2009). . . . . . . . . 47
7.1 Métodos de Classi�cação Multirrótulo Semissupervisionada sem fator de
con�dência e com fator de con�dência. . . . . . . . . . . . . . . . . . . . . 94
7.2 Métodos de Classi�cação Multirrótulo Semissupervisionada por fator de con-
�dência: (a) Por base de dados utilizada; (b) Soma de todas as bases de dados. 94
7.3 Ranking dos Métodos de Classi�cação Multirrótulo Semissupervisionada por
fator de con�dência. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
7.4 Métodos de Classi�cação Multirrótulo Semissupervisionada por número de
classi�cadores: (a) Por base de dados utilizada; (b) Soma de todas as bases
de dados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
7.5 Métodos de Classi�cação Multirrótulo Semissupervisionada por percentual
inicial de exemplos rotulados: (a) Por base de dados utilizada; (b) Soma de
todas as bases de dados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
7.6 Ranking dos Métodos de Classi�cação Multirrótulo Semissupervisionada por
percentual inicial de exemplos rotulados. . . . . . . . . . . . . . . . . . . . 102
7.7 Métodos de Classi�cação Multirrótulo Semissupervisionada por percentual
de exemplos não-rotulados utilizados a cada iteração: (a) Por base de dados
utilizada; (b) Soma de todas as bases de dados. . . . . . . . . . . . . . . . 106
7.8 Ranking dos Métodos de Classi�cação Multirrótulo Semissupervisionada por
Percentual de Exemplos Não Rotulados Utilizados a cada iteração. . . . . . 106
7.9 Métodos de Classi�cação Multirrótulo Supervisionada e Semissupervisionada.116
8.1 Métodos de Classi�cação Hierárquica Multirrótulo Semissupervisionada sem
fator de con�dência e com fator de con�dência no primeiro nível da hierarquia.124
Lista de Figuras xvi
8.2 Métodos de Classi�cação Hierárquica Multirrótulo Semissupervisionada por
fator de con�dência no primeiro nível da hierarquia: (a) Por base de dados
utilizada; (b) Média de todas as bases de dados. . . . . . . . . . . . . . . . 126
8.3 Ranking dos Métodos de Classi�cação Hierárquica Multirrótulo Semissuper-
visionada por fator de con�dência no primeiro nível da hierarquia. . . . . . 126
8.4 Métodos de Classi�cação Hierárquica Multirrótulo Semissupervisionada por
número de classi�cadores no primeiro nível da hierarquia: (a) Por base de
dados utilizada; (b) Média de todas as bases de dados. . . . . . . . . . . . 129
8.5 Métodos de Classi�cação Hierárquica Multirrótulo Semissupervisionada por
percentual inicial de exemplos rotulados no primeiro nível da hierarquia: (a)
Por base de dados utilizada; (b) Média de todas as bases de dados. . . . . 131
8.6 Ranking dos Métodos de Classi�cação Hierárquica Multirrótulo Semissuper-
visionada por percentual inicial de exemplos rotulados no primeiro nível da
hierarquia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
8.7 Métodos de Classi�cação Hierárquica Multirrótulo Semissupervisionada por
percentual de exemplos não-rotulados a cada iteração no primeiro nível da
hierarquia: (a) Por base de dados utilizada; (b) Média de todas as bases de
dados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
8.8 Ranking dos Métodos de Classi�cação Hierárquica Multirrótulo Semissu-
pervisionada por percentual de exemplos não rotulados a cada iteração no
primeiro nível da hierarquia. . . . . . . . . . . . . . . . . . . . . . . . . . . 134
8.9 Métodos de Classi�cação Hierárquica Multirrótulo Supervisionada e Semis-
supervisionada. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
8.10 Métodos de Classi�cação Hierárquica Multirrótulo Semissupervisionada sem
fator de con�dência e com fator de con�dência no segundo nível da hierarquia.147
8.11 Métodos de Classi�cação Hierárquica Multirrótulo Semissupervisionada por
fator de con�dência no segundo nível da hierarquia: (a) Por base de dados
utilizada; (b) Média de todas as bases de dados. . . . . . . . . . . . . . . . 150
Lista de Figuras xvii
8.12 Ranking dos Métodos de Classi�cação Hierárquica Multirrótulo Semissuper-
visionada por fator de con�dência no segundo nível da hierarquia. . . . . . 150
8.13 Métodos de Classi�cação Hierárquica Multirrótulo Semissupervisionada por
número de classi�cadores no segundo nível da hierarquia: (a) Por base de
dados utilizada; (b) Média de todas as bases de dados. . . . . . . . . . . . 153
8.14 Métodos de Classi�cação Hierárquica Multirrótulo Semissupervisionada por
percentual inicial de exemplos rotulados no segundo nível da hierarquia: (a)
Por base de dados utilizada; (b) Média de todas as bases de dados. . . . . 156
8.15 Ranking dos Métodos de Classi�cação Hierárquica Multirrótulo Semissuper-
visionada por percentual inicial de exemplos rotulados no segundo nível da
hierarquia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
8.16 Métodos de Classi�cação Hierárquica Multirrótulo Semissupervisionados por
percentual de exemplos não-rotulados a cada iteração no segundo nível da
hierarquia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
8.17 Ranking dos Métodos de Classi�cação Hierárquica Multirrótulo Semissu-
pervisionados por percentual de exemplos não-rotulados a cada iteração no
segundo nível da hierarquia. . . . . . . . . . . . . . . . . . . . . . . . . . . 159
8.18 Métodos de Classi�cação Hierárquica Multirrótulo Supervisionada e Semis-
supervisionada. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
xviii
Lista de Tabelas
2.1 Conjunto de exemplos no formato atributo-valor. . . . . . . . . . . . . . . 12
3.1 Conjunto de dados para o diagnóstico da saúde de um paciente. . . . . . . 19
3.2 Exemplos de um conjunto de dados multirrótulo. . . . . . . . . . . . . . . 21
3.3 Conjuntos de dados obtidos ao utilizar o método de Relevância Binária nos
dados da Tabela 3.1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.4 Conjunto de dados transformado usando o método Label Powerset. . . . . . 26
3.5 Conjunto de dados transformado usando o método RAkEL. . . . . . . . . . 28
3.6 Conjuntos de dados obtidos ao utilizar o método de RPC nos dados da
Tabela 3.2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
6.1 Resumo das Bases de Dados Multirrótulo utilizadas. . . . . . . . . . . . . . 77
6.2 Resumo das Bases de Dados Hierarquica Multirrótulo utilizadas. . . . . . . 79
7.1 Média dos Métodos de Classi�cação Multirrótulo sem fator de con�dência e
com fator de con�dência . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
7.2 Média dos Métodos de Classi�cação Multirrótulo Semissupervisionada por
fator de con�dência. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
7.3 Média dos Métodos de Classi�cação Multirrótulo Semissupervisionada por
número de classi�cadores. . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
7.4 Média dos Métodos de Classi�cação Multirrótulo Semissupervisionada por
percentual inicial de exemplos rotulados. . . . . . . . . . . . . . . . . . . . 101
7.5 Média dos Métodos de Classi�cação Multirrótulo Semissupervisionada por
percentual de exemplos não-rotulados a cada iteração.. . . . . . . . . . . . 105
Lista de Tabelas xix
7.6 Métodos de Classi�cação Multirrótulo baseados no BR. . . . . . . . . . . . 109
7.7 Métodos de Classi�cação Multirrótulo baseados no LP. . . . . . . . . . . . 111
7.8 Métodos de Classi�cação Multirrótulo baseados no RAkEL. . . . . . . . . 113
7.9 Métodos de Classi�cação Multirrótulo baseados no RAkELd. . . . . . . . . 115
7.10 Média dos Métodos de Classi�cação Multirrótulo Supervisionada e Semis-
supervisionada. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
8.1 Média dos Métodos de Classi�cação Hierárquica Multirrótulo Semissuper-
visionada sem fator de con�dência e com fator de con�dência no primeiro
nível da hierarquia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
8.2 Média dos Métodos de Classi�cação Hierárquica Multirrótulo Semissupervi-
sionada por fator de con�dência no primeiro nível da hierarquia. . . . . . . 125
8.3 Média dos Métodos de Classi�cação Hierárquica Multirrótulo Semissupervi-
sionada por número de classi�cadores no primeiro nível da hierarquia. . . . 128
8.4 Média dos Métodos de Classi�cação Hierárquica Multirrótulo Semissuper-
visionada por percentual inicial de exemplos rotulados no primeiro nível da
hierarquia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
8.5 Média dos Métodos de Classi�cação Hierárquica Multirrótulo Semissuper-
visionada por percentual de exemplos não-rotulados a cada iteração no pri-
meiro nível da hierarquia. . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
8.6 Métodos de Classi�cação Hierárquica Multirrótulo baseados no BR no pri-
meiro nível da hierarquia. . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
8.7 Métodos de Classi�cação Hierárquica Multirrótulo baseados no LP no pri-
meiro nível da hierarquia. . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
8.8 Métodos de Classi�cação Hierárquica Multirrótulo baseados no RAkEL no
primeiro nível da hierarquia. . . . . . . . . . . . . . . . . . . . . . . . . . . 141
8.9 Métodos de Classi�cação Hierárquica Multirrótulo baseados no RAkELd no
primeiro nível da hierarquia. . . . . . . . . . . . . . . . . . . . . . . . . . . 144
Lista de Tabelas xx
8.10 Média dos Métodos de Classi�cação Hierárquica Multirrótulo Supervisio-
nada e Semissupervisionada no primeiro nível da hierarquia. . . . . . . . . 145
8.11 Média dos Métodos de Classi�cação Hierárquica Multirrótulo Semissuper-
visionada sem fator de con�dência e com fator de con�dência no segundo
nível da hierarquia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
8.12 Média dos Métodos de Classi�cação Hierárquica Multirrótulo Semissupervi-
sionada por fator de con�dência no segundo nível da hierarquia. . . . . . . 149
8.13 Média dos Métodos de Classi�cação Hierárquica Multirrótulo Semissupervi-
sionada por número de classi�cadores no segundo nível da hierarquia. . . . 152
8.14 Média dos Métodos de Classi�cação Hierárquica Multirrótulo Semissuper-
visionada por percentual inicial de exemplos rotulados no segundo nível da
hierarquia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
8.15 Média dos Métodos de Classi�cação Hierárquica Multirrótulo Semissuper-
visionada por percentual de exemplos não-rotulados a cada iteração no se-
gundo nível da hierarquia. . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
8.16 Métodos de Classi�cação Hierárquica Multirrótulo baseados no BR no se-
gundo nível da hierarquia. . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
8.17 Métodos de Classi�cação Hierárquica Multirrótulo baseados no LP no se-
gundo nível da hierarquia. . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
8.18 Métodos de Classi�cação Hierárquica Multirrótulo baseados no RAkEL no
segundo nível da hierarquia. . . . . . . . . . . . . . . . . . . . . . . . . . . 165
8.19 Métodos de Classi�cação Hierárquica Multirrótulo baseados no RAkELd no
segundo nível da hierarquia. . . . . . . . . . . . . . . . . . . . . . . . . . . 167
8.20 Média dos Métodos de Classi�cação Hierárquica Multirrótulo Supervisio-
nada e Semissupervisionada no segundo nível da hierarquia. . . . . . . . . 170
xxi
Lista de Abreviaturas e Siglas
AD � Árvore de Decisão
ACO � Ant Colony Optimization
AM � Aprendizado de Máquina
BP-MLL � BackPropagation for MultiLabel Learning
BR � Binary Relevance
CBMLC � Clustering-based MultiLabel Classi�cation
CLR � Calibrated Label Ranking
DAG � Directed Acyclic Graph
DT � Decision Tree
ESSBR � Ensemble of Semi-Supervised Binary Relevance
ESSBRc � Ensemble of Semi-Supervised Binary Relevance with con�dence
ESSLP � Ensemble of Semi-Supervised Label Powerset
ESSLPc � Ensemble of Semi-Supervised Label Powerset with Con�dence
ESSRAkEL � Ensemble of Semi-Supervised Random k-Labelsets
ESSRAkELc � Ensemble of Semi-Supervised Random k-Labelsets with Con�dence
ESSRAkELd � Ensemble of Semi-Supervised Random k disjoint Labelsets
ESSRAkELdc � Ensemble of Semi-Supervised Random k-Labelsets disjoint with Con�dence
GO � Gene Ontology
HMC � Hierarchical Multilabel Classi�cation
Lista de Abreviaturas e Siglas xxii
HMC-BR � Hierarchical Multilabel Classi�cation with Binary Relevance
HMC-ESSBR � Hierarchical Multilabel Classi�cation using Ensemble of Semi-Supervised
Binary Relevance
HMC-ESSBRc � Hierarchical Multilabel Classi�cation using Ensemble of Semi-Supervised
Binary Relevance with Con�dence
HMC-ESSLP � Hierarchical Multilabel Classi�cation using Ensemble of Semi-Supervised
Label Powerset
HMC-ESSLPc � Hierarchical Multilabel Classi�cation using Ensemble of Semi-Supervised
Label Powerset with Con�dence
HMC-ESSRAkEL �Hierarchical Multilabel Classi�cation using Ensemble of Semi-Supervised
Random k-Labelsets
HMC-ESSRAkELc �Hierarchical Multilabel Classi�cation using Ensemble of Semi-Supervised
Random k-Labelsets with Con�dence
HMC-ESSRAkELd �Hierarchical Multilabel Classi�cation using Ensemble of Semi-Supervised
Random k disjoint Labelsets
HMC-ESSRAkELdc �Hierarchical Multilabel Classi�cation using Ensemble of Semi-Supervised
Random k disjoint Labelsets with Con�dence
HMC-LP � Hierarchical Multilabel Classi�cation with Label Powerset
HMC-RAkEL � Hierarchical Multilabel Classi�cation with Random k-Labelsets
HMC-RAkELd � Hierarchical Multilabel Classi�cation with Random k disjoint Labelsets
HMC-SSBR � Hierarchical Multilabel Classi�cation using Semi-Supervised Binary Rele-
vance
HMC-SSBRc � Hierarchical Multilabel Classi�cation using Semi-Supervised Binary Rele-
vance with Con�dence
HMC-SSLP � Hierarchical Multilabel Classi�cation using Semi-Supervised Label Powerset
HMC-SSLPc � Hierarchical Multilabel Classi�cation using Semi-Supervised Label Powerset
Lista de Abreviaturas e Siglas xxiii
with Con�dence
HMC-SSRAkEL � Hierarchical Multilabel Classi�cation using Semi-Supervised Random
k-Labelsets
HMC-SSRAkELc � Hierarchical Multilabel Classi�cation using Semi-Supervised Random
k-Labelsets with Con�dence
HMC-SSRAkELd � Hierarchical Multilabel Classi�cation using Semi-Supervised Random
k disjoint Labelsets
HMC-SSRAkELdc � Hierarchical Multilabel Classi�cation using Semi-Supervised Random
k disjoint Labelsets with Con�dence
HMLC � Hierarchical Multilabel Classi�cation
HSC � Hierarchical Single-label Classi�cation
kNN � k-Nearest Neighbour
LP � Label Powerset
MIML-RBF � Multi-Instance Multi-Label Radial Basis Function
ML-kNN � MultiLabel k Nearest Neighbors
MLP � Multilayer Perceptron
MMAC � Multi-Class Multilabel Associative Classi�cation
MMP � Multiclass Multilabel Perceptron
PNN � Probabilistc Neural Networks
PSO � Particle Swarm Optimization
SSBR � Semi-Supervised Binary Relevance
SSBRc � Semi-Supervised Binary Relevance with Con�dence
SSLP � Semi-Supervised Label Powerset
SSLPc � Semi-Supervised Label Powerset with Con�dence
Lista de Abreviaturas e Siglas xxiv
SSRAkEL � Semi-Supervised Random k-Labelsets
SSRAkELc � Semi-SupervisedRandom k-Labelsets with Con�dence
SSRAkELd � Semi-Supervised Random k disjoint Labelsets
SSRAkELdc � Semi-Supervised Random k-Labelsets disjoint with Con�dence
SVM � Support Vector Machines
RAkEL � RAndom k-LabELsets
RAkELd � RAndom k-LabELsets disjoint
RPC � Ranking by Pairwise Comparison
RBF � Radial Basis Function
SC � Single-label Classi�cation
SOM � Self-Organizing Maps
1
Capítulo 1
Introdução
Aprendizado de Máquina (AM) é uma área dedicada ao estudo e desenvolvimento
de técnicas computacionais que permitam o aperfeiçoamento do desempenho em alguma
tarefa através de experiências acumuladas (MONARD, 2003; MITCHELL, 1997).
Na literatura, há uma grande variedade de algoritmos de AM propostos para a solução
de uma ampla variedade de problemas e aplicações. As aplicações de Aprendizado de
Máquina podem ser agrupadas segundo várias perspectivas. Em uma destas perspectivas,
três pontos principais são tomados como base: grau de supervisão empregado, quantidade
de rótulos de cada instância e quantidade de níveis dos rótulos. A Figura 1.1 ilustra uma
estrutura dos tipos de aplicações de AM segundo estas três caracteríticas principais.
Considerando o grau de supervisão aplicado durante o processo de aprendizado, o
aprendizado de máquina pode ser dividido em duas categorias principais: aprendizado
supervisionado e aprendizado não-supervisionado (MONARD, 2003). A principal diferença
entre o aprendizado supervisionado e o não-supervisionado diz respeito à forma como é
realizado o processo de generalização do conhecimento.
No aprendizado supervisionado, durante o treinamento, os métodos ou algoritmos rece-
bem como entrada exemplos juntamente com a informação de saída desejada, representando
CAPÍTULO 1. INTRODUÇÃO 2
Figura 1.1: Caracterização das Aplicações de Aprendizado de Máquina.
a classe a que aquele exemplo pertence. Por sua vez, no aprendizado não-supervisionado,
os métodos recebem como entrada exemplos sem a informação de saída, ou seja, não se
conhece a priori a classe a qual os exemplos do conjunto de treinamento pertencem.
Recentemente, a comunidade cientí�ca vem estudando uma terceira categoria de apren-
dizado, surgida através da junção do aprendizado supervisionado com o aprendizado não-
supervisionado. A essa nova categoria de aprendizado dá-se o nome de aprendizado se-
missupervisionado (MATSUBARA; MONARD; BATISTA, 2005). O aprendizado semissupervi-
sionado combina dados rotulados e dados não-rotulados, durante a fase de treinamento,
reduzindo assim, a necessidade de uma grande quantidade de dados rotulados quando
somente um pequeno conjunto de exemplos rotulados está disponível. Essa redução na
necessidade de um grande número de dados rotulados é uma das principais vantagens do
aprendizado semissupervisionado.
Muitos dos algoritmos de AM propostos na literatura têm como objetivo a solução de
problemas de classi�cação de dados. A classi�cação de dados é um processo no qual, a partir
de um conjunto de dados brutos, são extraídas informações por meio de categorização.
Desse modo, um processo de classi�cação consiste na atribuição de rótulos aos dados, de
tal forma que esses rótulos con�ram informações aos dados categorizados sob o mesmo
rótulo.
Tradicionalmente, a classi�cação de dados trata do aprendizado de um conjunto de
exemplos em que cada exemplo é associado a somente uma única classe de um conjunto
�nito de classes. Neste trabalho, chamaremos esta tarefa de classi�cação unirrótulo ou clas-
si�cação tradicional. Embora a classi�cação unirrótulo seja bastante utilizada, há vários
CAPÍTULO 1. INTRODUÇÃO 3
domínios nos quais os exemplos podem estar associados a mais de uma classe do conjunto
�nito de classes, tais como: classi�cação de textos (LUO; ZINCIR-HEYWOOD, 2005) e bioin-
formática (ZHANG; ZHOU, 2005). Nesses casos, à tarefa de classi�cação dá-se o nome de
classi�cação multirrótulo.
Além disso, a grande maioria das soluções propostas aos problemas de classi�cação
descritos na literatura envolve um tipo de classi�cação no qual as classes pertencentes ao
conjunto �nito de classes estão todas em um mesmo nível, ou seja, neste tipo de classi�cação
não são considerados relacionamentos hierárquicos entre as classes, supondo assim, inde-
pendência entre as classes envolvidas. Este tipo de classi�cação é chamada de classi�cação
plana.
Outrossim, há também um grande número de problemas de classi�cação mais comple-
xos, nos quais as classes a serem preditas estão dispostas em uma estrutura hierárquica.
Nestes tipos de problemas, uma ou mais classes podem ser divididas em subclasses ou
agrupadas em superclasses. Esses problemas são conhecidos na literatura de aprendizado
de máquina como problemas de classi�cação hierárquica.
Ademais, recentemente, têm-se identi�cado a existência de muitos problemas de clas-
si�cação hierárquica em que duas ou mais classes do conjunto �nito de classes podem ser
atribuídas simultaneamente à mesma instância. Esses problemas nos quais são combina-
das a classi�cação hierárquica e a classi�cação multirrótulo são chamados de problemas de
classi�cação hierárquica multirrótulo.
A maioria dos trabalhos encontrados na literatura aplicam o aprendizado supervisio-
nado em tarefas de classi�cação plana unirrótulo. Além disso, alguns trabalhos se dedicam
ao estudo da aplicação do aprendizado semissupervisionado ou em problemas de classi�ca-
ção hierárquica unirrótulo ou em problemas de classi�cação plana multirrótulo.
Neste contexto, considerando as vantagens do aprendizado semissupervisionado e o
aumento no número de aplicações multirrótulo e hierárquicas multirrótulo, este trabalho
apresenta uma investigação do comportamento obtido pela aplicação de técnicas de apren-
dizado semissupervisionado em tarefas de classi�cação multirrótulo e hierárquica multir-
rótulo, de modo a identi�car suas vantagens e desvantagens.
1.1 Motivação 4
Desse modo, este capítulo está organizado da seguinte maneira: a Seção 1.1 apresenta
as motivações para a investigação realizada neste trabalho; na Seção 1.2 são destacados os
principais objetivos da pesquisa; na Seção 1.3 são apresentadas as principais contribuições
deste trabalho; e na Seção 1.4 é apresentada a estrutura geral deste documento.
1.1 Motivação
Recentemente, com o aumento no número de aplicações multirrótulo e hierárquicas
multirrótulo, vem sendo identi�cada uma grande tendência da comunidade cientí�ca para
a realização de pesquisas envolvendo problemas de classi�cação multirrótulo e hierárquica
multirrótulo. Tal fato se deve, provavelmente, aos resultados favoráveis à utilização. Por
serem áreas relativamente novas, ainda há muito a ser explorado nestas áreas para a rea-
lização de pesquisas, melhoria das técnicas existentes e contribuição com novas propostas
que permitam o avanço da área.
Adicionalmente, o aprendizado semissupervisionado tem emergido como uma aborda-
gem bastante interessante para o aprendizado de máquina, principalmente em problemas
onde a quantidade de exemplos não-rotulados gerados é alta e a quantidade de exemplos
rotulados é muito baixa. Nestes casos, pode-se fazer necessária a utilização de um conjunto
de exemplos de treinamento rotulados maior do que o conjunto disponível, de modo a se
obter um classi�cador com maior precisão. Contudo, incrementar o conjunto de exem-
plos rotulados por meio da atribuição de rótulos a exemplos não-rotulados manualmente
pode ser bastante difícil e custoso, seja pela falta de um especialista do domínio ou por
esse especialista não possuir total conhecimento do domínio. Assim, faz-se necessária a
utilização de um processo automático de atribuição de rótulos para esses novos exemplos.
Neste contexto, em que tanto as técnicas de classi�cação hierárquica multirrótulo quanto o
aprendizado semissupervisionado vêm apresentando resultados favoráveis à sua utilização,
sem que nenhum estudo da aplicação de aprendizado semissupervisionado em problemas
de classi�cação hierárquicamultirrótulo seja realizado, surge a motivação de combiná-las
de modo a se aproveitar e�cientemente as principais vantagens das duas áreas.
1.2 Objetivos 5
1.2 Objetivos
O objetivo principal deste trabalho é o desenvolvimento de novos métodos de classi�ca-
ção multirrótulo e hierárquica multirrótulo através da aplicação de técnicas de aprendizado
semissupervisionado.
Para tal, os seguintes objetivos secundários deverão ser alcançados:
• Elaboração e Implementação de novas técnicas de classi�cação multirrótulo e hie-
rárquica multirrótulo: consiste na proposta e implementação de novas técnicas de
classi�cação multirrótulo e hierárquica multirrótulo aplicando técnicas de aprendi-
zado semissupervisionado, abrindo possibilidade para contribuições originais para o
avanço do estado da arte na área;
• Aplicação dos modelos propostos a diferentes problemas de classi�cação: vários pro-
blemas de classi�cação podem ser investigados utilizando os modelos de classi�cação
supervisionados existentes e os métodos semissupervisionados propostos, de modo a
viabilizar um estudo comparativo entre técnicas existentes e as técnicas propostas;
• Avaliação dos resultados por meio de diferentes medidas especí�cas para classi�cação
multirrótulo e hierárquica multirrótulo: tendo em vista as peculiaridades inerentes a
problemas de classi�cação multirrótulo e hierárquica multirrótulo, medidas de avali-
ação especí�cas devem ser utilizadas para mensurar o desempenho dos classi�cadores
desenvolvidos para tais problemas. Tais medidas de avaliação requerem algumas con-
siderações adicionais, além dos aspectos normalmente considerados na avaliação de
modelos convencionais de classi�cação. Desse modo, um dos objetivos deste projeto
é a avaliação dos modelos de classi�cação multirrótulo e hierárquica multirrótulo por
meio de medidas especí�cas para esse contexto.
Neste contexto, ao �nal deste trabalho espera-se avaliar se a aplicação do aprendizado
semissupervisionado em métodos de classi�cação multirrótulo e hierárquica multirrótulo é
capaz de aproximar os resultados dos métodos nos quais é utilizado o aprendizado super-
visionado.
1.3 Principais Contribuições 6
1.3 Principais Contribuições
Conforme citado anteriormente, tanto a classi�cação multirrótulo e hierárquica multir-
rótulo, quanto o aprendizado semissupervisionado são áreas relativamente, com muito a ser
explorado para a realização de pesquisas, melhoria das técnicas existentes e contribuição
com novas propostas que permitam o avanço das áreas. Desse modo, a principal contribui-
ção deste trabalho é a investigação da aplicação do aprendizado semissupervisionado em
métodos de classi�cação multirrótulo e hierárquico multirrótulo.
Durante a execução desta investigação, os seguintes trabalhos foram publicados e sub-
metidos para publicação:
• SANTOS, Araken de Medeiros; CANUTO, Anne Magaly de Paula; FEITOSA NETO,
Antonino A.. A Comparative Analysis of Classi�cation Methods to Multi-label Tasks
in Di�erent Application Domains. International Journal of Computer Information
Systems and Industrial Management Applications, v. 3, p. 218-227, 2011.
• SANTOS, Araken de Medeiros; XAVIER JÚNIOR, Joao Carlos; CANUTO, Anne
Magaly de Paula. Using Semi-Supervised Learning in Multi-label Classi�cation Pro-
blems. In: International Joint Conference on Neural Networks (IJCNN) (Aceito para
publicação), 2012, Brisbane. IEEE proceedings of IJCNN 2012, 2012.
• SANTOS, Araken de Medeiros; FEITOSA NETO, Antonino A.; CANUTO, Anne
Magaly de Paula. Evaluating classi�cation methods applied to multi-label tasks in
di�erent domains. In: International Conference on Hybrid Intelligent Systems (HIS),
2010, Atlanta. IEEE proceedings of the 10th International Conference on Hybrid
Intelligent Systems (HIS), 2010.
• SANTOS, Araken de Medeiros; CANUTO, Anne Magaly de Paula; SANTANA,
Laura. Analyzing Classi�cation Methods in Multi-label Tasks. In: International Con-
ference on Arti�cial Neural Networks, 2010. Lecture Notes on Computer Science
(LNCS) 6352 - Springer, 2010. v. III. p. 137-142.
1.4 Estrutura do Trabalho 7
1.4 Estrutura do Trabalho
O restante deste trabalho está organizado da seguinte forma:
• No Capítulo 2 são apresentados os principais conceitos associados à área de apren-
dizado de máquina, assim como os diferentes tipos de aprendizado de máquina exis-
tentes;
• O Capítulo 3 apresenta as principais características e algoritmos existentes associados
aos diferentes tipos de problemas de classi�cação de dados;
• O Capítulo 4 trata dos principais trabalhos envolvendo problemas de classi�cação
multirrótulo, hierárquica e hierárquica multirrótulo, bem como as técnicas de apren-
dizado semissupervisionado;
• No Capítulo 5 são propostos alguns algoritmos para a construção de classi�cadores
multirrótulo e hierárquicos multirrótulo através da aplicação de técnicas de aprendi-
zado semissupervisionado;
• O Capítulo 6 trata dos procedimentos utilizados para a execução dos experimentos,
assim como da descrição das bases de dados e medidas de avaliação utilizadas;
• No Capítulo 7 são apresentados os resultados experimentais obtidos pelos métodos
de classi�cação multirrótulo semissupervisionada;
• No Capítulo 8 são apresentados os resultados experimentais obtidos pelos métodos
de classi�cação hierárquica multirrótulo semissupervisionada;
• O Capítulo 9 apresenta as considerações �nais deste trabalho, assim como identi�ca
os possíveis trabalhos futuros.
8
Capítulo 2
Aprendizado de Máquina
Aprendizado de Máquina (AM) é uma área cujo objetivo é o desenvolvimento de téc-
nicas computacionais que tornem viáveis ao computador tomar decisões baseadas em ex-
periências acumuladas, ou seja, tratar da questão da construção de algoritmos capazes de
adquirir conhecimento de forma automática, melhorando seu desempenho na tomada de
decisões por meio de soluções bem-sucedidas de problemas anteriores (MITCHELL, 1997;
MONARD, 2003). Um dos principais focos das pesquisas em aprendizado de máquina é
produzir modelos aumaticamente a partir de dados, como, por exemplo, regras e padrões.
A construção de modelos capazes de adquirir conhecimento de forma automática atra-
vés da experência tem sido, por um longo período, objeto de intensas pesquisas. Na litera-
tura, há uma grande variedade de algoritmos de AM propostos, com diferentes paradigmas
e formas de aprendizado. Contudo, apesar de tais técnicas utilizarem metodologias bem
distintas, em alguns casos, estão fundamentadas no conceito de indução.
A indução é uma forma de raciocício lógico. Tal conceito permite que conclusões gené-
ricas sejam obtidas a partir de um conjunto particular de exemplos. O raciocínio indutivo
origina-se em conceito especí�co e generalizado, ou seja, da parte para o todo (MONARD,
2003). O processo de aquisição de conhecimento baseado em indução é conhecido como
2.1 Conceitos Básicos de Aprendizado de Máquina 9
aprendizado indutivo.
Este capítulo está organizado do seguinte modo: na Seção 2.1, são apresentados os
conceitos básicos associados à área de aprendizado de máquina. Por sua vez, a Seção 2.2
trata das categorias de aprendizado indutivo existentes.
2.1 Conceitos Básicos de Aprendizado de Máquina
Conforme citado anteriormente, na literatura, há uma grande variedade de algoritmos
de aprendizado de máquina, cada um com características que lhes são peculiares. Contudo,
alguns termos podem ser aplicados à grande maioria desses métodos. Dessa forma, nesta
seção são apresentados os principais termos associados à área de aprendizado de máquina.
• Atributo: um atributo descreve uma característica ou aspecto de um exemplo. Nor-
malmente, esses atributos podem ser de dois tipos: discretos ou contínuos. Atributos
discretos, também chamados de atributos nominais ou categóricos, contêm um nú-
mero �nito de valores. Por sua vez, os atributos contínuos podem assumir um número
in�nito de valores. Um importante ponto a ser considerado na escolha dos atributosque serão utilizados para descrever os exemplos, é a sua capacidade preditiva, ou
seja, a capacidade de discriminação entre os exemplos (MONARD, 2003; FACELLI et
al., 2011).
• Classe ou rótulo: uma classe ou rótulo, também chamado de atributo-alvo, descreve
o conceito-meta, ou seja, o conceito que se deseja aprender para tornar viável a
realização de predições a seu respeito.
• Exemplo: um exemplo, também chamado de padrão ou instância, descreve um objeto
de um determinado conceito que se deseja aprender através de um vetor de valores
de características ou atributos (MONARD, 2003). Um exemplo pode conter, além do
vetor de características, um atributo especial, indicando a classe a que este exemplo
pertence.
• Conjunto de exemplos: um conjunto de exemplos, também chamado de conjunto
de dados, é composto por um número de exemplos com seus respectivos valores de
2.1 Conceitos Básicos de Aprendizado de Máquina 10
atributos.
• Conjunto de treinamento: utilizado como entrada pelos algoritmos de aprendizado.
A partir deste conjunto são construídos (induzidos) modelos ou hipóteses. Assim,
devem possuir uma quantidade representativa da população dos dados do domínio.
• Conjunto de teste: utilizado para avaliar o modelo construído. Idealmente, o conjunto
de teste não deve ter exemplos em comum com o conjunto de treinamento.
• Conjunto de validação: utilizado, em alguns casos, para realizar ajustes no mo-
delo construído pelo algoritmo de aprendizado. Os exemplos desse conjunto não
são utilizados diretamente na construção do modelos, mas são utilizados para o seu
ajuste. Dessa maneira, esses exemplos são indiretamente "vistos"durante o processo
de aprendizado, obrigando que os exemplos de validação sejam distintos dos exemplos
de teste.
• Indutor: algoritmo de aprendizado que utiliza um processo indutivo para gerar a
sua hipótese ou modelo. Essa hipótese é utilizada para classi�car uma instância ou
exemplo.
• Classi�cador ou hipótese: dado um conjunto de exemplos de treinamento, um indutor
ou algoritmo de aprendizado gera como saída um classi�cador (ou hipótese) de forma
que, dado um novo padrão, ele possa predizer sua classe com a maior precisão possível
(MONARD, 2003).
• Over�tting (superajustamento): o over�tting ocorre quando, após o treinamento, o
classi�cador gerado é muito especí�co para o conjunto de exemplos de treinamento
utilizado. Assim, a maioria das instâncias que não pertence ao conjunto de exemplos
utilizado durante o processo de aprendizado é classi�cada erroneamente. Desse modo,
pode-se dizer que, durante o treinamento, o classi�cador gerado foi superajustado ao
conjunto de treinamento, incapacitando-o a classi�car ou generalizar corretamente
exemplos diferentes daqueles utilizados na fase de treinamento.
• Under�tting : o under�tting consiste no caso inverso ao over�tting, ou seja, o classi-
�cador gerado ajustou-se muito pouco ao conjunto de treinamento, incapacitando-o
2.2 Tipos de Aprendizado de Máquina 11
a classi�car corretamente tanto os exemplos do conjunto de dados de treinamento,
quanto os exemplos em um conjunto de teste (MONARD, 2003).
• Acurácia: a acurácia de um classi�cador é uma medida de desempenho obtida por
este classi�cador para uma determinada tarefa. Essa medida é calculada de acordo
com a taxa de predições corretas (precisão) ou incorretas (taxa de erro) realizadas por
esse classi�cador para um determinado conjunto de dados. Desse modo, a acurácia
pode ser interpretada como a quantidade de padrões que esse classi�cador acertou
ou errou de acordo com a classe a que este padrão de fato pertence. Essa taxa de
acurácia é, em geral, estimada utilizando um conjunto diferente do conjunto utilizado
no processo de aprendizado, chamado de conjunto de teste.
2.2 Tipos de Aprendizado de Máquina
O aprendizado indutivo pode ser dividido em duas categorias principais: aprendizado
supervisionado e aprendizado não-supervisionado (MONARD, 2003). A diferença entre o
aprendizado supervisionado e o não-supervisionado diz respeito à forma como é realizado
o processo de generalização do conhecimento. Recentemente, a comunidade cientí�ca vem
estudando uma terceira categoria de aprendizado, surgida através da junção do apren-
dizado supervisionado com o aprendizado não-supervisionado. A essa nova categoria de
aprendizado dá-se o nome de aprendizado semissupervisionado (MATSUBARA; MONARD;
BATISTA, 2005). A Figura 2.1 ilustra a estrutura das tarefas do aprendizado.
Nas seções seguintes, serão apresentadas as principais características de cada uma das
três categorias de aprendizado.
2.2.1 Aprendizado Supervisionado
No aprendizado supervisionado, cada exemplo do conjunto de treinamento é rotulado
como pertencente a alguma classe. O rótulo atribuído a um exemplo, também chamado
de saída desejada, atributo-alvo ou dependente, é fornecido juntamente com seus atributos
de entrada, também chamados de atributos independentes. Desse modo, durante o trei-
namento, ao apresentar um exemplo ao algoritmo de aprendizado, além dos atributos que
2.2 Tipos de Aprendizado de Máquina 12
Figura 2.1: Estrutura das tarefas de aprendizado de máquina
Tabela 2.1: Conjunto de exemplos no formato atributo-valor.
X1 X2 · · · XM Y
E1 x11 x12 · · · x1M y1
E2 x21 x22 · · · x2M y2
...
...
...
...
...
EN xN1 xN2 · · · xNM yN
representam as características do domínio, um atributo especial também é apresentado,
representando a classe à qual este exemplo pertence. Para rótulos de classe discretos (por
exemplo, classe A, classe B, etc.), o problema é denominado de classi�cação. Por outro
lado, para rótulos contínuos, o problema é chamado de regressão.
A Tabela 2.1 apresenta o formato geral de uma tabela atributo-valor com N exemplos
Ei com i = 1, ..., N , na forma {(~x1, y1), ..., (~xN , yN)} para alguma função desconhecida
y = f(x). Os ~xi são tipicamente vetores da forma 〈xi1, xi2, ..., xiM〉 com valores discretos
ou contínuos. Assim, xij refere-se ao valor do atributo j, denominado Xj, do exemplo Ei,
como mostra a Tabela 2.1. Os valores yi referem-se ao valor do atributo Y , frequentemente
denominado classe ou rótulo.
Desse modo, no aprendizado supervisionado, os modelos são construídos com o obje-
tivo de realizar inferências a partir desse conjunto de exemplos de treinamento para os
quais se conhece a priori as classes às quais estes exemplos pertencem. Durante a fase
2.2 Tipos de Aprendizado de Máquina 13
de treinamento, o algoritmo ajusta o indutor utilizando os exemplos, juntamente com a
informação de sua saída esperada (classe).
Assim, após o processo de treinamento (construção do modelo), logo que um novo
exemplo não-rotulado for apresentado ao modelo, tais algoritmos poderão, utilizando ex-
periências adquiridas anteriormente através do processo de treinamento, determinar uma
classe para esse novo exemplo, ou seja, rotular esse exemplo como pertencente a uma das
classes possíveis, de acordo com o conjunto de dados.
Na literatura, há vários métodos de aprendizado supervisionado propostos, dentre os
quais podemos destacar: k vizinhos mais próximos (kNN, do inglês, k-Nearest Neighbour)
(COVER; HART, 1967), algoritmos de indução de árvore de decisão (DT, do inglês, Decision
Tree) (QUINLAN, 1993), máquina de vetores suporte (SVM, do inglês, Support Vector Ma-
chines) (VAPNIK, 1995, 1998; HAYKIN, 1998; CRISTIANINI; SHAWE-TAYLOR, 2000), além de
vários modelos de redes neurais arti�ciais, tais como MLP (do inglês, Multilayer Percep-
tron) (HAYKIN, 1998) e RBF (do inglês, Radial Basis Function) (HAYKIN, 1998), dentre
outros.
2.2.2 Aprendizado Não-Supervisionado
Conforme citado anteriormente, no aprendizado supervisionado, durante o treinamento,
os métodos recebem como entrada exemplos juntamente com a informação de saída dese-
jada, representando a classe a que aquele exemplo pertence. Por outro lado, no aprendi-
zado não-supervisionado, os métodos recebem como entrada exemplos sem a informação
de saída, ou seja, não se conhecea priori a classe a que as instâncias do conjunto de
exemplos pertencem. Dessa maneira, o principal objetivo dos métodos de aprendizado
não-supervisionado é agrupar exemplos não-rotulados através da identi�cação de padrões
ou tendências, gerando agrupamentos ou clusters distintos, auxiliando assim no entendi-
mento desses dados (COSTA, 1999). Os algoritmos desse tipo de aprendizado são chamados
de algoritmos de agrupamento ou clustering.
Em geral, o processo de agrupamento dos algoritmos de aprendizado não-supervisionado
pode ser realizado através de duas abordagens principais: por meio de alguma medida de
distância ou de alguma medida de correlação. No agrupamento através de uma medida
2.2 Tipos de Aprendizado de Máquina 14
de distância, os exemplos podem ser agrupados com outros mais próximos, fomando assim
um cluster. Diversas medidas de distância podem ser utilizadas, dentre as quais pode-
mos destacar a distância Euclidiana e a distância de Mahalanobis (MAHALANOBIS, 1936).
Por outro lado, no agrupamento realizado por meio de uma medida de correlação, pode-
mos destacar a correlação de Pearson (PEARSON, 1901) como a medida de correlação mais
conhecida. Ao utilizar essas medidas de distância e de correlação, os grupos serão formados
de acordo com a distribuição linear apresentada entre cada exemplo. Dessa forma, pode-se
dizer que os exemplos presentes em um mesmo grupo podem apresentar uma maior seme-
lhança entre si do que exemplos em grupos diferentes. Contudo, é importante enfatizar que
os grupos no aprendizado não-supervisionado e as classes no aprendizado supervisionado
não agrupam ou representam, necessariamente, os mesmos exemplos (MATSUBARA, 2004).
Como exemplo de métodos de aprendizado não-supervisionado pode ser citado, dentre
outros: redes neurais do tipo Mapa Auto-Organizáveis (SOM, do inglês, Self-Organizing
Maps) (KOHONEN, 1982), k -Médias (do inglês, k-Means) (JAIN; DUBES, 1988) e Agrupa-
mento Hierárquico (SANGER, 1989).
2.2.3 Aprendizado Semissupervisionado
Conforme citado anteriormente, caso existam exemplos cujos rótulos de classes são
conhecidos antecipadamente, pode-se utilizar o aprendizado supervisionado para induzir
classi�cadores a partir desses exemplos. Por outro lado, quando os rótulos de classes
dos exemplos não são conhecidos antecipadamente, pode-se utilizar o aprendizado não-
supervisionado com o objetivo de encontrar clusters. Contudo, há situações em que há
uma pequena quantidade de exemplos rotulados, enquanto a quantidade de exemplos não
rotulados é alta. Assim, induzir classi�cadores exclusivamente a partir de um pequeno
conjunto de exemplos rotulados, geralmente, leva à indução de classi�cadores com baixa
acurácia. Uma possível solução para esse problema é aumentar o conjunto de exemplos ro-
tulados através da atribuição de rótulos a exemplos do conjunto de exemplos não-rotulados.
Contudo, esse processo de atribuição manual de rótulos pode ser bastante difícil e custoso,
seja pela falta de um especialista do domínio ou por esse especialista não possuir total
conhecimento do domínio a ser apresentado. Desse modo, pode ser identi�cada a necessi-
2.2 Tipos de Aprendizado de Máquina 15
dade de métodos capazes de incrementar a quantidade de exemplos rotulados através de
um processo automático, possibilitando o aumento da precisão dos classi�cadores a serem
gerados.
Nesse contexto, o aprendizado semissupervisionado, área de pesquisa relativamente
nova em Aprendizado de Máquina, representa a junção do aprendizado supervisionado e
não-supervisionado (SANCHES, 2003). Assim, no aprendizado semissupervisionado, exem-
plos em que os rótulos das classes são conhecidos e exemplos em que os rótulos das classes
não são conhecidos são apresentados ao algoritmo de aprendizado. Um dos principais
objetivos do aprendizado semissupervisionado é rotular mais exemplos e, desse modo, in-
crementar a quantidade de exemplos do conjunto de dados de treinamento. Desse modo,
este conjunto de dados de treinamento incrementado pode ser apresentado a um algoritmo
de aprendizado supervisionado para que este, por sua vez, possa induzir classi�cadores
mais precisos.
Uma das vantagens do aprendizado semissupervisionado é o potencial de reduzir a
necessidade de uma grande quantidade de dados rotulados, em domínios nos quais somente
um pequeno conjunto de padrões rotulados está disponível. Outra vantagem desse tipo de
aprendizado pode ser veri�cada quando o especialista não apresenta um total conhecimento
sobre o conceito a ser aprendido, ou seja, esse especialista tem apenas o conhecimento
de alguns padrões de um determinado conjunto de dados, aprensentando assim, grande
di�culdade de rotular exemplos para incrementar o conjunto de dados de treinamento.
Como exemplos de técnicas de aprendizado semissupervisionado bastante utilizados po-
demos citar o Self-Training (ROSENBERG; HEBERT; SCHNEIDERMAN, 2005) e o Co-Training
(BLUM; MITCHELL, 1998).
No self-training um classi�cador é primeiramente gerado a partir de uma pequena
quantidade de exemplos rotulados. Logo após ser gerado, o classi�cador é então utilizado
para classi�car exemplos não-rotulados. Assim, os exemplos não-rotulados, juntamente
com os rótulos preditos pelo classi�cador, são adicionados ao conjunto de treinamento.
Em seguida, o classi�cador é retreinado e todo o procedimento é repetido. É importante
ressaltar que o classi�cador faz uso de suas próprias predições para ensinar a si próprio,
daí o nome self-training (autotreinamento).
2.3 Considerações Finais 16
por sua vez, o Co-Training (BLUM; MITCHELL, 1998) é uma poderosa abordagem ao
aprendizado semissupervisionado baseada na ideia da multidescrição. Nesta abordagem, os
exemplos de treinamento são descritos por dois ou mais conjuntos de atributos disjuntos,
ou seja, através de diferentes descrições (MATSUBARA; MONARD; BATISTA, 2005). Um
dos algoritmos de aprendizado semissupervisionado multidescrição mais utilizados é o Co-
Training (BLUM; MITCHELL, 1998). Nesse algoritmo, dois classi�cadores são inicialmente
gerados, cada um utilizando uma descrição diferente dos exemplos rotulados. Uma vez
que são utilizadas duas descrições, pode-se utilizar o mesmo algoritmo de aprendizado
supervisionado para induzir as duas hipóteses (classi�cadores), assim como dois algoritmos
de aprendizado supervisionado distintos. Assim, é gerado um classi�cador sobre os mesmos
exemplos, mas cada um induzido segundo visões (descrições) diferentes. Desse modo, pode-
se a�rmar que o Co-Training baseia-se na ideia de que cada um dos classi�cadores rotulará
exemplos que conterão informações desconhecidas pelo outro classi�cador.
Uma vez gerados os dois classi�cadores, os exemplos não-rotulados são apresentados
aos dois classi�cadores, os quais terão suas saídas combinadas. Em seguida, os exemplos
que apresentarem o grau de con�ança de classi�cação mais altos são inseridos no conjunto
de exemplos rotulados. A partir desse conjunto incrementado de exemplos rotulados, são
gerados dois novos classi�cadores e o processo é repetido.
2.3 Considerações Finais
Este capítulo teve início com a apresentação dos principais conceitos básicos associ-
ados à área de Aprendizado de Máquina. Em seguida, foram apresentadas as principais
características de cada uma das categorias de aprendizado: aprendizado supervisionado,
aprendizado não-supervisionado e aprendizado semissupervisionado. No aprendizado su-
pervisionado, os métodos tratam da construção de indutores com o objetivo de realizar
inferências a partir de um conjunto de exemplos de treinamento rotulados, ou seja, para os
quais se conhece a priori as classes às quais esses exemplos pertencem. Enquanto isso, no
aprendizado não-supervisionado, os métodos recebem como entrada exemplos sem a infor-
mação de saída, ou seja, não se conhece a priori a classe a que as instâncias do conjunto de
exemplos pertencem. Por sua vez, o aprendizado semissupervisionado representa ajunção
2.3 Considerações Finais 17
do aprendizado supervisionado e não-supervisionado. A junção dos dois primeiros tipos
de aprendizado tem como objetivo reduzir a necessidade de uma grande quantidade de
dados rotulados, quando somente um pequeno conjunto de exemplos rotulados está dispo-
nível, através da atribuição de rótulos a exemplos não-rotulados por meio de um processo
automático.
18
Capítulo 3
Classi�cação de Dados
A classi�cação de dados é um processo no qual, a partir de um conjunto de dados
brutos, são extraídas informações por meio de categorização. Desse modo, um processo
de classi�cação consiste na atribuição de rótulos aos dados, de tal forma que esses rótulos
con�ram informações aos dados categorizados sob o mesmo rótulo (COSTA, 2008).
O conceito de classi�cação de dados é bastante comum em várias áreas de conheci-
mento, tais como: Computação, Engenharia, Matemática, Estatística, dentre outras. Em
computação, uma área de estudo com amplo interesse em classi�cação de dados é a área
de aprendizado de máquina.
Nas últimas décadas, intensas pesquisas vêm sendo realizadas na área de aprendizado
de máquina, focando principalmente a classi�cação de dados, tais como em (CANUTO et al.,
2009; ALMEIDA; LUDERMIR, 2010; LORENA; CARVALHO, 2010; OLIVEIRA; CANUTO; SOUTO,
2007; SANTANA; CANUTO; ABREU, 2006).
Como citado anteriormente, problemas de classi�cação de dados são um subconjunto
dos problemas de aprendizado supervisionado. Assim, o processo de classi�cação ocorre
por meio de um algoritmo de aprendizado, cujo objetivo é gerar um classi�cador a partir
de dados de entrada rotulados.
CAPÍTULO 3. CLASSIFICAÇÃO DE DADOS 19
Tabela 3.1: Conjunto de dados para o diagnóstico da saúde de um paciente.
Exemplo Febre Enjôo Manchas Dor Diagnóstico
E1 sim sim pequenas sim doente
E2 não não grandes não saudável
E3 sim sim pequenas não saudável
E4 sim não grandes sim doente
E5 sim não pequenas sim saudável
E6 não não grandes sim doente
Desse modo, para a geração do classi�cador, é necessário um conjunto de exemplos
rotulados, chamado conjunto de dados de treinamento. Cada exemplo do conjunto de
dados de treinamento é constituído por um vetor ~xi de atributos. Cada atributo de entrada
corresponde a uma característica ou propriedade do exemplo. Juntamente com os atributos,
também é fornecido o rótulo de cada exemplo. Na Tabela 3.1, têm-se um conjunto de dados
para classi�cação do estado de saúde de um paciente. Nesta tabela, cada linha representa
um exemplo do conjunto de dados e cada coluna um atributo deste exemplo. O atributo
Diagnóstico é especial, pois possui o rótulo da classe para cada exemplo, ou seja, doente
ou saudável.
O processo de geração de um classi�cador se inicia com uma fase de pré-processamento
dos dados. Esta fase tem como objetivo fazer com que os dados brutos pertencentes ao
domínio sobre o qual será aplicado o algoritmo de classi�cação sejam representados de
forma adequada, possibilitando a sua utilização na fase de treinamento.
Após a fase de pré-processamento, inicia-se a fase de treinamento. Nesta fase, cada
exemplo Ei, representado por um par (~xi, yi), tal que i = 1, 2, ..., N é o número de exemplos
de treinamento, ~xi é vetor de atributos que descrevem cada exemplo e yi é o valor do
atributo-alvo Y , também conhecido como rótulo ou classe. O objetivo do processo de
treinamento é obter uma função que mapeie cada Ei a seu Yi correspondente. A função de
mapeamento é encontrada com base nos ajustes dos parâmetros livres do modelo.
Sendo assim, ao �nalizar a fase de treinamento, obtêm-se um classi�cador capaz de
realizar o processo de predição da classe à qual um novo exemplo de entrada pertence,
através da generalização dos exemplos do conjunto de treinamento.
3.1 Classi�cação de Dados Multirrótulo 20
A classi�cação de dados é, provavelmente, uma das tarefas mais estudadas em aprendi-
zado de máquina. Tal fato se deve, principalmente, pela possiblidade de aplicação em uma
grande quantidade de domínios. Na literatura, diversos métodos consolidados para tratar
problemas de classi�cação pode ser encontrada . No entanto, a maioria desses métodos de
classi�cação, ditos tradicionais, consideram que para cada exemplo é atribuído um único
rótulo. Além disso, nenhuma relação hierárquica entre as classes possíveis é considerada.
Contudo, nos últimos anos vem sendo identi�cada uma série de tarefas de classi�cação nas
quais os exemplos podem ser rotulados a mais de uma classe simultaneamente. Adicional-
mente, tais classes podem estar hierarquicamente organizadas.
Este capítulo está organizado da seguinte forma: a Seção 3.1 apresenta a classi�cação
de dados multirrótulo e as principais técnicas existentes. A Seção 3.2 trata de problemas
de classi�cação de dados hierárquica. Na Seção 3.3, é apresentada uma recente área de
classi�cação de dados, resultante da combinação da classi�cação de dados multirrótulo e
classi�cação de dados hierárquica, chamada classi�cação de dados hierárquica multirrótulo.
3.1 Classi�cação de Dados Multirrótulo
A classi�cação de dados tradicional trata do aprendizado de um conjunto de exemplos
(instâncias) em que cada um é associado a uma única classe (rótulo) de um conjunto de
classes Y , de modo que |Y | > 1 . Essa tarefa é chamada de classi�cação unirrótulo (do
inglês, single-label classi�cation). Se |Y | = 2, então a tarefa de aprendizado é chamada de
classi�cação unirrótulo binária. Por outro lado, se |Y | > 2, a tarefa é chamada de classi�-
cação unirrótulo multiclasse. Embora a classi�cação unirrótulo seja bastante utilizada, há
vários domínios nos quais as instâncias estão associados a um conjunto de classes L, tal que
L ⊆ Y , ou seja, cada exemplo pode ser associado a mais de uma classe simultaneamente.
Nesses casos, em que as classes não são disjuntas, à tarefa de classi�cação dá-se o nome
de classi�cação multirrótulo (do inglês, multi-label classi�cation) (TSOUMAKAS; KATAKIS;
VLAHAVAS, 2008). Por exemplo, um �lme pode ser classi�cado como ação e aventura,
um artigo no jornal pode ser classi�cado como pertencente às seções de música e cultura,
dentre outros.
Para uma descrição formal, seja L = λj : j = 1, ...,M um conjunto �nito de classes (ró-
3.1 Classi�cação de Dados Multirrótulo 21
Tabela 3.2: Exemplos de um conjunto de dados multirrótulo.
Exemplo Rótulos
1 {λ1, λ4}
2 {λ3, λ4}
3 {λ1}
4 {λ2, λ3 λ4}
tulos) em uma tarefa de aprendizado multirrótulo e D = {(~xi|Li), i = 1, ..., N} o conjunto
de exemplos de treinamento multirrótulo, onde ~xi é o vetor de características (atributos)
e Li ⊆ Y o conjunto de classes da i -ésima instância (TSOUMAKAS; KATAKIS; VLAHAVAS,
2009). Na Tabela 3.2, são apresentados quatro exemplos rotulados com um ou mais rótulos:
λ1, λ2, λ3 e λ4.
Apesar de grande parte das pesquisas na área de classi�cação de dados se concentrarem
na análise de dados com um único rótulo, nos últimos anos, a área de classi�cação de da-
dos multirrótulo têm atraído a atenção de grande parte da comunidade cientí�ca, motivado
principalmente pelo grande aumento no número de novas aplicações, tais como anotação
semântica de imagens (BOUTELL et al., 2004; ZHANG; ZHOU, 2007; YANG; KIM; RO, 2007)
e vídeo (QI et al., 2007; SNOEK et al., 2006), função genômica (BLOCKEEL et al., 2006; BA-
RUTCUOGLU; SCHAPIRE; TROYANSKAYA, 2006; ELISSEEFF; WESTON, 2001; CLARE; KING,
2001), categorização de músicas através de emoções (LI; OGIHARA, 2003, 2006; WIEC-
ZORKOWSKA; SYNAK; RA±, 2006; TROHIDIS et al., 2008) e marketing direcionado (ZHANG;
BURER; STREET, 2006). Classi�cação de textos pode ser identi�cada como a área que tem
maior aplicação de técnicas de classi�cação multirrótulo (ESULI; SEBASTIANI, 2009a, 2009b;
KATAKIS; TSOUMAKAS; VLAHAVAS, 2008; PESTIAN et al., 2007; GONCALVES; QUARESMA,
2003; LAUSER; HOTHO, 2003).
Na Figura 3.1, é apresentada uma comparação entre um problema de classi�cação
unirrótulo e um problema de classi�cação multirrótulo. A Figura 3.1.a ilustra umproblema
de classi�cação unirrótulo no qual um exemplo pode pertencer à classe "Biologia"ou à classe
"Informática", mas nunca às duas classes simultaneamente. Por outro lado, a Figura 3.1.b
ilustra um exemplo de classi�cação multirrótulo, em que os exemplos podem pertencer
simultaneamente às classes "Biologia"e "Informática", podendo, então, serem classi�cados
3.1 Classi�cação de Dados Multirrótulo 22
Figura 3.1: (a) Problema de classi�cação tradicional ou unirrótulo. (b) Problema de
classi�cação multirótulo.
como pertencentes à classe "Bioinformática".
Na literatura, podem ser encontradas diferentes métodos e técnicas para tratar pro-
blemas de classi�cação multirrótulo. Em algumas destas técnicas, problemas multirrótulo
são quebrados em vários problemas unirrótulo. Assim, classi�cadores unirrótulo podem ser
combinados para viabilizar o tratamento de problemas de classi�cação multirrótulo. Por
outro lado, há técnicas que resultam da modi�cação de algoritmos de classi�cação unirró-
tulo, de modo que, através da adaptação de seus mecanismos internos, torna-se possível
a sua utilização em problemas de classi�cação multirrótulo. Adicionalmente, novos me-
canismos podem ser desenvolvidos para tratar especi�camente problemas de classi�cação
multirrótulo (TSOUMAKAS; KATAKIS; VLAHAVAS, 2009).
Neste contexto, duas importantes abordagens podem ser utilizadas para tratar um
problema de classi�cação multirrótulo:
• Independente do algoritmo;
• Dependente do algoritmo.
Na abordagem independente do algoritmo, também chamada de transformação do pro-
blema, problemas de classi�cação multirrótulo são tratados utilizando qualquer algoritmo
de classi�cação tradicional. Para isso, basta que o problema multirrótulo original seja
3.1 Classi�cação de Dados Multirrótulo 23
transformado em um conjunto de problemas de classi�cação unirrótulo. Por sua vez, na
abordagem dependente do algoritmo, novos algoritmos são propostos para tratar proble-
mas de classi�cação multirrótulo como um todo, em uma única etapa. Tais algoritmos
podem ser desenvolvidos especi�camente para classi�cação multirrótulo ou serem baseados
em técnicas de classi�cação convencionais, como SVMs e árvores de decisão (FACELLI et
al., 2011).
Há extensões multirrótulo de vários algoritmos de aprendizado de máquina, tais como:
árvore de decisão (CLARE; KING, 2001), máquina de vetores suporte (SVM, do inglês,
support vector machines) (ELISSEEFF; WESTON, 2001; GODBOLE; SARAWAGI, 2004), redes
neurais arti�ciais (CRAMMER; SINGER, 2003; ZHANG; ZHOU, 2006), aprendizado bayesiano
(MCCALLUM, 1999), k vizinhos mais próximos (kNN, do inglês, k nearest neighbor) (ZHANG;
ZHOU, 2007) e boosting (SCHAPIRE; SINGER, 2000).
Nas próximas subseções são apresentadas alguns algoritmos, de acordo com a aborda-
gem utilizada para tratar problemas de classi�cação multirrótulo.
3.1.1 Transformação do Problema
Como citado anteriormente, a abordagem de transformação do problema, também
chamada de abordagem independente do algoritmo, consiste na conversão de uma tarefa
multirrótulo em um conjunto de tarefas unirrótulo. A idéia é transformar o problema
original em um conjunto de problemas de classi�cação unirrótulo. Assim, torna-se possí-
vel a utilização de qualquer algoritmo tradicional de classi�cação para tratar o problema
multirrótulo.
Na literatura, há vários trabalhos propondo métodos de transformação simples que
podem ser usados para converter um conjunto de dados multirrótulo em um conjunto
de dados unirrótulo com o mesmo conjunto de rótulos como por exemplo em (BOUTELL et
al., 2004; TSOUMAKAS; KATAKIS, 2007; KATAKIS; TSOUMAKAS; VLAHAVAS, 2008; TSOUMA-
KAS; KATAKIS; VLAHAVAS, 2009; NASIERDING; TSOUMAKAS; KOUZANI, 2009; TSOUMAKAS;
KATAKIS; VLAHAVAS, 2010). Dentre os métodos mais utilizados podem ser citados: BR
(do inglês Binary Relevance) (TSOUMAKAS; KATAKIS, 2007), LP (do inglês, Label Power-
set)(KATAKIS; TSOUMAKAS; VLAHAVAS, 2008) e RAkEL (do inglês, RAndom k-LabELsets)
3.1 Classi�cação de Dados Multirrótulo 24
(TSOUMAKAS; KATAKIS; VLAHAVAS, 2010).
3.1.1.1 Relevância Binária
Dentre os métodos de transformação do problema, o mais popular é o método de
Relevância Binária (BR, do inglês Binary Relevance) (TSOUMAKAS; KATAKIS, 2007). Neste
método, o problema multirrótulo é dividido em |L| problemas de classi�cação unirrótulo
binário, onde |L| é a quantidade de rótulos contidos em L. Assim, pode-se a�rmar que a
predição de cada rótulo é considerada como uma tarefa independente.
No método de Relevância Binária, o conjunto de dados original é transformado em |L|
conjuntos de dados Dλj , cada um dos quais contendo todos os exemplos do conjunto de
dados original, rotulados como λj se o conjunto de rótulos do exemplo original contém λj
e como ¬λj, caso contrário. Com isso, um classi�cador binário Cλj : X → {¬λj, λj} é
treinado para cada diferente rótulo λj ∈ L. Assim, uma vez que todos os classi�cadores
tenham sido treinados, para a classi�cação de uma nova instância é retornada como saída
a união dos λj rótulos que são positivamente preditos pelos |L| classi�cadores. Na Tabela
3.3, são apresentados os conjuntos de dados produzidos ao utilizar o método de Relevância
Binária. A Figura 3.2 ilustra o processo utilizado pelo BR.
Uma das principais críticas ao BR é o fato de neste método não serem consideradas as
correlações entre os rótulos, descartando assim informações que podem ser importantes à
tarefa de classi�cação. Desse modo, o modelo gerado pelo método de Relevância Binária
pode levar à uma pouca capacidade de generalização. Além disso, o modelo de classi�cação
gerado é de baixa legibilidade, uma vez que é gerado um modelo em separado para cada
um dos rótulos associado a um exemplo de teste.
3.1.1.2 Label Powerset
Outro método de transformação de problema menos comum, mas ainda assim bastante
utilizado é o Label Powerset (LP)(KATAKIS; TSOUMAKAS; VLAHAVAS, 2008). Neste mé-
todo, cada subconjunto diferente de rótulos de L é considerado como uma única classe da
nova tarefa de classi�cação unirrótulo. Desse modo, um classi�cador unirrótulo C : X →
P (L) é treinado, onde P (L) é o powerset de L, contendo todos os subconjuntos de rótulos
3.1 Classi�cação de Dados Multirrótulo 25
Figura 3.2: Processo utilizado pelo BR.
Tabela 3.3: Conjuntos de dados obtidos ao utilizar o método de Relevância Binária nos
dados da Tabela 3.1.
Exemplo Rótulos
1 {λ1}
2 {¬λ1}
3 {λ1}
4 {¬λ1}
Exemplo Rótulos
1 {¬λ2}
2 {¬λ2}
3 {¬λ2}
4 {λ2}
Exemplo Rótulos
1 {¬λ3}
2 {λ3}
3 {¬λ3}
4 {λ3}
Exemplo Rótulos
1 {λ4}
2 {λ4}
3 {¬λ4}
4 {λ4}
3.1 Classi�cação de Dados Multirrótulo 26
Tabela 3.4: Conjunto de dados transformado usando o método Label Powerset.
Exemplo Rótulos
1 {λ1,4}
2 {λ3,4}
3 {λ1}
4 {λ2,3,4}
possíveis. Assim, dada uma nova instância, o classi�cador unirrótulo C retorna como saída
a classe mais provável, que neste caso é um conjunto de rótulos. A Tabela 3.4 mostra o
resultado da transformação do conjunto de dados da Tabela 3.2 usando o método Label
Powerset. A Figura 3.3 ilustra o processo utilizado pelo LP.
Figura 3.3: Processo utilizado pelo LP.
Um das vantagens deste método é que, ao contrário do BR, no LP, as correlações
entre os rótulos são consideradas. Contudo, é suscetível ao fato de, no caso de haver um
número muito grande de subconjuntos de rótulos, o número de rótulos de uma classe pode
crescer exponencialmente, resultando em muitas classes com poucos exemplos associados,
aumentando o custo computacional do LP e diminuindo a acurácia dos classi�cadores.
Além disso, o LP só pode prever con�avelmente conjuntos de rótulos (labelsets) observados
no conjunto de treinamento. Esta é uma importante limitação, uma vez que novos labelsets
tipicamente aparecerão em instâncias de teste.
3.1 Classi�cação de Dados Multirrótulo 27
3.1.1.3 Random K-labelsets
Tendo como objetivo minimizar os problemas do LP mencionados anteriormente, em
(TSOUMAKAS; KATAKIS; VLAHAVAS, 2010) foi proposta uma abordagem na