aprendizagem de mÁquina baseada na combinaÇÃo …livros01.livrosgratis.com.br/cp096773.pdf ·...
TRANSCRIPT
PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ CENTRO DE CIÊNCIAS BIOLÓGICAS E DA SAÚDE
LUCELENE LOPES
APRENDIZAGEM DE MÁQUINA BASEADA NA COMBINAÇÃO DE CLASSIFICADORES EM BASES DE
DADOS DA ÁREA DE SAÚDE
PÓS-GRADUAÇÃO EM TECNOLOGIA EM SAÚDE DISSERTAÇÃO DE MESTRADO
CURITIBA
2007
Livros Grátis
http://www.livrosgratis.com.br
Milhares de livros grátis para download.
ii
LUCELENE LOPES
APRENDIZAGEM DE MÁQUINA BASEADA NA COMBINAÇÃO DE CLASSIFICADORES EM BASES DE
DADOS DA ÁREA DE SAÚDE
Dissertação apresentada ao Curso de Pós-graduação em Tecnologia em Saúde da Pontifícia Universidade Católica do Paraná – Centro de Ciências Biológicas e da Saúde, como parte dos requisitos para a obtenção do título de Mestre em Tecnologia em Saúde. Área de Concentração: Informática em Saúde
Orientador: Prof. Dr. Edson Emílio Scalabrin
CURITIBA 2007
iii
FICHA CATALOGRÁFICA
LOPES, Lucelene. Aprendizagem de Máquina Baseada na Combinação de
Classificadores em Bases de Dados da Área de Saúde. Curitiba,
2007.//xxxp.// (Dissertação – Mestrado – Tecnologia em Saúde – Pontifícia
Universidade Católica do Paraná – Centro de Ciências Biológicas e da
Saúde).
ORIENTADOR: Edson Emílio Scalabrin DESCRITORES: 1. Aprendizagem de Máquina; 2. BAGGING; 3. BOOSTING; 4. J48
iv
v
FOLHA DE APROVAÇÃO
Lucelene Lopes
APRENDIZAGEM DE MÁQUINA BASEADA NA COMBINAÇÃO DE CL ASSIFICADORES EM BASES DE DADOS DA ÁREA DE SAÚDE
Dissertação apresentada ao Programa de Pós-Graduação em Tecnologia em Saúde da Pontifícia Universidade Católica do Paraná, como pré-requisito para a obtenção do título de mestre em Tecnologia em Saúde. Banca examinadora
Prof. Dr. _________________________ Instituição: ___________________
Julgamento: ______________________ Assinatura: ___________________
Prof. Dr. _________________________ Instituição: ___________________
Julgamento: ______________________ Assinatura: __________________
Prof. Dr. _________________________ Instituição: ___________________
Julgamento: ______________________ Assinatura: ___________________
vi
Dedicatória Às minhas filhas Karina Mylena e Maria Eduarda, motivos de minha busca infinita pelo crescimento moral, intelectual e profissional.
vii
AGRADECIMENTOS
A Deus por ter me guiado e concedido discernimento para fazer as escolhas
certas até aqui.
As minhas filhas por suportar e compreender a minha ausência, por todo
amor e constante apoio.
Ao meu esposo Paulo pelo amor, amizade, compreensão, incentivo e
dedicação. Sou grata por fazer parte da minha vida, sendo sempre meu refugio onde
encontro paz.
Ao Dirceu por me fornecer suporte em todos os momentos dessa caminhada
e por todos os sacrifícios que fez em prol de meu beneficio. Espero um dia poder
retribuir uma parte de tudo o que você fez por mim.
Ao meu orientador, Edson Emilio Scalabrin, pela confiança, incentivo e
paciência com que me acompanhou durante o desenvolvimento desse trabalho.
Aos meus queridos amigos: Alessandra Yamasaki, Caroline Riella, Silvia
Giertz e José Lucio, pelo auxílio, e pelo carinho da palavra amiga.
Agradeço a CAPES pela concessão da bolsa que foi um auxilio financeiro
imprescindível nesse ano de 2007.
E a todos aqueles que de alguma maneira contribuíram para que esse
trabalho fosse realizado.
viii
SUMÁRIO
LISTA DE FIGURAS................................... ........................................................................................... IX
LISTA DE QUADROS................................... .......................................................................................... X
LISTA DE TABELAS ................................... .......................................................................................... XI
LISTA DE ALGORITMOS................................ ..................................................................................... XII
RESUMO.............................................................................................................................................. XIII
ABSTRACT........................................... ...............................................................................................XIV
1. INTRODUÇÃO .................................................................................................................................... 1
1.1. OBJETIVO GERAL ...................................................................................................................... 4 1.2. OBJETIVOS ESPECÍFICOS ........................................................................................................ 4 1.3. ESTRUTURA DO DOCUMENTO................................................................................................. 4
2. REVISÃO DE LITERATURA ........................... ................................................................................... 5
2.1. DESCOBERTA DE CONHECIMENTO ........................................................................................ 5 2.1.1. Nomenclatura Básica............................................................................................................ 6 2.1.2. Etapas de Descoberta de Conhecimento............................................................................. 7
2.2. SELEÇÃO DE ATRIBUTOS....................................................................................................... 10 2.3. MÉTODOS DE CLASSIFICAÇÃO.............................................................................................. 13
2.3.1. Método J48 ......................................................................................................................... 14 2.3.2. Métodos Bagging e Boosting.............................................................................................. 23
2.4. TÉCNICAS ESTATÍSTICAS ESPECÍFICAS.............................................................................. 37 2.4.1. Validação Cruzada .......................................................................................................... 37 2.4.2. Teste Estatístico de Friedman............................................................................................ 38
2.5. TRABALHOS RELACIONADOS................................................................................................ 41
3. METODOLOGIA ..................................... .......................................................................................... 43
3.1. BASES DE DADOS.................................................................................................................... 45 3.2. CURVA DE APRENDIZAGEM: J48, BAGGING E BOOSTING.................................................. 48 3.3. NÚMERO DE CLASSIFICADORES: BAGGING E BOOSTING................................................. 52
4. RESULTADOS...................................... ............................................................................................ 57
4.1. ANÁLISE DA CURVA DE APRENDIZAGEM: J48, BAGGING E BOOSTING............................ 57 4.1.1. Curvas de Aprendizagem: Conjunto BD ............................................................................ 59 4.1.2. Curvas de Aprendizagem: Conjunto BDf ........................................................................... 62
4.2. NÚMERO DE CLASSIFICADORES........................................................................................... 66 4.2.1. Impacto do Número de Classificadores: Método BAGGING ................................................ 67 4.2.2. Impacto do Número de Classificadores: Método BOOSTING............................................... 70
5. CONCLUSÃO ....................................... ............................................................................................ 73
REFERÊNCIAS..................................................................................................................................... 76
ANEXO A – RESULTADOS BRUTOS DE TAXA DE ACERTO E GRÁ FICOS COM AS CURVAS DE APRENDIZAGEM ....................................... .......................................................................................... 80
ANEXO B – RESULTADOS BRUTOS DE TAXA DE ACERTO E GRÁ FICOS DO IMPACTO DO NÚMERO DE CLASSIFICADORES.......................... ........................................................................... 96
ix
Lista de Figuras
Figura 1: Etapas do Processo de Descoberta de Conhecimento. .......................................................... 8
Figura 2: Passos do processo de seleção de atributos. ....................................................................... 11
Figura 3: Exemplo de Árvore de Decisão ............................................................................................. 15
Figura 4 Árvore de Decisão calculada pelo Método J48 para a base de dados da Tabela 1. ............. 22
Figura 5 Esquema geral de funcionamento do método Bagging.......................................................... 25
Figura 6 Classificadores gerados para as três amostras da Tabela 4.................................................. 27
Figura 7 Esquema geral de funcionamento do método BOOSTING ....................................................... 30
Figura 8 Primeira amostra para a base de dados exemplo da Tabela 1 resultante da execução do
algoritmo Adaboost e o seu classificador.............................................................................................. 33
Figura 9 Segunda amostra para a base de dados exemplo da Tabela 1 resultante da execução do
algoritmo Adaboost e o seu classificador.............................................................................................. 34
Figura 10 Terceira amostra para a base de dados exemplo da Tabela 1 resultante da execução do
algoritmo Adaboost e o seu classificador.............................................................................................. 35
Figura 11 Curva de aprendizagem média para as bases de BD: J48, BAGGING e BOOSTING. ............. 61
Figura 12 Curva de aprendizagem média para as bases de BDf: J48, BAGGING e BOOSTING. ............ 65
Figura 13 Impacto médio do número de classificadores para o método BAGGING. .............................. 69
Figura 14 Impacto médio do número de classificadores para o método BOOSTING. ............................ 72
x
Lista de Quadros
Quadro 1 Vetor de pesos das instâncias após o primeiro passo. ............................................................... 33
Quadro 2 Vetor de pesos das instâncias após o segundo passo. .............................................................. 35
Quadro 3 Exemplo simplificado para aplicação do teste de Friedman ...................................................... 39
Quadro 4 Atribuição e soma de postos para o exemplo do Quadro 3. ...................................................... 39
Quadro 5 Características das bases de dados do conjunto BD.................................................................. 45
Quadro 6 Características das bases de dados após filtragem de atributos. ............................................. 46
Quadro 7 Eficácia dos filtros para seleção de atributos sobre a base arrhythmia. .................................. 47
Quadro 8 Bases de dados para os experimentos. ........................................................................................ 48
Quadro 9 Número de classificadores do primeiro experimento. ................................................................. 51
Quadro 10 Número de classificadores. ........................................................................................................... 55
Quadro 11 Valores percentuais de taxa de acerto para a curva de aprendizagem gerada para o
método J48 e as bases de dados de BD. ....................................................................................................... 60
Quadro 12 Valores percentuais de taxa de acerto para a curva de aprendizagem gerada para o
método BAGGING e as bases de dados de BD. .............................................................................................. 60
Quadro 13 Valores percentuais de taxa de acerto para a curva de aprendizagem gerada para o
método BOOSTING e as bases de dados de BD. ............................................................................................ 60
Quadro 14 Valores percentuais de taxa de acerto para a curva de aprendizagem gerada para o
método J48 e as bases de dados de BDf. ...................................................................................................... 63
Quadro 15 Valores percentuais de taxa de acerto para a curva de aprendizagem gerada para o
método BAGGING e as bases de dados de BDf. ............................................................................................. 63
Quadro 16 Valores percentuais de taxa de acerto para a curva de aprendizagem gerada para o
método BOOSTING e as bases de dados de BDf. ........................................................................................... 63
Quadro 17 Valores percentuais de taxa de acerto variando o número de classificadores gerados para
o método BAGGING sobre as bases de dados de BD. ................................................................................... 67
Quadro 18 Valores percentuais de taxa de acerto variando o número de classificadores gerados para
o método BAGGING sobre as bases de dados de BDf. .................................................................................. 67
Quadro 19 Teste Estatístico de Friedman para BAGGING............................................................................. 68
Quadro 20 Valores percentuais de taxa de acerto variando o número de classificadores gerados para
o método BOOSTING sobre as bases de dados de BD. ................................................................................. 70
Quadro 21 Valores percentuais de taxa de acerto variando o número de classificadores gerados para
o método BOOSTING sobre as bases de dados de BDf. ................................................................................ 70
Quadro 22 Teste Estatístico de Friedman para BOOSTING........................................................................... 71
xi
Lista de Tabelas
Tabela 1 Base exemplo para aplicação dos métodos de aprendizagem. ............................................ 18
Tabela 2 Valores de entropia e ganho de Informação para chamada inicial........................................ 19
Tabela 3 Parâmetros de entrada das chamadas recursivas da função C4.5....................................... 19
Tabela 4 Valores de entropia e ganho de Informação para primeira chamada recursiva. ................... 20
Tabela 5 Parâmetros de entrada das chamadas recursivas da função C4.5....................................... 20
Tabela 6 Valores de entropia e ganho de Informação para quarta chamada recursiva....................... 21
Tabela 7 Valores de entropia e ganho de Informação para quinta chamada recursiva. ...................... 21
Tabela 8 Instâncias a serem classificadas pelo método J.48............................................................... 22
Tabela 9 Três amostras para a base de dados exemplo da Tabela 1.................................................. 26
Tabela 10 Instâncias a serem classificadas pelo método Bagging.. .................................................... 27
Tabela 11 Instâncias a serem classificadas pelo método Boosting...................................................... 36
Tabela 12 Identificador Numérico das Bases de Dados Originais........................................................ 58
xii
Lista de Algoritmos
Algoritmo 1 Função iterativa do algoritmo C4.5 (base para a implementação do método J48). .......... 17
Algoritmo 2 Geração de Classificadores através do Método BAGGING. ................................................ 23
Algoritmo 3 Adaboost – Geração de Classificadores através do Método BOOSTING............................ 31
Algoritmo 4 Estudo da Curva de Aprendizagem. .................................................................................. 50
Algoritmo 5 Estudo do Impacto do Número de Classificadores............................................................ 54
xiii
RESUMO
Atualmente a maior parte dos problemas de tomada de decisão não tem por desafio o tratamento numérico, mas sim a transformação de dados e informações em conhecimento, principalmente quando as bases de dados dizem respeito à saúde. Tais bases, em geral, possuem grande número de atributos (variáveis), pequeno número de ocorrências (instâncias) e grande número de valores ausentes, tornando os dados redundantes e irrelevantes, do ponto de vista da aprendizagem de máquina. O propósito central deste trabalho é a experimentação de métodos de aprendizagem de máquina simples (J48), combinado com métodos de aprendizagem mais sofisticados (BAGGING e BOOSTING) sobre bases da área da saúde, a fim de se verificar a eficiência destes métodos e sugerir soluções eficientes para a descoberta de conhecimento. A verificação da eficiência dos métodos foi feita através de curvas de aprendizagem resultantes da aplicação de cada um destes métodos ao mesmo conjunto de bases de dados da área da saúde. Para cada conjunto de bases de treinamento obteve-se ainda o impacto do número de classificadores combinados sob a eficiência dos métodos BAGGING e BOOSTING. Um viés importante no trabalho foi a análise das bases na sua forma original e submetidas a uma técnica de seleção de atributos. Como contribuição deste trabalho apresenta-se uma analise que culmina na recomendação de um deles. Obviamente, tal recomendação é válida quando as características das bases se assemelham àquelas das bases utilizadas no contexto deste trabalho.
Palavras-chaves: Aprendizagem de Máquina, Curvas de Aprendizagem, J48, BAGGING, BOOSTING.
xiv
ABSTRACT Nowadays most decision problems don’t have as a challenge the numeric treatment, but the transformation of data and information into knowledge, specially, when data bases are related with health. These health data bases, in general, have many attributes, few instances and many missing vales, which, regarding machine learning, leads to redundant and irrelevant data. The main purpose oh this work is the experimentation of a simple machine learning method (J48) and two more sophisticated methods (BAGGING e BOOSTING) to health data bases, in order to verify the efficiency of these methods and suggest efficient solutions for knowledge discovery. The methods efficiency was evaluated by the generation of learning curves to each method over the same set of health data bases. Another part of this work is the analysis of the impact of the number of combined classifiers in the application of methods BAGGING and BOOSTING. Another important point of this work was the application of experiments in data bases in their original format and also the same bases submitted to an attribute selection technique. As this work contribution, an analysis of the experiments is presented leading to the recommendation of one of the machine learning methods. Evidently, such recommendation is valid only for data bases with the same characteristics as those used in this work.
Key-words: Machine Learning, Learning Curve, J48, BAGGING, BOOSTING.
1. Introdução
Desde o advento dos computadores muitos esforços foram realizados em
torno dos problemas ligados ao processamento de grandes bases de dados. As
primeiras soluções tinham por objetivo acelerar processos triviais de
manipulação numérica de grandes volumes de dados. Adicionalmente, tem-se,
nos dias de hoje, também um grande interesse na obtenção de conhecimentos
a partir de bases de dados.
Em outras palavras, o desenvolvimento da informatização e também a
evolução constante dos meios para armazenamento de grandes massas de
dados, nos mais diversos setores da sociedade, deram origem a uma
significativa quantidade de dados estruturados em bases digitais. Apesar destes
dados se encontrarem em bases estruturadas, suas análises acabam não
ocorrendo na forma e velocidade desejada. Consequentemente, isto contribui
para que uma tomada de decisão seja frequentemente baseada em opiniões
pessoais, o que é claramente indesejável no mundo de hoje. Por esta razão,
todo e qualquer esforço no tocante ao desenvolvimento de ferramentas que dão
apoio às tarefas de análise, interpretação e relacionamento dos dados
disponíveis são de grande importância [GOLDSCHMIDT; PASSOS, 2005].
Um dos casos típicos onde encontramos este tipo de desafio são as
bases de dados da saúde. Estas bases possuem grande número de atributos
(ou variáveis), pequeno número de ocorrências (ou instâncias/exemplos) e
grande número de valores ausentes. Possuem também muitos dados
redundantes e irrelevantes do ponto de vista da aprendizagem de máquina.
Todas estas características tornam o problema de busca de conhecimento em
bases da saúde um caso suficientemente particular digno de estudo.
No que diz respeito à tomada de decisão, o caso das bases de dados da
área da saúde torna-se ainda mais sensível. Por exemplo, o profissional de
saúde frequentemente analisa individualmente os dados de cada paciente e não
dispõe com facilidade de uma visão geral que lhe forneça parâmetros de
comparação. Este problema se torna ainda mais crítico, se considerarmos que
as tomadas de decisão na área da saúde são cotidianas e as conseqüências
podem ser fatais devido à ausência de informações confiáveis, ou mesmo pela
2
interpretação errônea de dados. Uma maneira de reduzir esse problema é por
meio da construção e análise de bases de dados que possam prover essa visão
geral necessária à tomada de decisão, bem como dispor métodos e
mecanismos eficientes e eficazes para auxiliar a tomada de decisão.
De forma geral, o processo de descoberta do conhecimento em bases de
dados tem desenvolvido-se com a finalidade de identificar padrões relevantes
ao domínio estudado. Devido às características das bases da área da saúde
supracitadas, o uso de técnicas de descoberta do conhecimento nos parece
essencial em particular, técnicas baseadas na geração de classificadores
simbólicos (explícitos), bem como, na combinação de classificadores visando a
obtenção de conhecimentos com alta taxa de acerto.
O propósito central deste trabalho é a experimentação de métodos
sofisticados de aprendizagem de máquina com o intuito de sugerir soluções
eficientes para a descoberta de conhecimento em bases de dados da área da
saúde. Neste sentido, o primeiro esforço de pesquisa realizado foi buscar bases
de dados que fossem representativas. Para tanto, um conjunto de quinze bases
foram utilizadas. Tais bases são comumente utilizadas em pesquisas na área da
saúde e estão disponibilizadas para a comunidade científica por intermédio do
grupo de aprendizagem de máquina da Escola de Computação e Informática da
Universidade de Califórnia – Irvine [UCI, 2007]. A escolha destas bases foi
realizada por meio de uma análise detalhada onde buscou-se identificar bases
de dados com certo grau de diversidade em termos de quantidade de atributos,
quantidade de instâncias e número de classes.
Outro fator importante neste trabalho é o fato das bases de estudo terem
sido analisadas tanto na sua forma original, quanto na sua forma reduzida
através da aplicação de técnicas de seleção de atributos [LIU; YU, 2005],
[HALL; HOLMES, 2003]. A seleção de atributos é uma das técnicas mais
promissoras para o tratamento de bases de dados complexas e frequentemente
incompletas como é o caso das bases da área da saúde. Desta forma, algumas
opções de seleção de atributos foram analisadas e todos os testes conduzidos
nesta dissertação foram feitos também com a aplicação de seleção de atributos.
Os métodos escolhidos para o estudo desenvolvido nesta dissertação
dizem respeito a um conjunto de algoritmos que implementam algumas técnicas
de aprendizagem de máquina. Tais métodos são, ao mesmo tempo,
3
representativos das novas tecnologias de tratamento da informação, bem como
reconhecidos pela comunidade científica da área de descoberta de
conhecimento. Os métodos utilizados foram: J48, BAGGING e BOOSTING, nas
suas versões implementadas no software Weka (Waikato Environment for
Knowledge Analysis) versão 3.4 [SCUSE; REUTEMANN, 2007] que foi utilizado
para todas as experimentações deste estudo.
De um ponto de vista prático, esta dissertação tem dois objetivos
distintos. O primeiro objetivo é a avaliação da eficiência da aprendizagem de
máquina que utiliza métodos de combinação de classificadores, sob a ótica da
análise de suas curvas de aprendizagem [TAN; STEINBACH; KUMAR, 2006],
[MONARD; BARANAUSKAS, 2003]. O segundo objetivo concerne a verificação
do impacto da variação do número de classificadores na eficiência dos métodos
utilizados [HALL, 2000], [BREIMAN, 2000], [KUNCHEVA; SKURICHINA; DUIN,
2002].
A verificação da eficiência dos métodos foi feita por meio da aplicação de
cada um dos métodos ao mesmo conjunto de bases de dados e observando-se
a taxa de acerto obtida para os classificadores resultantes. A curva de
aprendizagem, em particular, foi obtida gerando para cada base 10 amostras de
diferentes tamanhos e para cada uma destas amostras observou-se a taxa de
acerto. Para a obtenção das amostras utilizou-se o método estatístico
resampling (ou re-amostragem).
O impacto da variação do número de classificadores na eficiência dos
métodos foi verificado através da análise estatística dos resultados de taxa de
acerto para cada conjunto de classificadores. Com este propósito desenvolveu-
se uma análise criteriosa da eficiência que inclui a verificação da significância
estatística dos resultados obtidos através do teste de Friedman [SIEGEL, 1975],
[STATISTICA, 2007].
De forma geral, espera-se determinar o método mais eficiente e analisar
o impacto do número de classificadores. Tal eficiência foi medida sobre distintas
bases de dados sem seleção de atributos e com seleção de atributos (ou
redução de dimensionalidade). Como resultado geral, espera-se corroborar ou
não com a análise teórica e bibliográfica dos resultados obtidos.
4
1.1. OBJETIVO GERAL
O objetivo geral desta dissertação é a experimentação e o estudo de três
métodos de aprendizagem de máquina com o intuito de verificar as suas
eficiências, bem como a eficácia da utilização de técnicas de seleção de
atributos sobre um conjunto de bases de dados distintas em termos de número
de atributos, classes e instâncias.
1.2. OBJETIVOS ESPECÍFICOS
Os objetivos específicos são:
a) avaliar a eficiência (ou a taxa de acerto da classificação) dos
métodos de aprendizagem de máquina: J48, BAGGING e BOOSTING.
b) avaliar o impacto da variação incremental do número de
classificadores na eficiência (ou a taxa de acerto da classificação)
dos métodos BAGGING e BOOSTING;
c) aplicar o teste estatístico (FRIEDMAN) para verificar qual o impacto
do aumento do número de classificadores na eficiência dos
métodos BAGGING e BOOSTING.
Têm-se aqui, de um lado, o método J48 que não faz uso da combinação
de classificadores, e do outro lado, os métodos BAGGING e BOOSTING que
utilizam a combinação de classificadores. Em resumo, estes métodos serão
analisados sob a ótica de curvas de aprendizagem aplicados a 15 bases de
dados teste originais e suas versões filtradas, ou seja, com seleção de atributos.
1.3. ESTRUTURA DO DOCUMENTO
Esta dissertação apresenta a seguir um capítulo que examina alguns
conceitos básicos da área de descoberta de conhecimento, a saber, seleção de
atributos, métodos de aprendizagem de máquina e técnicas estatísticas. O
terceiro capítulo apresenta a metodologia empregada. O quarto capítulo
apresenta os resultados numéricos obtidos e suas respectivas análises. A
conclusão sumariza as contribuições obtidas e cita possíveis trabalhos futuros à
pesquisa desenvolvida nesta dissertação. Finalmente, os dois anexos desta
dissertação apresentam gráficos e resultados detalhados.
5
2. Revisão de Literatura
Nesta seção são apresentados, de forma breve, alguns conceitos
importantes à compreensão dos trabalhos aqui desenvolvidos. Desta forma, as
subseções a seguir dão noções básicas sobre descoberta de conhecimento
(Seção 2.1), sobre seleção de atributos (Seção 2.2.), sobre métodos de
classificação (Seção 2.3), além de uma série de técnicas estatísticas
específicas utilizadas ao longo deste trabalho (Seção 2.4).
2.1. DESCOBERTA DE CONHECIMENTO
O Processo de descoberta de conhecimento em bases de dados é
conhecido como KDD, advindo do inglês Knowledge Discovery in Databases e
consiste no processo de descobrir e procurar a informação implícita e útil em
grandes bases de dados. O termo KDD foi formalizado em 1989 para sumarizar
o amplo conceito de procurar conhecimento a partir de bases de dados.
Segundo a literatura da área, KDD é um processo, de várias etapas, não trivial,
interativo e iterativo, para identificação de padrões compreensíveis, válidos,
novos e potencialmente úteis a partir de grandes conjuntos de dados [FAYYAD;
PIATETSKY-SHAPIRO; SMYTH, 1996]. Desta forma, é necessária tanto a
interação humana, quanto eventuais repetições do processo que normalmente é
bastante complexo.
No contexto deste trabalho, interessam as bases de dados que possuem
informações importantes, a exemplo dos padrões de procedimento, gerais ou
específicos, e que podem ser usadas para melhorar a tomada de decisão na
área da saúde. Neste processo de descoberta do conhecimento, faz-se
necessário, em primeiro lugar, o entendimento quanto à área de aplicação,
chegando-se, por fim, até a interpretação dos resultados obtidos, ou seja, o
conhecimento almejado.
Não se pretende aqui fazer uma revisão completa do processo de
descoberta de conhecimento, mas apenas citar vários conceitos básicos que
permitam o entendimento da contribuição central da dissertação nos próximos
6
capítulos. Neste sentido, esta seção descreve inicialmente uma nomenclatura
básica da área (Seção 2.1.1) que permite a identificação dos termos atributos,
instâncias, valores e classes. Em seguida define-se a visão da literatura das
etapas de descoberta de conhecimento (Seção 2.1.2) com o foco em mineração
de dados.
2.1.1. Nomenclatura Básica
Inicialmente, adota-se a seguinte nomenclatura para as informações em
uma base de dados:
• Atributos são as informações que se pode ter em cada uma das
instâncias. Um atributo descreve uma característica ou um aspecto
que as instâncias podem possuir. Imaginando uma base de dados
como uma tabela, os atributos são habitualmente as colunas da
tabela;
• Instâncias são conjuntos de valores, até um para cada atributo,
que definem as ocorrências de uma base de dados. Note-se que
uma instância pode ter alguns atributos sem valores associados.
Imaginando a base de dados como uma tabela, as instâncias são
habitualmente as linhas da tabela;
• Valores são as informações que uma determinada instância pode
ter para cada atributo. Os tipos destes valores podem ser valores
numéricos ou categóricos. Imaginando uma base de dados como
uma tabela, os valores são as informações contidas em cada uma
das células da tabela;
• Classes são as possíveis categorias em que as instâncias podem
ser agrupadas. Na verdade, a classe representa a informação que
se quer extrair da base de dados, sendo, portanto, o objetivo da
aprendizagem supervisionada determinar a classe correta para
cada instância. Em algumas bases de dados, as classes podem
ser definidas por um único atributo que é chamado de atributo
preditor, pois o seu valor define, ou prediz, qual será a classe na
qual cada instância será classificada.
7
Segundo a literatura [TAN; STEINBACH; KUMAR, 2006], os atributos
podem ser classificados em quatro tipos básicos:
• ATRIBUTOS CATEGÓRICOS NOMINAIS: seus valores fornecem
informações suficientes para apenas distinguir um objeto do outro.
Exemplo: cor dos olhos, sexo;
• ATRIBUTOS CATEGÓRICOS ORDINAIS: são atributos qualitativos como os
nominais, mas seus valores servem não somente para distinguir os
objetos, pois também permitem uma ordem natural entre eles.
Exemplo: número de ruas, notas;
• ATRIBUTOS NUMÉRICOS INTERVALARES: não representam apenas
informações pontuais, mas subconjuntos de seqüências ordenadas
por uma unidade de medida. Exemplo: datas, velocidades permitidas;
• ATRIBUTOS NUMÉRICOS DE RAZÃO OU DIFERENÇAS: representações
numéricas significativas expressando relações entre grandezas.
Exemplos: idade, massa corporal.
2.1.2. Etapas de Descoberta de Conhecimento
O processo de descoberta de conhecimento em bases de dados é
dividido em três etapas operacionais básicas tendo como etapa central a parte
historicamente mais complexa, a mineração de dados. De fato, alguns autores
ainda confundem a etapa de mineração de dados com a totalidade do processo.
No entanto, os autores mais recentes [REZENDE, 2003] dividem este processo
em três etapas: pré-processamento, mineração de dados e pós-processamento.
A Figura 1 apresenta esquematicamente as etapas do processo de
descoberta de conhecimento de acordo com a abordagem utilizada nesta
dissertação. Note-se que aqui não existe uma preocupação com a definição
clássica de KDD que pode ser encontrada em maior detalhe em
[GOLDSCHMIDT; PASSOS, 2005], [DATE, 2004] e [FAYYAD; PIATETSKY-
SHAPIRO; SMYTH, 1996].
8
Figura 1: Etapas do Processo de Descoberta de Conhecimento.
Na etapa de pré-processamento são analisados e classificados os
dados para definir tipos e formatos dos mesmos a fim de determinar a base a
ser trabalhada na mineração de dados. Especificamente, o objetivo do pré-
processamento é disponibilizar para a etapa seguinte uma base de dados
coerente. Nesta etapa define-se a estratégia para resolver o problema de não
disponibilidade de dados, podendo ir desde uma simples consulta a um banco
de dados, até um procedimento complexo composto por diversas conversões de
tipos e formatos de dados.
Não é usual que as bases de dados estejam prontas para mineração.
Assim, durante e após o processo de extração, os dados devem ser formatados
para posterior padronização de caracteres, concatenação, formato de
representação, limpeza e redução do conjunto de dados. Algumas das
operações mais comuns desta etapa são, segundo a literatura, limpeza,
transformação e consolidação de dados. Tarefas usuais nesta etapa são:
correções de digitação, redução e extensão de escala, conversão de unidades,
normalização de valores, etc. Cabe salientar que mesmo que sejam importantes
para o processo como um todo, este tipo de tarefa não é objeto deste estudo,
pois as bases aqui utilizadas já sofreram previamente estes tratamentos.
9
Este não é o caso da seleção de atributos que é uma das tarefas mais
complexas do pré-processamento, ainda que não seja obrigatória. A seleção de
atributos visa reduzir a dimensão da base de dados eliminando atributos
eventualmente redundantes ou desnecessários para a classificação almejada.
Esta tarefa é particularmente importante no contexto desta dissertação e será
vista em maior detalhe na Seção 2.2 que é dedicada a definição de seus
conceitos básicos.
A etapa de mineração de dados é a principal etapa do processo KDD,
sua finalidade é extrair padrões dos dados. Esta fase é considerada o centro do
processo e se preocupa em ajustar modelos ou determinar padrões a partir dos
dados observados [DINIZ; LOUZADA-NETO, 2000]. De uma forma mais
precisa, seu objetivo é analisar uma base de dados preparada com a finalidade
de descobrir similaridades que possam evidenciar um padrão de
comportamento nos dados. Esta análise se torna interessante devido a estes
padrões serem dificilmente descobertos com a utilização de ferramentas
comuns de acesso a base de dados, como por exemplo, simples consultas
SQL- Structured Query Language [DATE, 2000]. A mineração de dados também
pode ser vista como uma forma de selecionar, explorar e modelar grandes
conjuntos de dados para detectar padrões de comportamento [FAYYAD;
PIATETSKY-SHAPIRO; SMYTH, 1996].
Esta etapa utiliza técnicas baseadas em análise estatística e inteligência
artificial (IA), mais especificamente Aprendizagem de Máquina. Na mineração
de dados é escolhida a tarefa a ser executada e são definidos os algoritmos que
a realizarão [HOLSHEIMER, 1994]. Dentre as tarefas possíveis, as usuais são
regressão, classificação, associação, agrupamento em clusters e sumarização.
No contexto desta dissertação, apenas a tarefa de classificação é estudada.
Para esta tarefa os algoritmos disponíveis variam significativamente [FREITAS,
2002]. Dentre eles o foco deste trabalho é sobre algoritmos indutores de árvore
de decisão. Um dos principais exemplos destes algoritmos é o C4.5 [QUINLAN,
1993] que é utilizado nesta dissertação na sua versão java, denominada J48.
No contexto desta dissertação, utilizam-se também técnicas alternativas
de mineração de dados através do uso de combinação de classificadores. Desta
forma, além do método J48 que é uma forma tradicional de classificação,
utilizam-se também os métodos BAGGING [BREIMAN, 1996] e BOOSTING
10
[FREUND; SCHAPIRE, 1997] e [SCHAPIRE; LEE, 1997] que são formas mais
sofisticadas e bastante difundidas na área para classificar bases de dados pelo
uso de combinação de classificadores.
A etapa de pós-processamento tem por principal objetivo melhorar a
compreensão e validar o conhecimento descoberto, analisando os resultados
obtidos na etapa de mineração de dados. Os padrões identificados e
transformados em conhecimento passam a ser utilizados para explicar os
fenômenos observados e para apoiar a tomada de decisão.
Dentre as diversas maneiras de abordar a etapa de pós-processamento,
o caso mais freqüente é uma análise manual feita por um especialista da área
correspondente aos dados minerados. No entanto, mesmo em se tratando de
uma análise manual, o especialista pode valer-se de ferramentas teóricas como
análise estatística, padrões de procedimento, etc. Concomitante a esta análise,
os conhecimentos minerados podem ser consolidados em forma de relatórios
demonstrativos com a documentação e explicação das informações relevantes
encontradas em cada etapa do processo de KDD.
No contexto deste trabalho, a etapa de pós-processamento é
representada pela análise dos resultados de taxa de acerto dos métodos
obtidos manualmente pela análise de gráficos, mas também pela aplicação de
testes estatísticos que validam as hipóteses consideradas. A Seção 3 –
Metodologia – descreve estes passos em detalhe.
2.2. SELEÇÃO DE ATRIBUTOS
Dentre as operações usuais de pré-processamento um tipo de adaptação
de conjunto de dados, a Seleção de Atributos, é de uso freqüente para tornar a
aprendizagem mais eficiente, tanto no desempenho, quanto nas taxas de
acerto. Este é um processo que visa escolher um subconjunto de atributos com
o máximo possível de características relevantes à classificação das instâncias,
porém de tamanho tão reduzido quanto possível [LIU; MOTODA, 1998].
De acordo com [LIU; YU, 2005], a busca pelo subconjunto adequado de
atributos é composta de quatro passos conforme ilustra a Figura 2. Esta busca
é feita através da sucessiva escolha de subconjuntos de atributos candidatos
11
que são verificados frente a um critério de parada, até que o resultado obtido
seja validado [DASH; LIU, 1997].
Figura 2: Passos do processo de seleção de atributos.
As formas de geração do subconjunto candidato podem divergir entre
diversos algoritmos. Segundo [LIU; YU, 2005], esta tarefa pode ser feita por
busca completa (por exemplo, branch and bound e beam search), busca
seqüencial (por exemplo, forward, backward e bidirectional) ou busca aleatória
(por exemplo, random start hill climbing e simulated annealing).
No caso específico desta dissertação foram considerados algoritmos de
busca seqüencial do tipo forward, especificamente BestFirst, e busca completa
do tipo ordenação, especificamente RankSearch. Enquanto a busca seqüencial
do tipo forward implementada pelo algoritmo BestFirst parte de um conjunto
vazio e vai adicionando atributos, a busca completa implementada pelo
Ranksearch cria um nova ordem (rank) de atributos baseada em uma métrica
pré-definida. Como veremos a seguir, vários tipos de medida são possíveis,
mas no contexto desta dissertação serão examinados dois tipos de métricas: as
medidas por dependência (CFS – Correlation-based Feature Selection) e
medidas por ganho de informação (GainRatio). A Seção 3 – Metodologia –
apresenta mais detalhes de como o uso destas opções foi considerado nos
experimentos.
A avaliação do subconjunto candidato, por sua vez, pode ser feita por
análises com critérios independentes do algoritmo de mineração que será
utilizado posteriormente, como é o caso dos modelos/abordagens do tipo filter,
ou por análises com critérios dependentes do algoritmo de mineração, como é o
caso dos modelos/abordagens do tipo wrapper [KOHAVI; JOHN, 1998]. No
escopo desta dissertação, vão interessar as abordagens do tipo filter. Nestes
12
casos podem ser empregados diversos tipos de medidas para análise, sendo as
mais comuns as medidas de distância, informação, dependência e consistência.
Neste trabalho foram consideradas medidas de dependência
(CfsSubsetEval) e consistência (ConsistencySubsetEval) conforme descrito na
Seção 3 – Metodologia. As medidas de dependência, também chamadas de
medidas de correlação ou similaridade, procuram medir o quanto o valor de um
atributo pode ser previsto pelo valor de outro atributo. Desta forma, um certo
atributo que tenha uma maior relação com o atributo preditor (classe) terá
preferência sobre outros atributos que tenha uma relação menor. Já as medidas
de consistência, diferem das medidas de dependência por estarem mais
relacionadas com a eliminação de inconsistências entre valores dos atributos e
classes. Desta forma, tende-se a eliminar atributos que possam ter instâncias
com valores diferentes, mas que correspondam a uma mesma classe.
O teste do critério de parada toma uma decisão se a busca por um
subconjunto deve ser encerrada ou não. Usualmente, quatro tipos de critérios
de parada podem ser usados de forma concomitante ou não: (i) o número total
de possibilidades de subconjuntos foi alcançado; (ii) um limite máximo de
iterações ou mínimo de atributos foi alcançado; (iii) um novo subconjunto
encontrado não adiciona qualidade de forma significativa; e (iv) a qualidade do
subconjunto sendo avaliado é superior a um limite pré-definido.
Independente do critério de parada, cabe salientar que, caso a avaliação
dos subconjuntos seja feita utilizando a abordagem filter, apenas as
características gerais dos dados irão influenciar a qualidade do subconjunto
candidato. Por outro lado, a abordagem wrapper considera um algoritmo
específico de mineração utilizando seu desempenho como critério de parada.
Procura-se pelo melhor conjunto de características para maximizar o
desempenho do algoritmo de mineração considerado. Consequentemente, a
abordagem wrapper tende a tornar o teste do critério de parada
computacionalmente mais custoso se comparado à abordagem filter.
Finalmente, a validação do resultado pode ser feita comparando a
qualidade do subconjunto resultante com padrões já conhecidos. No entanto,
isto raramente acontece para casos reais, onde o mais comum é a simples
comparação da qualidade da base original frente à qualidade da base
modificada com a seleção de atributos.
13
No contexto desta dissertação a validação do resultado é feita utilizando
J48 como método de aprendizagem para comparar a taxa de acerto obtida com
a base original frente à taxa de acerto obtida com a base reduzida pela seleção
de atributos. Note-se que esta validação faz parte do processo de seleção de
atributos. Esta comparação não deve ser confundida com a análise comparativa
de métodos de aprendizagem que é o tema central da discussão e que é feita
em etapas posteriores à seleção de atributos.
2.3. MÉTODOS DE CLASSIFICAÇÃO
A técnica de classificação tenta prever a classe do objeto representado
por uma instância baseada nos valores de seus atributos. Segundo vários
autores, este processo de classificação é uma das técnicas possíveis de
aprendizado de máquina [GOLDSCHIMDT; PASSOS, 2005], [RUSSEL;
NORVIG, 2002].
Para se executar a tarefa de classificação, são usados dados que
consistem em um conjunto de atributos denominados previsores, e um atributo
denominado preditor (classe). Os atributos previsores são utilizados para definir
uma classificação efetiva dos registros pertencentes à base de dados em
estudo. O atributo preditor por sua vez é utilizado como uma hipótese de
classificação que será validada ou não pela análise resultante da classificação
através dos atributos previsores [CARVALHO, 2001].
Neste contexto, um algoritmo de classificação, dito algoritmo indutor,
consiste em dividir a base de dados em dois conjuntos de instâncias
mutuamente exclusivas. Um dos subconjuntos é chamado conjunto de
treinamento e o outro conjunto de teste. Inicialmente, o conjunto de treinamento
é percorrido, analisando as relações existentes entre os atributos previsores e o
atributo preditor. Estas relações são então usadas para prever a classe dos
registros presentes no conjunto de teste, que será a próxima ação do
classificador [MITCHELL, 1997].
Em um segundo momento, quando o algoritmo analisará o conjunto de
teste, o atributo preditor não é considerado. Após a previsão das classes dos
registros do conjunto de teste, essas classes são comparadas com as classes
14
da hipótese definida pelo atributo preditor. Com isso pode-se comparar o
número de previsões corretas e incorretas [TAN; STEINBACH; KUMAR, 2006;
BARANAUSKAS, 2001].
A tarefa de classificação procura elevar ao máximo a taxa de
classificações corretas nos dados de teste [GOLDSCHMIDT; PASSOS, 2005],
[DATE, 2004]. Esta taxa é definida pela razão entre o número de exemplos
classificados corretamente e o número total de exemplos do conjunto de teste.
Quando o algoritmo indutor é aplicado sobre uma base de dados, testam-
se várias hipóteses para aproximar-se da classificação expressa pelo atributo
preditor originalmente definido. Se diversas dessas hipóteses são consistentes,
pode ocorrer falta de maiores informações para que o algoritmo defina qual a
melhor hipótese de classificação. Neste caso, o algoritmo usa o seu viés (bias),
que mede o quanto, na média, cada uma das hipóteses induzidas se aproxima
da classificação expressa pelo atributo preditor [TAN; STEINBACH; KUMAR,
2006]. De fato segundo [MITCHELL, 1998]: “Aprendizado sem bias é
impossível”, porque sempre existe um grande número de hipóteses
consistentes.
Os métodos de classificação de interesse são o J48, um método baseado
no algoritmo C4.5 [QUINLAN, 1993] implementado em java, e dois métodos
baseados em combinação de classificadores: BAGGING [BREIMAN, 1996] e
BOOSTING [FREUND; SCHAPIRE, 1997]. As próximas seções descrevem estes
métodos em detalhe.
2.3.1. Método J48
O método J48, tem como base o algoritmo C4.5 que é um dos mais
tradicionais para a tarefa de classificação e pertence à família TDIDT – Top
Down Induction of Decision Tree. Este algoritmo é inspirado no algoritmo ID3
[QUINLAN, 1986] e o ponto comum de todos eles é a estratégia de divisão-e-
conquista. Especificamente, o método J48 procura gerar uma árvore de decisão
a partir de uma abordagem recursiva de particionamento da base
[GOLDSCHIMDT; PASSOS, 2005]. Uma árvore de decisão é um modo simples
de representar o conhecimento extraído de uma base de dados genérica. Sua
15
função é sistematizar os dados facilitando a decisão a ser tomada [RUSSEL;
NORVIG, 2002].
Toda árvore de decisão possui uma estrutura composta de nós de
decisão, que contém testes sobre algum atributo do conjunto de dados, e folhas,
que correspondem a uma classe, ou seja, um diagnóstico ou classificação do
atributo preditor. A escolha de quais atributos devem ser colocados na raiz ou
nos nós de decisão deve ser feita por um algoritmo específico.
Na Figura 3 temos um exemplo de árvore de decisão onde temos na raiz
um atributo (A1) que pode ter três valores distintos, a saber V1, V2 e V3. O
atributo A1 com valor V2 permite a conclusão de que a instância pertence à
classe X. Porém se o atributo A1 sozinho não é conclusivo, ou seja, ele tem
valores V1 ou V3, os nós de decisão abaixo da raiz da árvore testam, caso A1
tenha valor V1, o atributo A2 para os valores W1 ou W2, que concluem
respectivamente as classes S ou T. Por outro lado, se o atributo A1 tem valor
V3, o atributo A3 é testado para os valores U1 ou U2, concluindo
respectivamente as classes Y ou Z.
Figura 3 : Exemplo de Árvore de Decisão
16
O pseudo-código a seguir (Algoritmo 1) apresenta os detalhes do método
J48 que trata de um algoritmo recursivo estruturado na forma de uma função.
Esse algoritmo é uma ligeira adaptação do algoritmo apresentado por Eklund e
Hoang. [EKLUND; HOANG, 2001]. Cada chamada desta função recebe como
entrada uma base de dados T (um conjunto de instâncias) e um subconjunto de
atributos A (que pode ser um conjunto vazio, ou todos os atributos da base T).
Esta função retorna como saída uma árvore, ou sub-árvore, de decisão
apontada pelo seu nó raiz D. O algoritmo consiste em fazer uma chamada inicial
à função C4.5 passando como parâmetros de entrada: T – a totalidade da base;
e A – um conjunto contendo todos os atributos. O parâmetro de saída desta
chamada inicial será a árvore de decisão apontada pelo seu nó raiz em D.
A geração de uma árvore de decisão dá-se por meio da chamada da
função C4.5 e suas chamadas recursivas. A cada execução das linhas 6, 10 ou
26 teremos a criação de uma folha na árvore, enquanto as chamadas recursivas
(linha 22) representam a criação de um nó de decisão e consequentemente a
criação de uma sub-árvore abaixo dele.
Um dos pontos críticos deste algoritmo é a escolha do atributo a ser
utilizado em cada um dos nós de decisão, seja ele o nó raiz ou um dos demais
nós de decisão. Esta escolha está representada nas linhas 13 e 14 do Algoritmo
1. A primeira tarefa (linha 13) consiste em considerar todos os testes que
dividem a base em dois ou mais grupos. Esta tarefa é feita observando para
cada um dos atributos do conjunto A o ganho de informação em relação à
classificação desejada. Os subconjuntos gerados são analisados através do
cálculo da entropia de cada subconjunto de instâncias. Esta entropia é utilizada
para calcular o ganho de informação que o atributo considerado obteve [GRAY,
1990]. A segunda tarefa (linha 14) é um teste que deve optar por uma das
seguintes alternativas: (i) escolher o atributo com o maior ganho e chamada
recursiva da função C4.5 para criar uma sub-árvore (bloco de instruções das
linhas 16 a 24); ou (ii) assumir que não é necessário criar um nó de decisão e
apenas adicionar uma folha com a classe mais freqüente (linha 26).
17
Entradas : uma base de dados T um conjunto de atributos A Saída : uma (sub)árvore de decisão D 1 função C4.5( T, A, D ) 2 inicio 3 cria um nó de decisão em D 4 se todas instâncias de T pertencem a mesma classe 5 então 6 atribui ao nó apontado por D uma única folha identificando a classe 7 senão 8 se A é um conjunto unitário 9 então 10 atribui ao nó apontado por D uma única folha identificando o valor mais comum do atributo preditor 11 senão 12 início 13 calcula o ganho de informação de cada um dos atributos de A 14 se um dos atributos de A possui ganho de informação médio maior que os demais 15 então 16 início 17 define at o atributo com maior ganho 18 para cada valor v do atributo at faça 19 início 20 adiciona uma sub-árvore d ao nó apontado por D 21 define Tv a base com instâncias de T onde at = v 22 C4.5 ( Tv, A–{ at}, d ) 23 fim . 24 fim. 25 senão 26 atribui ao nó apontado por D uma única folha identificando o valor mais comum do atributo preditor 27 fim . 28 fim .
Algoritmo 1 Função iterativa do algoritmo C4.5 (base para a implementação do método J48).
A entropia de um dado atributo ai para o valor v é calculada pelo
somatório do percentual de instâncias que pertencem a cada classe do atributo
preditor através da seguinte fórmula:
Entropia(ai,v) = – ∑ pc,v log2 pc,v (1)
∀c
onde, pc,v é o percentual de instâncias que pertencem a classe c do total
de instâncias que possuem o valor v no atributo ai. Caso alguma probabilidade
seja nula (nenhuma instância possuir o valor v), assume-se a entropia nula.
Em seguida calcula-se a entropia de um conjunto de atributos A:
Entropia(A) = – ∑ pc log2 pc (2)
∀c
onde, pc é o percentual de instâncias que pertencem a classe c do total
de instâncias da base dados.
18
Finalmente, calcula-se o ganho de informação (ganho médio) de cada
atributo como a diferença entre a entropia do conjunto de atributos menos a
informação de cada atributo, ou seja:
GanhoInf (ai) = Entropia(A) – ∑ V(ai = v) Entropia(ai,v) (3)
∀v |T|
onde, V(ai = v) é o número de instâncias da base que possuem o valor v
para o atributo ai e |T| é o número total de instâncias da base de dados.
Com o intuito de ilustrar a aplicação do método J48 para a construção de
uma árvore de decisão seja a base de dados da Tabela 1 um pequeno exemplo.
Tabela 1 Base exemplo para aplicação dos métodos de aprendizagem.
instância Freqüência
Cardíaca
Freqüência
Respiratória
Perda do
Apetite
Medicação
(atributo preditor)
1 Normocárdico Taquipnéia Não Sim 2 Normocárdico Taquipnéia Sim Sim 3 Taquicárdico Taquipnéia Não Sim 4 Bradicárdico Taquipnéia Não Não 5 Bradicárdico Taquipnéia Não Sim 6 Bradicárdico Eupnéia Sim Não 7 Taquicárdico Eupnéia Sim Sim 8 Normocárdico Taquipnéia Não Não 9 Normocárdico Eupnéia Não Não 10 Bradicárdico Eupnéia Não Não 11 Normocárdico Eupnéia Sim Não 12 Taquicárdico Taquipnéia Sim Não 13 Taquicárdico Eupnéia Não Sim 14 Bradicárdico Taquipnéia Sim Não
A construção da árvore de decisão para a base descrita na Tabela 1
através do método J48 inicia com a chamada do Algoritmo 1 passando como
parâmetros toda a base (T) e o conjunto A = {Freqüência Cardíaca, Freqüência
Respiratória, Perda do Apetite}. A primeira execução entrará evidentemente no
bloco de comandos das linhas 12 a 27. A seguir, a execução das linhas 13 e 14
corresponderá aos cálculos de ganho de informação para cada um dos atributos
de forma a determinar qual dos atributos do conjunto A será utilizado no nó raiz
da árvore. Na Tabela 2 são apresentados numericamente os valores de entropia
e ganho de informação calculados.
19
Tabela 2 Valores de entropia e ganho de Informação para chamada inicial. Entropia(A) = 0,983
Entropia(Freqüência Cardíaca, Normocárdico) = 0,971 GanhoInf (Freqüência Cardíaca) = 0,149
Entropia(Freqüência Cardíaca, Taquicárdico) = 0,811
Entropia(Freqüência Cardíaca, Bradicárdico) = 0,721
Entropia(Freqüência Respiratória, Taquipnéia) = 1,000 GanhoInf(Freqüência Respiratória)= 0,022
Entropia(Freqüência Respiratória, Eupnéia) = 0,913
Entropia(Perda do Apetite, Sim) = 1,000 GanhoInf (Perda do Apetite) = 0,022
Entropia(Perda do Apetite, Não) = 1,000
Desta forma, teremos um atributo com maior ganho que o demais (0,149)
e consequentemente a execução do bloco de instruções da linha 16 a 24 do
Algoritmo 1. Definido o atributo Freqüência Cardíaca para o nodo raiz (variável
at), o laço da linha 18 será executado três vezes, uma para cada valor possível
do atributo, a saber Normocárdico, Taquicárdico e Bradicárdico. Em cada uma
destas vezes será chamada novamente a função C4.5 passando os parâmetros
de entrada apresentados na Tabela 3.
Tabela 3 Parâmetros de entrada das chamadas recursivas da função C4.5 tendo como atributo at Freqüência Cardíaca.
Valor v de at Tv A
Normocárdico Subconjunto com instâncias:
1,2,8,9 e 11 {Freqüência Respiratória,Perda do Apetite}
Taquicárdico Subconjunto com instâncias:
3,7,12 e 13 {Freqüência Respiratória,Perda do Apetite}
Bradicárdico Subconjunto com instâncias:
4, 5, 6, 10 e 14 {Freqüência Respiratória, Perda do Apetite}
A primeira chamada recursiva (at = Freqüência Cardíaca, v =
Normocárdico) irá executar de forma semelhante à chamada inicial, ou seja,
será necessário executar as linhas 13 e 14 do Algoritmo 1. Desta forma, serão
calculados os seguintes valores de entropia e ganho de informação
apresentados na Tabela 4.
20
Tabela 4 Valores de entropia e ganho de Informação para primeira chamada recursiva. Entropia(A) = 0,971
Entropia(Freqüência Respiratória, Taquipnéia) = 0,918 GanhoInf (Freqüência Respiratória) = 0,420
Entropia(Freqüência Respiratória, Eupnéia) = 0,000
Entropia(Perda do Apetite, Sim) = 1,000 GanhoInf (Perda do Apetite) = 0,020
Entropia(Perda do Apetite, Não) = 0,918
Como resultado desta análise, o atributo Freqüência Respiratória com o
ganho de informação de 0,420 será escolhido para o nó de decisão (variável at).
Na seqüência, duas novas chamadas recursivas serão feitas com os
parâmetros de entrada apresentados na Tabela 5. Note-se que estas duas
novas chamadas serão executadas antes das duas chamadas pendentes da
Tabela 3.
Tabela 5 Parâmetros de entrada das chamadas recursivas da função C4.5 tendo como atributo at Freqüência Respiratória.
Valor v de at Tv A
Taquipnéia Subconjunto com instâncias: 1, 2 e 8 {Perda do Apetite}
Eupnéia Subconjunto com instâncias:9 e 11 {Perda do Apetite}
A segunda chamada (at = Freqüência Respiratória, v = Taquipnéia) irá
executar a inserção de uma folha, pois será passado um atributo único (linha 10
do Algoritmo 1). A folha inserida conterá o valor Sim que é o mais freqüente do
atributo preditor para as instâncias 1, 2 e 8.
A terceira chamada (at = Freqüência Respiratória, v = Eupnéia) irá
executar a inserção de uma folha, pois todas instâncias tem o mesmo valor do
atributo preditor (linha 6 do Algoritmo 1). A folha inserida conterá o valor Não
que é o valor do atributo preditor para as instâncias 9 e 11.
Retornando às chamadas referenciadas na Tabela 3, a quarta chamada
(at = Freqüência Cardíaca, v = Taquicárdico) irá calcular os valores de entropia
e ganho de informação para os atributos Freqüência Respiratória e Perda do
Apetite (linhas 13 e 14 do Algoritmo 1) apresentados na Tabela 6.
21
Tabela 6 Valores de entropia e ganho de Informação para quarta chamada recursiva. Entropia(A) = 0,971
Entropia(Freqüência Respiratória, Taquipnéia) = 1,000 GanhoInf (Freqüência Respiratória) = 0,311
Entropia(Freqüência Respiratória, Eupnéia) = 0,000
Entropia(Perda do Apetite, Sim) = 1,000 GanhoInf (Perda do Apetite) = 0,311
Entropia(Perda do Apetite, Não) = 0,000
Pode se observar que não é possível escolher entre os atributos
Freqüência Respiratória e Perda de Apetite que possuem o mesmo ganho de
informação. Por conseqüência, executa-se a linha 26 do Algoritmo 1 inserindo
uma folha com o valor Sim que é o valor mais freqüente do atributo preditor
para as instâncias 3, 7, 12 e 13.
Finalmente, a quinta chamada (at = Freqüência Cardíaca, v =
Bradicárdico) também irá calcular os valores de entropia e ganho de informação
obtendo os seguintes valores apresentados na Tabela 7.
Tabela 7 Valores de entropia e ganho de Informação para quinta chamada recursiva. Entropia(A) = 0,721
Entropia(Freqüência Respiratória, Taquipnéia) = 0,918 GanhoInf (Freqüência Respiratória) = 0,170
Entropia(Freqüência Respiratória, Eupnéia) = 0,000
Entropia(Perda do Apetite, Sim) = 0,000 GanhoInf (Perda do Apetite) = 0,170
Entropia(Perda do Apetite, Não) = 0,918
Tem-se novamente valores iguais de ganho de informação, logo a
execução da linha 26 do Algoritmo 1 irá incluir uma folha com o valor da classe
mais freqüente (Não) encontrado nas instâncias 4, 5, 6 10 e 14.
A Figura 4 mostra a árvore de decisão obtida após esta série de cálculos
de entropia e ganho de informação. Ela contempla, na representação gráfica, a
evolução da árvore de decisão, desde a primeira chamada da função C4.5 até a
última e quinta chamada recursiva. Pode-se observar a situação da árvore de
decisão antes da primeira chamada recursiva (Inicial ) e a seguir cada uma das
situações após a execução de cada uma das chamadas recursivas até o
resultado final, que é obtido após a execução da quinta chamada recursiva.
22
Figura 4 Árvore de Decisão calculada pelo Método J48 para a base de dados da Tabela 1.
Para exemplificar o processo de classificação no método J48, vamos
assumir na Tabela 8 o recebimento de três instâncias a serem classificadas.
Tabela 8 Instâncias a serem classificadas pelo método J.48.
instância Freqüência
Cardíaca
Freqüência
Respiratória
Perda do
Apetite
Medicação
(predição)
a1 Normocárdico Eupnéia Não ? a2 Bradicárdico Eupnéia Não ? a3 Taquicárdico Taquipnéia Sim ?
A classificação da primeira destas instâncias (a1) resultaria na resposta
Não, enquanto a instância a2 resultaria na resposta Sim , e a instância a3
resultaria na resposta Não.
O método apresentado permite a geração de classificadores simbólicos a
partir de uma base de dados. Este método gera apenas um classificador. Ou
seja, ele não gera vários classificadores para diferentes amostras da mesma
base de dados, o que poderia melhorar sua eficiência.
23
2.3.2. Métodos Bagging e Boosting
A combinação de diversos classificadores tem como objetivo obter uma
taxa de acerto melhor do que a obtida pela aplicação de um classificador
distinto [WITTEN; FRANK, 2000]. Os métodos de combinação de
classificadores podem ser divididos segundo o tipo de manipulação realizada
sobre a base de dados para gerar diversos classificadores. Eles podem ser
agrupados em métodos que manipulam atributos de entrada, valores do atributo
preditor (classe) ou algoritmos de aprendizagem. No entanto, os mais utilizados
são os métodos que manipulam os conjuntos de treinamento. Neste último
grupo temos métodos BAGGING e BOOSTING que serão vistos nesta dissertação.
Ambos os métodos geram classificadores a partir de diversos subconjuntos de
treinamento obtidos por técnicas de amostragem.
BAGGING (bootstrap aggregating) [BREIMAN, 1996] é um método para
combinar k classificadores treinados a partir de k versões da base original
amostradas de forma uniformemente distribuída sobre o conjunto de instâncias.
As amostras geradas deverão ter o mesmo tamanho (número de instâncias) do
conjunto original e para cada uma das k amostras um classificador é obtido.
Cabe salientar que estas amostras são sorteadas com reposição, pois, elas
deverão ter os mesmos números de instancias que o conjunto original.
Este processo de geração de classificadores está descrito no Algoritmo 2,
que é uma versão ligeiramente adaptada da proposta inicial feita por Breiman
[BREIMAN, 1996]. Note-se que na linha 7 deste algoritmo tem-se a aplicação de
um algoritmo de aprendizagem, por exemplo, J48. Este algoritmo irá gerar um
classificador, por exemplo, uma árvore de decisão para cada uma das amostras
[GRANDVALET, 2004].
Entradas : uma base de dados T com n instâncias um número de classificadores k Saída : um conjunto de k classificadores C 1 função Gera Bagging( T, k, C ) 2 inicio 3 para i de 1 até k 4 faça 5 início 6 sorteia (com reposição) a amostra Ai com n instâncias da base T 7 gera um classificador C i com a amostra Ai 8 armazena o classificador C i 9 fim. 10 fim.
Algoritmo 2 Geração de Classificadores através do Método BAGGING.
24
A Figura 5 representa genericamente o processo do método BAGGING.
Nesta figura estão representadas as seguintes etapas:
• geração de diferentes amostras de tamanhos iguais a partir da
mesma base de dados de treinamento;
• obtenção de um classificador para cada amostra, representado como
árvores de decisão;
• obtenção de um classificador composto que inclui todos os
classificadores individuais gerados na fase anterior; e
• votação simples, para cada classificação de uma instância, para
eleger a classificação mais popular dentre os classificadores
individuais.
É fundamental salientar que o método BAGGING, assim como os demais
métodos de combinação de classificadores, consiste em gerar um classificador
composto. Esta é uma diferença fundamental quando comparado a um método
de geração de classificador único como, por exemplo, o método J48. O produto
final do método BAGGING não é um classificador único. Ele não é a fusão de k
árvores de decisão em uma árvore única. O resultado da geração do método
BAGGING é um conjunto de classificadores que são utilizados de forma
integrada, pois cada nova instância a ser classificada será avaliada pelo
classificador composto cujo resultado (a classificação da instância) será a
resposta escolhida pela maioria dos k classificadores.
Segundo a literatura [REZENDE, 2003], o método BAGGING é
particularmente interessante quando os algoritmos de aprendizagem aplicados
a determinadas bases de dados possuem um comportamento instável. Nestes
casos, um classificador único não é capaz de oferecer uma resposta confiável
para todas as situações, mas um conjunto de classificadores, ou seja, um
classificador composto pode ter maior chance de acerto. Na verdade, o uso de
BAGGING para estes casos aumenta a taxa de acerto se comparado a árvores de
decisão obtidas por abordagens mais simples como o método J48, porém,
perde-se uma estrutura facilmente interpretável [TAN; STEINBACH; KUMAR,
2006].
25
Figura 5 Esquema geral de funcionamento do método Bagging.
O método BAGGING é o equivalente de aprendizagem de máquina à
situação onde um gestor humano se cerca de k consultores e toma a decisão
baseada na votação feita por estes consultores [WITTEN; FRANK, 2000]. Cabe
26
salientar que o uso deste método de votação entre classificadores resulta em
um classificador composto que tende a ter uma taxa de acerto maior do que a
taxa de acerto de cada um dos classificadores individualmente.
Aplicando o método BAGGING a base da Tabela 1 que possui 14
instâncias (n = 14) utilizando três classificadores (k = 3), teríamos, por exemplo,
as três amostras geradas aleatoriamente representadas conforme os esquemas
da Tabela 9. Nesta tabela, compactamos as informações da base descrita na
Tabela 1 abreviando os valores dos atributos para sua primeira letra (por
exemplo, Normocárdico é chamado de N) e os próprios atributos tiveram seus
nomes compactados a iniciais (por exemplo, Perda do Apetite é indicado como
PA).
Os valores desta tabela foram obtidos por tiragens aleatórias
uniformemente distribuídas sobre as instâncias da base original (Tabela 1).
Desta forma, para a primeira amostra foram sorteadas as instâncias 1, 2, 3, 4, 5,
6 (2x), 7 (2x), 9, 10 (3x) e 14. Apenas para facilitar a visualização, estas
instâncias foram ordenadas e sua posição original indicada na coluna PO. Note-
se que como na base original, o atributo preditor é a última coluna (M) da tabela.
A geração destas amostras corresponde a execução da linha 6 do Algoritmo 2.
Tabela 9 Três amostras para a base de dados exemplo da Tabela 1. Amostra 1 Amostra 2 Amostra 3
PO FC FR PA M PO FC FR PA M PO FC FR PA M
1 N T S S 1 N T N S 2 N T S S
2 N T S S 3 T T N S 2 N T S S
3 T T N S 3 T T N S 2 N T S S
4 B T N N 6 B E S N 3 T T N S
5 B T N S 6 B E S N 3 T T N S
6 B E S N 7 T E S S 3 T T N S
6 B E S N 8 N T N N 4 B T N N
7 T E S S 9 N E N N 5 B T N S
7 T E S S 10 B E N N 6 B E S N
9 N E N N 10 B E N N 8 N T N N
10 B E N N 11 N E S N 12 T T S N
10 B E N N 13 T E N S 14 B T S N
10 B E N N 13 T E N S 14 B T S N
14 B T S N 13 T E N S 14 B T S N
Para cada uma das amostras da Tabela 9, utilizando o método J48 de
forma análoga a seção anterior, um classificador é gerado. Estes classificadores
27
estão respectivamente representados na Figura 6. A obtenção destes
classificadores corresponde a execução da linha 7 do Algoritmo 2.
Figura 6 Classificadores gerados para as três amostras da Tabela 4.
Para exemplificar o processo de classificação no método BAGGING,
vamos assumir na Tabela 10 o recebimento de três instâncias a serem
classificadas.
Tabela 10 Instâncias a serem classificadas pelo método Bagging..
instância Freqüência
Cardíaca
Freqüência
Respiratória
Perda do
Apetite
Medicação
(predição)
a1 Normocárdico Eupnéia Não ? a2 Bradicárdico Eupnéia Não ? a3 Taquicárdico Taquipnéia Sim ?
A classificação da primeira destas instâncias (a1) resultaria na resposta
Sim , para o Classificador C1; Não, para o Classificador C2; e Sim , para o
Classificador C3. Conseqüente a resposta Sim será considerada, pois ganha a
votação por 2 votos a 1.
A classificação da instância a2 resultaria na resposta Não para todos os
classificadores, ganhando a votação por unanimidade.
A mesma situação acontece para a instância a3 que resultaria na
resposta Sim , também por unanimidade.
O método BOOSTING é outro método de combinação de classificadores
que foi desenvolvido com o intuito de oferecer classificadores mais eficientes. A
partir daí foram criados vários algoritmos, sendo que o mais conhecido é o
AdaBoost (Adaptative Boosting) [FREUND; SCHAPIRE, 1996].
Neste método, como no método BAGGING, são geradas amostras que dão
origem a classificadores que são utilizados de forma integrada. Entretanto,
existem apenas duas distinções entre os métodos BAGGING e BOOSTING: (i) a
28
maneira como são geradas as amostras; e (ii) a maneira como são combinados
os resultados dos classificadores.
A primeira diferença frente ao método BAGGING é a forma como são
geradas as amostras no método BOOSTING. Para uma base de treinamento com
n instâncias, ao invés de gerar amostras de tamanho n assumindo sempre uma
distribuição uniforme (probabilidade 1/n) sobre as instâncias da base de
treinamento levam-se em conta as amostras já geradas de forma a alterar a
distribuição de geração das próximas amostras [BAUER; KOHAVI, 1999].
Este processo pode ser dividido em k passos, sendo que cada passo
compreende: (i) a geração de uma amostra; (ii) a geração do classificador
associado à amostra; (iii) a aplicação deste classificador a base de treinamento
original; (iv) a análise de eficiência geral deste classificador; (v) a eficiência do
classificador frente a cada instância da base de treinamento individualmente; e,
finalmente, (vi) a alteração das probabilidades para a geração da amostra no
próximo passo [FREUND; SCHAPIRE, 1996].
De forma mais específica, a geração de k amostras no método BOOSTING
consiste em:
• gerar a primeira amostra assumindo a distribuição uniforme, ou
seja, todas as instâncias da base têm a mesma probabilidade (1/n)
de serem incluídas na primeira amostra gerada; em seguida,
• gerar um classificador para esta amostra e aplicar o classificador a
base de treinamento original;
• de acordo com o classificador gerado, diminuir a probabilidade de
serem incluídas na próxima amostra das instâncias que foram
corretamente classificadas e aumentar a probabilidade das
instâncias que foram incorretamente classificadas;
• gerar a segunda amostra a partir da base original levando em
conta as novas probabilidades de cada instância;
• gerar um classificador para a segunda amostra e aplicar o
classificador a base de treinamento original; e mais uma vez
• diminuir a probabilidade das instâncias bem classificadas e
aumentar a probabilidade das instâncias mal classificadas;
29
• repetir este processo de geração de amostras, classificadores e
alteração de pesos até serem gerados a k-ésima amostra e o k-
ésimo classificador.
O resultado desta operação tende a gerar amostras que são mais
“especializadas”, ou seja, enquanto uma amostra é eficiente para classificar
algumas das instâncias da base, as próximas amostras tendem a privilegiar
instâncias mal classificadas anteriormente.
A segunda diferença frente ao método BAGGING está na forma como são
combinados os classificadores. Ao invés de uma votação simples entre as
respostas fornecidas por cada classificador, no método BOOSTING a votação é
ponderada segundo um índice de importância entre os classificadores gerados.
Para isto é necessário que o processo de geração de classificadores memorize
a eficiência de cada classificador gerado frente à base de treinamento
[BARLETT; FREUND; LEE; SCHAPIRE, 1997]. Note-se que este processo não
adiciona custos ao método, pois os classificadores já devem ser testados a
cada passo, para gerar amostras de acordo com probabilidades distintas.
A Figura 7, de forma análoga a Figura 5, descreve o método BOOSTING
ilustrando a inclusão do cálculo das probabilidades de acordo com o
classificador da amostra anterior para gerar a próxima amostra (Ponderação) e
a votação ponderada entre as respostas dos classificadores para obter o
resultado do classificador composto.
Fazendo novamente uma analogia entre a aprendizagem de máquina e a
humana, o método BOOSTING é similar ao caso do humano gestor que se cerca
de diversos conselheiros, porém ao contrário do método BAGGING que busca
“consultores” usando somente a aleatoriedade, o método BOOSTING busca
“consultores” com diferentes especialidades. Enquanto a geração de amostras
no método BAGGING é feita sempre sorteando amostras de instâncias com
distribuição uniforme, no método BOOSTING a obtenção de amostras tende a ser
ortogonal, por que se busca incluir instâncias mal classificadas e excluir
instâncias bem classificadas. Buscando não desprezar as relações de nenhuma
das instancias da base de treinamento.
30
Figura 7 Esquema geral de funcionamento do método BOOSTING
A implementação prática desta política de variação nas probabilidades de
instâncias para as amostras é feita através da definição de um vetor de pesos
(w) que associa um valor real entre 0 e 1 a cada uma das instâncias da base de
31
treinamento original. Este vetor será modificado após a geração de cada novo
classificador. O elemento wj deste vetor está associado à j-ésima instância da
base de treinamento. Além da probabilidade da j-ésima instância ser incluída na
próxima amostra, este peso wj também significa o quanto a j-ésima instância é
importante para a busca dos próximos classificadores. Note-se que ambos os
significados tem uma semântica muito semelhante, mas como será
demonstrado a seguir, cada um destes significados representa um uso distinto
dos pesos wj na execução do método BOOSTING.
Após cada aplicação de um novo (i-ésimo) classificador (classificador
gerado no i-ésimo passo), calcula-se a sua taxa de erro (ε(i)), sua importância
(α(i)) e recalcula-se o peso de cada instância da base de treinamento (wj). O
Algoritmo 3 descreve a implementação do algoritmo Adaboost que é utilizado
para gerar os classificadores do método BOOSTING. Este algoritmo é uma ligeira
adaptação da versão original proposta por Freud e Schapire [FREUND;
SCHAPIRE, 1996].
Entradas : uma base de dados T com n instâncias um número de classificadores k Saída : um conjunto de k classificadores C um vetor de reais α com a importância de cada classificador de C 1 função GeraBoosting( T, k, C, α ) 2 inicio 3 inicializa os elementos d o vetor w com 1/ n 4 para i de 1 até k faça 5 início 6 sorteia (com reposição) a amostra Ai com n instâncias da base T de acordo com o vetor w 7 gera o classificador C i com a amostra Ai
8 aplica o classificador C i à base de dados T calculando o erro ε(i)
9 calcula a importância α(i)
do classificador C i
10 se ε(i)
> 0,5 11 então 12 reinicializa os elementos d e w com 1/ n e retorna a linha 6 13 senão
14 atualiza os elementos do vetor w de acordo com α(i)
15 fim. 16 fim.
Algoritmo 3 Adaboost – Geração de Classificadores através do Método BOOSTING.
O primeiro ponto de interesse no algoritmo Adaboost é a inicialização das
probabilidades de w com o valor 1/n (linha 3 do Algoritmo 3). Devido a esta
inicialização, a primeira geração de amostra (primeira execução da linha 6) é
igual às gerações feitas no método BAGGING, pois a escolha de instâncias a
incluir na amostra será feita por uma distribuição uniforme.
32
O cálculo da taxa de erro do classificador Ci (linha 8 do Algoritmo 3) é
feito levando em consideração: (i) o número de instâncias da amostra (n); (ii) o
peso de cada uma das instâncias (wj); e (iii) a verificação da efetividade do
classificador Ci em classificar corretamente cada uma das instâncias.
Numericamente, ela é calculada pela fórmula:
ε(i) = ∑ wj δ(Ci (xj) ≠ yj ) (4)
j=1..n
onde, δ(x) é um operador que retorna o valor 1 caso o parâmetro (x) seja
verdadeiro e retorna 0 caso contrário; Ci(xj) representa a classe prevista pelo
classificador Ci para a j-ésima instância da base de treinamento; e yj representa
a classe da j-ésima instância expressa pelo valor do atributo preditor da base de
treinamento.
A importância de um classificador (α(i)) é calculada com base na sua taxa
de erro. Este cálculo, descrito na linha 9 do Algoritmo 3, é feito pela fórmula:
α(i) = (1/2) ln ( (1- εi) / εi ) (5)
De posse da importância do classificador Ci, decide-se se a amostra e
seu classificador serão descartados. Caso a taxa de erro seja superior ao
palpite aleatório (εi > 0,5) descarta-se a amostra e outra amostra é gerada com
os pesos reinicializados para uma distribuição uniforme (linha 12 do Algoritmo 3
que retorna à linha 6).
Caso a eficiência do classificador seja satisfatória, a atualização dos
pesos é feita de acordo com a importância do classificador (linha 14 do
Algoritmo 3). Esta atualização de pesos é feita em duas etapas. Primeiramente,
aplica-se um fator multiplicativo aos pesos existentes e depois normalizam-se
os pesos obtidos. O peso wj das instâncias que tiveram suas classes previstas
corretamente é decrescido pela divisão pelo fator eα(i), ou seja, ao número de
Euler (e=2,71828...) elevado a importância do classificador (α(i)). De forma
análoga, o peso das instâncias que foram previstas incorretamente é acrescido
através da multiplicação pelo mesmo fator (eα(i)). Feita esta operação, o vetor de
pesos w é normalizado, ou seja, todos seus elementos são divididos por um
mesmo fator de normalização de forma que a sua soma continue igual a 1.
Aplicando o método BOOSTING a base de teste da Tabela 1 com três
classificadores (k = 3), o resultado da primeira execução das linhas 6 e 7 do
33
Algoritmo 3 está exposto na Figura 8 que mostra a primeira amostra gerada
com uma distribuição uniforme sobre as instâncias da base e o classificador
gerado a partir desta amostra.
Amostra A1 Classificador C1
PO FC FR PA M
1 N T N S 2 N T S S 3 T T N S 4 B T N N 5 B T N S 6 B E S N 6 B E S N 7 T E S S 7 T E S S 9 N E N N 10 B E N N 10 B E N N 10 B E N N 14 B T S N
Figura 8 Primeira amostra para a base de dados exemplo da Tabela 1 resultante da execução do algoritmo Adaboost e o seu classificador.
Aplicando o classificador C1 obtido à base de dados original expressa na
Tabela 1, verifica-se que as instâncias 5, 8, 9, 11 e 12 foram incorretamente
classificadas. Esta tarefa permite o cálculo da taxa de erro e da importância
deste classificador (linhas 8 e 9 do Algoritmo 3):
ε(1) = 0,357 α
(1) = 0,294
Como o valor da taxa de erro não supera 0,5 (linha 10 do Algoritmo 3),
recalculam-se os pesos das instâncias da base de treinamento obtendo-se os
valores apresentados no Quadro 1.
j w j inicial w j passo 1 1 0,71 0,056 2 0,71 0,056 3 0,71 0,056 4 0,71 0,056 5 0,71 0,100 6 0,71 0,056 7 0,71 0,056 8 0,71 0,100 9 0,71 0,100
10 0,71 0,056 11 0,71 0,100 12 0,71 0,100 13 0,71 0,056 14 0,71 0,056
Quadro 1 Vetor de pesos das instâncias após o primeiro passo.
34
Após o recálculo dos novos pesos para as instâncias da base de dados
(segundo passo), uma nova amostra foi gerada. Esta nova amostra e também o
classificador obtido a partir dela são apresentados na Figura 9.
Amostra A2 Classificador C2
PO FC FR PA M
2 N T S S 2 N T S S 5 B T N S 5 B T N S 5 B T N S 6 B E S N 7 T E S S 7 T E S S 8 N T N N 9 N E N N 10 B E N N 11 N E S N 14 B T S N 14 B T S N
Figura 9 Segunda amostra para a base de dados exemplo da Tabela 1 resultante da execução do algoritmo Adaboost e o seu classificador.
A primeira observação a ser feita sobre a amostra gerada é que mesmo
sendo aleatória, percebe-se que 4 das 5 instâncias mal classificadas pelo
Classificador C1 estão presentes no Classificador C2 (apenas a instância 12 não
foi sorteada). Outro fator marcante é a diferença grande entre os classificadores
gerados nos passos 1 e 2. Aplicando-se o novo classificador a base de
treinamento original (Tabela 1) verifica-se que as instâncias 4, 8, 10 e 12 foram
incorretamente classificadas. Calculando a taxa de erro e importância do
Classifcador C2:
ε(2) = 0,311 α
(2) = 0,398
O valor de taxa de erro inferior a 0,5 permite o recálculo dos pesos das
instâncias resultando nos valores do Quadro 2. Observa-se neste quadro o
aumento da probabilidade das instâncias 8 e 12 que foram erroneamente
classificadas nos dois classificadores já gerados. Por outro lado, observa-se que
as instâncias 1, 2, 3, 6, 7, 13 e 14 possuem pesos baixos. Estas observações
permitem ilustrar o procedimento do método BOOSTING que privilegia a geração
de classificadores distintos a cada novo passo.
35
j w j inicial w j passo 1 w j passo 2 1 0,71 0,056 0,040 2 0,71 0,056 0,040 3 0,71 0,056 0,040 4 0,71 0,056 0,089 5 0,71 0,100 0,073 6 0,71 0,056 0,040 7 0,71 0,056 0,040 8 0,71 0,100 0,161 9 0,71 0,100 0,073
10 0,71 0,056 0,089 11 0,71 0,100 0,073 12 0,71 0,100 0,161 13 0,71 0,056 0,040 14 0,71 0,056 0,040
Quadro 2 Vetor de pesos das instâncias após o segundo passo.
Na Figura 10 são apresentados a terceira amostra e seu classificador,
terminando a geração de classificadores para este exemplo (k = 3). Este terceiro
classificador é o mais simples possível, pois ele escolhe sempre a classe Não
independente dos valores dos atributos. Apesar de estranho, este classificador
monótono não é tão surpreendente assim quando se observa a terceira
amostra, onde todas as instâncias, exceto a primeira, possuem o valor Não no
atributo preditor. O dado mais interessante é que apesar disto, a taxa de erro do
Classificador C3 não é tão ruim quando aplicado à base de treinamento original
(Tabela 1).
Os valores da taxa de erro e da importância de C3 são:
ε(3) = 0,274 α
(3) = 0,487
Amostra A3 Classificador C3
PO FC FR PA M
1 N T N S 4 B T N N 4 B T N N 8 N T N N 8 N T N N 8 N T N N 9 N E N N 9 N E N N 9 N E N N 10 B E N N 11 N E S N 12 T T S N 12 T T S N 12 T T S N
Figura 10 Terceira amostra para a base de dados exemplo da Tabela 1 resultante da execução do algoritmo Adaboost e o seu classificador.
36
Note-se que não é mais necessário recalcular os pesos, por que C3 é o
último classificador gerado. No entanto, é necessário refazer o cálculo tanto
para a taxa de erro que pode implicar no descarte do classificador gerado,
quanto para a importância de C3. Esta última será utilizada, juntamente com as
importâncias dos demais classificadores, na votação ponderada.
Para exemplificar o processo de classificação no método BOOSTING,
vamos assumir na Tabela 11 o recebimento de três novas instâncias a serem
classificadas.
Tabela 11 Instâncias a serem classificadas pelo método Boosting..
instância Freqüência
Cardíaca
Freqüência
Respiratória
Perda do
Apetite
Medicação
(predição)
a1 Normocárdico Eupnéia Não ? a2 Bradicárdico Eupnéia Não ? a3 Taquicárdico Taquipnéia Sim ?
A classificação da primeira destas instâncias (a1) resultaria na resposta:
• Sim , para o Classificador C1 que tem importância 0, 294;
• Não, para o Classificador C2 que tem importância 0, 398;
• Não, para o Classificador C3 que tem importância 0, 487.
Conseqüente a resposta Não será considerada, pois ganha a votação
ponderada com o valor 0, 885 contra o valor 0, 294 da resposta Sim .
A classificação da instância a2 resulta em:
• Não, para o Classificador C1 que tem importância 0, 294;
• Sim , para o Classificador C2 que tem importância 0, 398;
• Não, para o Classificador C3 que tem importância 0, 487.
Conseqüentemente a resposta Não será considerada, pois ganha a
votação ponderada com o valor 0, 781 contra o valor 0, 398 da resposta Sim .
A classificação da instância a3 resulta em:
• Sim , para o Classificador C1 que tem importância 0, 294;
• Sim , para o Classificador C2 que tem importância 0, 398;
• Não, para o Classificador C3 que tem importância 0, 487.
Conseqüente a resposta Sim será considerada, pois ganha a votação
ponderada com o valor 0, 692 contra o valor 0, 487 da resposta Não.
37
2.4. TÉCNICAS ESTATÍSTICAS ESPECÍFICAS
Nesta seção são descritas as técnicas de validação cruzada e o teste
estatístico de Friedman que são empregados na análise dos resultados obtidos
neste trabalho. Ao contrário dos métodos de aprendizagem de máquina que
estão no tema central desta dissertação, as técnicas vistas nesta seção são
técnicas estabelecidas que foram abordadas de forma genérica e sem maior
profundidade. O leitor interessado em maiores detalhes sobre estas técnicas
pode consultar a bibliografia citada.
2.4.1. Validação Cruzada
A técnica de validação cruzada [DIAMANTIDIS; KARLIS; GIAKOUMAKIS,
2000] é uma das formas mais utilizadas para estimar a taxa de acerto de
classificadores.
Uma opção simplista de verificar a taxa de acerto de um método para
uma base de dados de treinamento com n instâncias é gerar um classificador
utilizando a totalidade da base como conjunto de treinamento e após utilizar a
mesma totalidade da base para testar o classificador. Esta técnica simplista com
certeza irá gerar um valor de taxa de acerto baseado numa única taxa de
acerto. No entanto, este valor de taxa de acerto será provavelmente
tendencioso, pois o mesmo conjunto de instâncias foi utilizado para gerar o
classificador e para testá-lo. A validação cruzada aparece como uma opção
mais sofisticada que busca evitar os problemas de uma técnica tão simplista.
Na técnica de validação cruzada divide-se a base de dados com n
instâncias em f amostras (folds) aleatoriamente escolhidas, cada uma com
tamanho igual a n/f instâncias, ou um tamanho aproximado caso n não seja
divisível por f [TAN; STEINBACH; KUMAR, 2006].
De forma genérica, a validação cruzada repete f vezes um processo de
treinamento e teste. Em cada uma destas vezes, utiliza-se uma das f amostras
aleatórias para serem validadas pelo treinamento feito com as outras f-1
amostras. Cada uma destas f validações retornará um resultado de taxa de
acerto. A taxa de acerto final será dada pela média aritmética simples dos f
valores de taxa de acerto encontrados para cada uma das amostras.
38
Desta forma, uma base de dados com 60 instâncias a qual se aplicará a
técnica de validação cruzada com f igual a 5, dará origem a 5 amostras com 12
instâncias. O processo de validação cruzada consistirá de 5 passos onde em
cada um deles 4 das amostras serão utilizadas como conjunto de treinamento,
ou seja, uma base de treinamento com 48 instâncias. Esta base de treinamento
será utilizada para gerar através de um determinado método um classificador
que será utilizado para classificar as 12 instâncias da amostra que não foram
consideradas na base de treinamento. Por fim, a média de cada um dos 5 testes
conduzidos será considerada como a taxa de acerto obtida para a base de
dados.
Como pode ser observado, a técnica de validação cruzada pode ser
aplicada a qualquer método de aprendizagem de máquina, como por exemplo,
aos métodos vistos na seção anterior.
2.4.2. Teste Estatístico de Friedman
A avaliação estatística dos resultados experimentais é considerada uma
parte essencial na validação de novos métodos de aprendizagem de máquina
[DEMSAR, 2006]. Os testes estatísticos devem ser executados corretamente e
as conclusões resultantes devem ser extraídas cautelosamente. De acordo
com as características de cada experimento, deve ser escolhido um teste
estatístico paramétrico (teste t, ANOVA) ou não-paramétrico (Wilcoxon,
Friedman, teste de sinal).
Baseado nas propriedades estatísticas conhecidas de cada teste, nos
seus pressupostos, e no conhecimento dos dados da aprendizagem de
máquina, concluiu-se que os testes não-paramétricos devem ser preferidos em
relação aos paramétricos, pois são mais prováveis para rejeitar a hipótese nula,
e não correm os riscos de violações das suposições dos testes paramétricos
[DEMSAR, 2006].
Temos como exemplo de teste não-paramétrico para amostras
relacionadas o teste de Friedman, utilizado neste trabalho. Este teste pode ser
utilizado para verificar se N grupos, avaliados sob c diferentes condições, foram
extraídos de uma mesma população (hipótese nula). Para a aplicação deste
teste, os dados deverão estar dispostos em uma tabela de dupla entrada (com
39
N linhas e c colunas). As linhas representarão os conjuntos e as colunas, as
diversas condições.
Para demonstrarmos um exemplo simplificado da aplicação do teste,
apresentamos no Quadro 3 um experimento [SIEGEL, 1975], onde se pretende
estudar os escores de três grupos sob 4 condições (nesse caso, c=4 e N=3),
onde as linhas determinam cada um dos grupos, e as colunas são as diferentes
condições, e no corpo da tabela os respectivos escores.
Condições
Grupos 1 2 3 4
A 9,0 4,0 1,0 7,0
B 6,0 5,0 2,0 8,0
C 9,0 1,0 2,0 6,0
Quadro 3 Exemplo simplificado para aplicação do teste de Friedman
A aplicação do teste de Friedman inicia-se com a ordenação das
condições de cada uma das linhas de maneira a estabelecer um posto distinto
para cada uma das colunas ordenadas nas linhas. No Quadro 4, por exemplo, a
linha correspondente ao grupo A seria ordenada de forma decrescente com a
condição 1,4,2 e 3, desta forma no Quadro 4 temos os postos da linha
correspondente ao grupo A com os valores 4,2,1 e 3. Após, os postos atribuídos
pela ordenação individual de cada linha devem ser somados para cada uma das
colunas. O teste de Friedman determinará se as somas dos postos por colunas
diferem significativamente entre si.
Condições
Grupos 1 2 3 4
A 9,0 (4) 4,0 (2) 1,0 (1) 7,0 (3)
B 6,0 (3) 5,0 (2) 2,0 (1) 8,0 (4)
C 9,0 (4) 1,0 (1) 2,0 (2) 6,0 (3)
Soma dos postos nas colunas 11 5 4 10
Quadro 4 Atribuição e soma de postos para o exemplo do Quadro 3.
40
Se considerarmos como hipótese nula a inexistência de diferenças
estatisticamente significativas entre as c condições, a distribuição dos postos
nas diferentes condições representaria amostras aleatoriamente distribuídas,
não havendo co-relação entre elas. Para calcular a existência ou não desta co-
relação faz-se o somatório das variâncias (Q) das somas dos postos. A partir do
valor obtido para Q calcula-se o p-valor como a probabilidade do valor superior
ou igual a Q segundo uma distribuição qui-quadrada com c-1 graus de
liberdade. Para valores pequenos de n e de c, por exemplo, n<16 e c<5,
recomenda-se a utilização de tabelas de contingência ao invés da aproximação
da distribuição qui-quadrada.
No exemplo dos Quadros 3 e 4, observa-se que as somas das diferentes
colunas (condições) diferem entre si. No entanto, apesar de ser claro que as
condições 1 e 4 possuem valores superiores às condições 2 e 3, uma
ordenação inequívoca entre todas as quatro condições é menos óbvia.
Numericamente, o resultado da aplicação do teste de Friedman a este exemplo
nos levaria à rejeição da hipótese nula, pois p-valor obtido seria igual a 0, 0301.
Este resultado numérico indica que existe uma probabilidade de 3,01% (p-valor
obtido) de rejeitar a hipótese nula sendo ela verdadeira. Dito de outra forma
pode-se afirmar com 96,99% de confiança que existe uma co-relação entre os
resultados obtidos para os grupos A, B e C.
De forma genérica, o resultado numérico do teste de Friedman fornece o
nível de significância (p-valor) da afirmação. P-valores pequenos fornecem
evidências para rejeitarmos a hipótese nula em favor da hipótese alternativa. Ao
contrário, p-valores grandes fornecem evidências para aceitar a hipótese nula
[SIEGEL, 1975]. Desta forma, é necessário estabelecer um valor limiar de
tolerância de aceitação, que é chamado de nível de significância do teste. O
valor habitualmente empregado varia de 1% a 5%. No contexto desta
dissertação adotou-se como nível de significância 0,05 que significa a existência
de 5% de chance de rejeitar a hipótese nula, sendo ela verdadeira.
41
2.5. TRABALHOS RELACIONADOS
Nessa seção são apresentados alguns trabalhos relacionados que
também aplicam os métodos J48, Bagging e Boosting com o intuito de
comparação. A principal distinção clara é que o objetivo desta dissertação é
uma análise destes métodos quando aplicados a bases da área da saúde, e
nenhum dos demais trabalhos tem este mesmo foco. Em todos os quatro
trabalhos analisados o propósito é melhorar o entendimento de como esses
algoritmos com todas as suas características influenciam (agem) no erro de
classificação e recomendar para que tipos de bases devemos aplicar cada um
dos métodos. Nesta dissertação o foco é ligeiramente distinto, pois busca-se
apenas verificar o método mais preciso através das taxas de acerto nas bases
específicas da área da saúde, podendo esse método ser aplicado em bases da
área da saúde para tomada de decisão.
Quinlan [QUINLAN, 1996] faz comparações entre C4.5, Bagging e
Boosting, aplicando-os em bases genéricas, mas também utilizando a taxa de
acerto como parâmetro de comparação entre os métodos e a análise através de
curvas de aprendizagem. Este é o trabalho relacionado mais semelhante, pois
os três métodos testados nesta dissertação também são analisados em
[QUINLAN, 1996]. Cabe lembrar que o método J48 utilizado nesta dissertação é
uma implementação Java do algoritmo C4.5, e portanto, quando Quinlan se
refere a C4.5 trata-se de uma forma absolutamente análoga de aprendizagem
de máquina que o método J48.
Ainda assim existem diferenças entre o trabalho desta dissertação e
[QUINLAN, 1996]. No contexto dessa dissertação, as bases de dados são
especificamente bases da área da saúde que possuem características próprias
que dificultam a extração de conhecimento. Além desta diferença básica, nesta
dissertação não se analisa simplesmente a taxa de acerto com curvas de
aprendizagem, mas verifica-se também o impacto do número de classificadores
na comparação dos métodos Bagging e Boosting.
Dietterich [DIETTERICH, 2000] utiliza bases genéricas para comparar os
métodos Bagging, Boosting e Randomização. Nesse trabalho são analisadas
alternativas aleatórias nas decisões internas feitas pelo algoritmo de básico de
42
aprendizagem (C4.5). Desta forma Diettrich, não utiliza uma versão única do
algoritmo C4.5 para a geração dos diversos classificadores internos aos
métodos Bagging e Boosting. Mostrando através da taxa de erro que o método
de Randomização é competitivo com os métodos Bagging e Boosting. Uma
diferença central deste trabalho relacionado com esta dissertação é o fato de
não serem utilizadas variações de parâmetros no algoritmo C4.5 e não foi feita
nenhuma análise do método de randomização.
Bauer e Kohavi [BAUER; KOHAVI, 1999] também utiliza bases genéricas
para seus experimentos e faz comparação entre os métodos Bagging, Boosting
e Variantes como o algoritmo Arc-x4 usando a taxa de acerto como parâmetro
de comparação entre os métodos.
Kotsiantis e Kanellopoulous [KOTSIANTIS; KANELLOPOULOUS, 2007] é
o trabalho relacionado mais recente que faz uma comparação dos métodos
Bagging e Boosting, mas também de um outro método menos popular chamado
Dagging (Disjoint-sample aggregation) [???]. Além de comparar a aplicação
destes três métodos a bases genéricas verificando a taxa de acerto de cada um
deles, o trabalho de Kotsiantis e Kanellopoulous propõem um método que
combina os três outros e defende que este seu método possui é mais preciso
que cada um dos métodos individualmente.
Apesar de [KOTSIANTIS; KANELLOPOULOUS, 2007] não ser focado em
bases da área da saúde, este trabalho é bastante importante em relação a esta
dissertação por duas razões principais.
Primeiramente ele mostra a atualidade do tema de comparação de
métodos de aprendizagem de máquina que combinam classificadores. Isto
demonstra que não há consenso na área sobre qual método é o mais
adequado, mas sim apenas algumas conclusões empíricas.
O segundo ponto de interesse neste trabalho relacionado é o fato de que
ele afirma que o método Boosting tem, segundo resultados empíricos, um
desempenho inferior ao método Bagging para bases de dados com ruído, ou
seja, bases onde, por exemplo, os dados não apresentam valores faltantes,
contraditórios. Este é precisamente o caso de diversas bases da área da saúde,
logo seria normal esperar que o método Bagging tivesse uma melhor taxa de
acerto que o método Boosting para as bases estudadas nesta dissertação. No
entanto, os resultados das experimentações feitas demonstram o contrário.
43
3. Metodologia
Como já dito anteriormente, o grande interesse pela descoberta de
conhecimento a partir de bases de dados tem seu marco inicial com a
informatização dos meios produtivos que contribuíram de forma decisiva à
geração de grandes volumes de dados. Podemos citar como ilustração, as
transações eletrônicas, os novos equipamentos científicos, hospitalares e
industriais para observação e controle, os dispositivos de armazenamento em
massa. O aproveitamento de padrões interessantes (válidos, novos, úteis e
interpretáveis) descobertos a partir destas massas de dados gera ganhos de
competitividades significativos nos mais diversos domínios. Entretanto, os
recursos de análise de dados tradicionais não são viáveis para acompanhar
esta evolução em termos de descoberta de conhecimentos interessantes a
partir de bases de dados. A solução passa necessariamente pelas ferramentas
de automatização das tarefas repetitivas e sistemáticas de análise de dados,
assim como pelas ferramentas de auxílio às tarefas cognitivas da análise e
integração destas em um sistema de apoio ao processo completo de descoberta
de conhecimento para tomada de decisão.
Centrado sobre as ferramentas de descoberta de conhecimento a partir
de bases de dados, a atividade de investigação realizada neste trabalho toma a
direção de um estudo experimental que envolve os seguintes métodos de
aprendizagem de máquina: J48, BAGGING e BOOSTING. Tal estudo visa analisar a
eficiência destes métodos em termos de comportamento da taxa de acerto dos
classificadores gerados pelos mesmos. A configuração deste experimento
testará, sobre um conjunto de quinze bases de dados da área de saúde, a
eficiência dos métodos de aprendizagem de máquina já citados levando em
consideração suas curvas de aprendizagem e impacto do número de
classificadores quanto taxa de acerto. Tal impacto será medido apenas para os
métodos BAGGING e BOOSTING, cuja combinação de classificadores faz parte do
processo de aprendizagem.
Em termos mais particulares, o estudo investigativo levará em conta por
um lado, quinze bases de dados sem redução do número de atributos, e do
outro lado, quinze bases de dados com redução do número de atributos por
44
meio de um processo de filtragem de atributos irrelevantes. Buscar-se-á aqui
colocar em evidência o comportamento dos métodos J48, BAGGING e BOOSTING
aplicados a diferentes amostras para cada uma das bases de dados, com e sem
redução de sua dimensionalidade. As amostras serão obtidas por meio de um
processo de amostragem sofisticado que mantém as mesmas propriedades da
base de dados original. Ou seja, cada amostra mantém a mesma proporção de
valores para o atributo classe.
Os experimentos que serão realizados para os métodos de
aprendizagem de máquina supracitados basear-se-ão nas seguintes etapas:
1. identificar um conjunto BD de quinze bases de dados da área de saúde,
cujas características em termos de número de atributos, número de
classes e número de instâncias sejam significativamente diferentes;
2. aplicar um método de filtragem de atributos sobre cada base de dados do
conjunto BD no intuito de reduzir a dimensionalidade das mesmas,
gerando um conjunto de bases de dados filtrados ou de dimensões
reduzidas, doravante denominado de conjunto BDf;
3. gerar, para cada base de dados de BD e BDf, três curvas de
aprendizagem; uma para cada um dos seguintes métodos: J48, BAGGING
e BOOSTING;
4. gerar, para cada base de dados de BD e BDf, um de conjunto valores de
taxa de acerto, variando o número de classificadores a ser combinado,
para cada um dos seguintes métodos BAGGING e BOOSTING
respectivamente;
5. verificar, comparativamente por meio da realização de teste de hipótese,
a existência de diferenças significativas sobre o impacto do número de
classificadores no desempenho dos métodos BAGGING e BOOSTING.
Este capítulo apresenta nas próximas seções as bases de dados
utilizadas e o tratamento dos dados anterior à aplicação dos métodos de
aprendizagem (Seção 3.1), bem como as etapas correspondentes a obtenção
das curvas de aprendizagem (Seção 3.2) e a obtenção dos fatores de impacto
quanto ao número de iterações (ou classificadores) para os métodos BAGGING e
45
BOOSTING (Seção 3.3). Nestas duas últimas seções, serão apresentados os
algoritmos que descrevem em detalhe a forma como os experimentos foram
executados. O conjunto de atividades de cada algoritmo toma como entrada um
dos conjuntos BD ou BDf, e fornece como saída uma matriz, onde cada
elemento da mesma corresponde a uma taxa de acerto de um dado
classificador para uma amostra de uma dada base de dados que foi fornecida
como entrada. Finalmente, os resultados são sumarizados por meio de gráficos
que representam curvas de aprendizagem e por meio de análises estatísticas
para verificação de hipóteses.
Destacamos que todos os estudos experimentais, que serão realizados
na seqüência, envolverão algoritmos de aprendizagem de máquina, de filtragem
de atributos e de geração de amostras implementados no pacote de software
WEKA versão 3.4 [WITTEN, 2005]. E para as análises estatísticas será utilizado
o software STATISTICA versão 8 [STATISTICA, 2007].
3.1. BASES DE DADOS
As quinze bases de dados selecionadas para os experimentos foram
tomadas do repositório de dados da escola de computação e informática da
Universidade da Califórnia – Irvine [UCI 2007]. Todas as bases são da área de
saúde. A seleção destas bases tomou como premissa a diversidade quanto ao
número de atributos, instâncias e classes. O Quadro 5 apresenta algumas
características das bases selecionadas.
Nome da Base N o Instâncias N o Classes N o Atributos
arrhythmia 452 2 280 audiology 226 24 70 breast cancer 286 2 10 Wdbc 569 2 31 wisconsin breast cancer 699 2 10 kr vs kp 3.196 2 37 Heart statlog 270 2 14 pima diabetes 768 2 9 cleveland14heart disease 303 2 14 hepatitis 155 2 20 hypothyroid 3.772 4 30 Hyper hormonal 2.800 4 30 echo cardiogram 132 3 12 post operative 90 3 9 sick euthyroid 3.163 2 26
Quadro 5 Características das bases de dados do conjunto BD.
46
Pode-se observar que algumas destas bases de dados possuem um
grande número de atributos, por exemplo, a base de dados arrhythmia com 280
atributos. Tem-se ainda, para esta base de dados, o complicador dado pelo
pequeno número de instâncias comparativamente ao número de atributos. Tal
proporcionalidade pode ser entendida como uma especificidade da área da
saúde, visto que os dados não são, na sua grande maioria, capturados de forma
automática e também devido à subjetividade da área. A filtragem de atributos
irrelevantes pode ser uma solução para aumentar significativamente a relação
entre número de instâncias versus número de atributos.
Em geral, a redução do número de atributos ou da dimensionalidade é
realizada para buscar uma economia de tempo de processamento e de
memória, bem como evitar atributos redundantes. O maior problema ligado a
este processo é não remover atributos relevantes para se obter padrões
interessantes e ainda manter a eficiência dos algoritmos de aprendizagem de
máquina. A verificação da degradação ou da não eficiência dos métodos J48,
BAGGING e BOOSTING sobre bases de dados com suas dimensionalidades
reduzidas é um item do experimento.
Nome
da Base Derivada No
Instâncias No
Classes No
Atributos Redução
em % arrhythmia_f 452 2 38 86% audiology_f 226 24 7 90% breast câncer_f 286 2 6 40% wdbc_f 569 2 12 61% wisconsin breast cancer_f 699 2 10 0% kr vs kp_f 3.196 2 8 78% heart statlog_f 270 2 8 43% pima diabetes_f 768 2 5 44% cleveland14heart disease_f 303 2 8 43% hepatitis_f 155 2 11 45% hypothyroid_f 3.772 4 6 80% hyper hormonal_f 2.800 4 7 77% echo cardiogram_f 132 3 6 50% post operative_f 90 3 6 33% sick euthyroid_f 3.163 2 7 73%
Quadro 6 Características das bases de dados após filtragem de atributos.
O Quadro 6 mostra o resultado, em termos de redução do número de
atributos, após a seleção de atributos realizada por meio da aplicação da
abordagem filter. Esta abordagem tenta selecionar um subconjunto de atributos
independente do algoritmo de classificação. Ela estima a qualidade dos
atributos apenas em relação aos dados [BALA; JONG; HUANG; VAFAIE;
WECHSLER, 1996]. Para distinguir as bases de dados originais das bases de
47
dados derivadas por meio da filtragem de atributos, foi acrescido ao nome de
base de dados o termo “_f”. A coluna mais a direita deste quadro mostra, em
percentual, a redução da dimensionalidade de cada base de dados.
A abordagem filter envolve a aplicação de algoritmos específicos de
filtragem de atributos. Estes algoritmos podem ser aplicados individualmente ou
por combinação. A escolha do método de filtragem é um problema em si
mesmo. Neste trabalho, foi feito um estudo sobre a abordagem filtro e que
consistiu em aplicar sobre a base de dados Arrhythmia algumas combinações
de algoritmos implementados na ferramenta WEKA. O Quadro 7 apresenta as
combinações testadas, bem como a eficiência de cada combinação com
algumas variantes sobre a mesma base de dados Arrhythmia. Tais
combinações envolveram a geração de subconjuntos de atributos através dos
algoritmos BESTFIRST e RANKSEARCH, avaliação da qualidade de atributos
selecionados com os algoritmos CONSISTENCYSUBSETEVAL e CFSSUBSETEVAL, e
validação do resultado através do algoritmo J48. A geração de subconjuntos
através de RANKSEARCH foi utilizada com a geração de ordens (ranks) através
de duas variantes: GAINRATIOATTRIBUTEEVAL e CFSSUBSETEVAL. Maiores
informações sobre estas opções podem ser encontradas em [HALL; HOLMES,
2003].
Algoritmos p/ Avaliação/Geração/Validação Atrib. Cla ssif. J48 Bagging Boosting
CfsSubsetEval/BestFirst/J48 38 50 77,40% 84,95% 85,84%
CfsSubsetEval/ RankSearch(GainRatioAttributeEval)/J48
134 50 76,43% 83,66% 83,62%
CfsSubsetEval/ RankSearch(CfsSubsetEval)/J48 38 50 77,40% 84,95% 85,84%
ConsistencySubsetEval/BestFirst/J48 20 50 80,50% 82,74% 81,63%
ConsistencySubsetEval/ RankSearch(GainRatioAttributeEval)/J48
127 50 75,00% 84,29% 82,52%
ConsistencySubsetEval/
RankSearch(CfsSubsetEval)/J48
106 50 75,00% 84,00% 84,73%
Quadro 7 Eficácia dos filtros para seleção de atributos sobre a base arrhythmia.
A observação dos valores de taxa de acerto no Quadro 7, indica que as
combinações dos filtros CFSSUBSETEVAL/RANKSEARCH(CFSSUBSETEVAL)/J48 e
CFSSUBSETEVAL/BESTFIRST/J48 tiveram ambos a maior eficácia em BAGGING e
BOOSTING, 84,95% e 85,84% respectivamente. É importante notar, em
particular, que a combinação CFSSUBSETEVAL/BESTFIRST/J48 possui uma
complexidade de execução menor, pois não gera um rank de busca.
48
Nesta mesma linha, os autores [LIU; LI; WONG, 2002] e [HALL, 2000]
indicam, como apropriadas, tais combinações de algoritmos para serem
utilizadas com filtros de atributos em bases de dados. Dada a eficácia do filtro
CFSSUBSET/BESTFIRST/J48, o mesmo foi adotado, neste trabalho, para todas as
situações que envolveram a redução da dimensionalidade das bases de dados.
De forma concreta, as bases de dados listadas no Quadro 6 foram obtidas
utilizando o filtro CFSSUBSET/BESTFIRST/J48 sobre as bases de dados do
Quadro 5.
No decorrer deste capítulo será utilizado BD como o conjunto das bases
de dados originais e BDf como o conjunto das bases de dados derivadas por
meio do filtro CFSSUBSET/BESTFIRST/J48 (Quadro 8).
BD = {arrhythmia.arff, audiology.arff, breastCancer.a rff, wdbc.arff,
wisconsinBreastCancer.arff, kr_vs_kp.arff, heartSta tlog.arff, pimaDiabetes.arff, cleveland14heartDisease.arff, he patitis.arff, hypothyroid.arff, hyperHormonal.arff, echoCardiogra m.arff, postOperative.arff, sickEuthyroid.arff};
BDf ={arrhythmia_f.arff, audiology_f.arff, breastCance r_f.arff, wdbc_f.arff,
wisconsinBreastCancer_f.arff, kr_vs_kp_f.arff, hear tStatlog_f.arff, pimaDiabetes_f.arff, cleveland14heartDisease_f.arff , hepatitis_f.arff, hypothyroid_f.arff, hyperHormonal _f.arff, echoCardiogram_f.arff, postOperative_f.arff, sickEu thyroid_f.arff};
Quadro 8 Bases de dados para os experimentos. 3.2. CURVA DE APRENDIZAGEM: J48, BAGGING E BOOSTING
O estudo da eficiência dos algoritmos J48, BAGGING e BOOSTING será
realizado por meio da geração de várias curvas de aprendizagem sobre as
bases de dados dos conjuntos BD e BDf.
As escolhas dos métodos de aprendizagem J48, BAGGING e BOOSTING,
basearam-se no desejo de verificar a eficiência, respectivamente, de (i) um
método de aprendizagem de máquina (nível 0), que não realiza internamente a
combinação de classificadores; (ii) de um método de aprendizagem de máquina
(nível 1), que realiza internamente a combinação de classificadores obtidos a
partir de amostras de tamanho fixo; e (iii) de um método de aprendizagem de
máquina (nível 2), que realiza internamente a combinação de classificadores
obtidos a partir de amostras, cujos tamanhos variam em função de uma
heurística. Nesta linha, destacamos, segundo os autores [KUNCHEVA;
SKURICHINA; DUIN, 2002], [FREUND; SCHAPIRE, 1996], que a combinação
49
de classificadores deve tornar a aprendizagem mais eficiente, e os métodos
BAGGING e BOOSTING são os mais representativos desta classe de métodos.
O processo específico para obtenção das curvas de aprendizagem de
cada método sobre as bases de dados dos conjuntos BD e BDf, consiste
basicamente em aplicar uma seqüência de procedimentos definidos mais
adiante na forma de algoritmos. Estes últimos são formalizados por três
funções, a saber: f, g, h (Algoritmo 4).
• A função f recebe como entrada uma base de dados qualquer (ex.
arrhythmia.arff) e um método de aprendizagem (ex. J48), e retorna a
taxa de acerto do classificador gerado;
• A função g recebe como entrada uma base de dados qualquer (ex.
arrhythmia.arff), um método de aprendizagem (ex. J48) e um método
de amostragem (ex. resample), e retorna um vetor contendo 10
valores reais, onde cada um deles corresponde à taxa de acerto de 10
classificadores obtidos a partir de 10 diferentes amostras da mesma
base de dados. Este algoritmo utiliza internamente o conjunto
TA = {10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90%, 100%}, onde cada
elemento ta ∈ TA corresponde a um tamanho de amostra. Cada
elemento do vetor retornado corresponde à taxa de acerto do
classificador gerado para uma amostra cujo tamanho pertence à TA;
• A função h recebe como entrada um conjunto de bases de dados (ex.
BD), um método de aprendizagem (ex. J48) e um método de
amostragem (ex. resample), e retorna uma matriz de valores reais, de
ordem (|BD| x |TA|), onde cada linha corresponde ao conjunto dos
valores das precisões dos classificadores gerados a partir de
diferentes amostras sobre uma mesma base de dados. Cada linha da
matriz corresponde a uma base de dados e cada coluna a uma
amostra de tamanho diferente.
A execução completa do experimento, no tocante a geração dos dados
para desenhar as curvas de aprendizagem, é realizada por um conjunto de
ações executas seqüencialmente (Algoritmo 4).
50
função f(bd: DataSetARFF , método : caracter ) : real início DataSet : dClassificador; real : taxadeacerto; dClassificador ← obterClassificador(bd, método); taxadeacerto ← obterTaxadeacerto(dClassificador);
retorne taxadeacerto; fim.
função g(bd: DataSetARFF , método, amostrador : caracter ) : VetorReal início DataSet : dAmostra; inteiro : i; para i de 1 até | TA| faça início dAmostra ← obterAmostra(bd, amostrador, TA[i]); vTaxadeacerto[i] ← f(dAmostra, método); fim. retorne vTaxadeacerto; fim.
função h(DBL : ListOfDataSet, método, amostrador : caracter ) : MatrizReal início DataSet : bdARFF; caracter : bd; VetorReal : vTaxadeacerto; MatrizReal : mTaxadeacerto; inteiro : i, j; para i de 1 até | DBL| faça início bd ← lerArquivo(DBL[i]); vTaxadeacerto ← g(bdARFF, método, amostrador); para j de 1 até |TA| faça início mTaxadeacerto[i][j] ← vTaxadeacerto[j]; fim. i ← i + 1; fim. retorne mTaxadeacerto; fim. programa EstudoDaCurvaDeAprendizagem() início
tipo VetorReal = vetor [|TA|] : real ; tipo MatrizReal = matriz [|BD|,|TA|] : real ;
MatrizReal : mTaxadeacertoJ48comSeleção;
MatrizReal : mTaxadeacertoBAGcomSeleção; MatrizReal : mTaxadeacertoBOOcomSeleção;
MatrizReal : mTaxadeacertoJ48semSeleção; MatrizReal : mTaxadeacertoBAGsemSeleção; MatrizReal : mTaxadeacertoBOOsemSeleção;
mTaxadeacertoJ48semSeleção ← h(BD, “J48”, “resample”); mTaxadeacertoBAGsemSeleção ← h(BD, “BAGGING”, “resample”); mTaxadeacertoBOOsemSeleção ← h(BD, “BOOSTING”, “resample”); mTaxadeacertoJ48comSeleção ← h(BDf, “J48”, “resample”); mTaxadeacertoBAGcomSeleção ← h(BDf, “BAGGING”, “resample”); mTaxadeacertoBOOcomSeleção ← h(BDf, “BOOSTING”, “resample”);
fim .
Algoritmo 4 Estudo da Curva de Aprendizagem.
51
O programa EstudoDaCurvaDeAprendizagem invoca a função h seis
vezes. Cada invocação retorna uma matriz de ordem (|BD| x |TA|), onde cada
linha representa uma base de dados e cada coluna uma amostra. Três matrizes
armazenam respectivamente as precisões obtidas pela aplicação da função h
sobre as bases de dados do conjunto BD com métodos de aprendizagem J48,
BAGGING e BOOSTING. As outras três matrizes armazenam, por outro lado, as
precisões obtidas pela aplicação da função h sobre as bases de dados do
conjunto BDf com os mesmos métodos de aprendizagem.
O método de amostragem utilizado é uma implementação do pacote de
software WEKA. Tal implementação corresponde a um filtro supervisionado de
instâncias, chamado Resample. Este método de amostragem, quando aplicado
sobre uma base de dados, gera uma nova amostra e mantém para esta as
mesmas distribuições para cada classe. O número de exemplos da série de
dados a serem amostrados (tamanho da amostra) pode ser especificado. Ele é
um parâmetro do algoritmo Resample, ou seja, ele especifica o tamanho da
série de dados de saída como uma porcentagem da série de dados da entrada.
O Quadro 9 resume o número de classificadores gerados para a primeira
parte do experimento—curva de aprendizagem. O número de classificadores
leva em conta que cada método de aprendizagem é aplicado para 10 amostras
de cada base de dados, de um total de 30 bases de dados (15 bases sem
filtragem de atributos e 15 bases derivadas). Tem-se assim 300 classificadores
para cada método de aprendizagem. Entretanto, BAGGING e BOOSTING são
métodos que combinam internamente certo número de classificadores, i.e., um
novo classificador a cada iteração do algoritmo. Para o experimento, o número
de iterações foi fixado em 10. Assim, o número de classificadores gerados pelos
métodos BAGGING e BOOSTING deve ser multiplicado por 10.
Número de Bases de Dados
(|BD| + |BDf |) Número de Amostras
Número de Iterações
SUBTOTAL
J48 30 10 1 300
BAGGING 30 10 10 3.000
BOOSTING 30 10 10 3.000
TOTAL DE CLASSIFICADORES 6.300
Quadro 9 Número de classificadores do primeiro experimento.
52
Note-se que este número de 6.300 classificadores não implica no mesmo
número de resultados, ou seja, cada um dos métodos irá computar apenas 300
resultados de taxa de acerto, totalizando 900 resultados para os métodos J48,
BAGGING e BOOSTING que correspondem aos valores reais encontrados nas seis
matrizes de 10x15 elementos do Algoritmo 4.
As curvas de aprendizagem e suas análises são apresentadas na Seção
4 – Resultados – na forma de quadros detalhados e gráficos com valores
médios. Cada curva é apresentada na forma de gráficos individuais no Anexo
A. Cada gráfico exibe três curvas de aprendizagem para uma mesma base de
dados, onde cada uma delas mostrará a eficiência de um dos seguintes
métodos: J48, BAGGING e BOOSTING. De forma mais precisa, o eixo x cada gráfico
indica, em percentuais 10 em 10 até 100%, o tamanho das amostras de uma
mesma base de dados. Por outro lado, o eixo y indica o valor de taxa de acerto
para cada amostra em x. Temos assim 30 gráficos e 90 curvas.
A análise destes gráficos indica qual método é mais eficiente segundo a
taxa de acerto. Adicionalmente, é possível perceber se a redução da
dimensionalidade das bases de dados influencia significativamente na eficiência
dos métodos de aprendizagem testados.
3.3. NÚMERO DE CLASSIFICADORES: BAGGING E BOOSTING
Os métodos BAGGING e BOOSTING são exemplos de abordagens que
combinam certo número de classificadores na expectativa de obter-se uma
melhor eficiência em uma determinada tarefa de aprendizagem.
Esta segunda etapa do estudo experimental consistirá em gerar, para
cada base de dados de BD e BDf, um de conjunto valores de taxa de acerto,
variando significativamente o número de classificadores (ou iterações), para os
métodos BAGGING e BOOSTING.
O interesse aqui é verificar por meio de um conjunto de experimentos e
análise estatística dos resultados, qual é o impacto do número de
classificadores na eficiência dos métodos BAGGING e BOOSTING. É importante
notar que os conjuntos de classificadores diferem entre si pelo número de
iterações que é executado internamente por cada método. Por esta razão,
53
alguns autores se referem a este tipo de variação como variação do número de
iterações [MITCHELL, 1998], [FAYYAD, PIATESKY-SHAPIRO, SMYTH, 1996],
[DIETTERICH, 2000], [BREIMAN, 2000].
O processo específico para obtenção dos diversos conjuntos de dados
para apoiar o estudo da verificação do impacto do número de classificadores na
eficiência dos métodos supracitados, consiste basicamente em aplicar uma
seqüência de procedimentos definidos mais adiante na forma de algoritmos.
Estes últimos são formalizados por três funções, a saber: q, r, s (Algoritmo 5).
• A função q recebe como entrada uma base de dados qualquer (ex.
arrhythmia.arff), um método de aprendizagem (ex. Bagging), um
gerador de amostras (ex. resample) e um valor nC indicando o número
de iterações (ex. 140), e retorna um valor real com a taxa de acerto
média de 10 classificadores gerados a partir de dez amostras. É
importante notar que para cada amostra o método de aprendizagem
executará nC iterações internas;
• A função r recebe como entrada uma base de dados qualquer (ex.
arrhythmia.arff), um método de aprendizagem (ex. Bagging) e método
de amostragem (ex. resample), e retorna um vetor com 15 valores
reais, onde cada um deles corresponde à taxa de acerto média
retornada pela função q. Este algoritmo utiliza internamente o
conjunto NC = {10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 120, 140,
160, 180, 200}, onde cada elemento de NC corresponde a um número
diferente de iterações passado como parâmetro à função q. Cada
elemento do vetor retornado corresponderá à taxa de acerto de um
classificador gerado com um número de iterações pertencente a NC;
• A função s recebe como entrada um conjunto de bases de dados (ex.
BD), um método de aprendizagem (ex. Bagging) e um método de
amostragem (ex. resample), e retorna uma matriz de valores reais, de
ordem (|BD| x |NC|), onde cada linha corresponde ao conjunto dos
valores das precisões de diferentes classificadores gerados a partir de
diferentes números de iterações sobre uma mesma base de dados.
Cada linha da matriz corresponderá a uma base de dados e cada
coluna a um número de iterações diferente.
54
função q(bd: DataSet , método, amostrador : caracter , nC : inteiro ) : re al início DataSet : dAmostra; DataSet : dClassificador; real : média, soma ← 0; para i de 1 até 10 faça início dAmostra ← obterAmostra(bd, amostrador); dClassificador ← obterClassificador(dAmostra, método, nC); soma ← soma + obterTaxadeacerto(dClassificador); fim. média ← soma / 10; retorne média; fim.
função r(bd: DataSet , método, amostrador : caracter ): VetorReal início inteiro : i; para i de 1 até | NC| faça vTaxadeacerto[i] ← q(bd, método, amostrador, NC[i]); retorne vTaxadeacerto; fim . função s(DBL : ListOfDataSet , método , amostrador : caracter ) : MatrizReal início DataSet : bd; VetorReal : vTaxadeacerto; MatrizReal : mTaxadeacerto; inteiro : i,j; para i de 1 até | DBL| faça início bd ← lerArquivo(DBL[i]); vTaxadeacerto ← r(bd, método, amostrador); para j de 1 até | NC| faça mTaxadeacerto[i][j] ← vTaxadeacerto[j]; fim. retorne mTaxadeacerto; fim.
programa EstudoDoImapctoDoNúmeroDeClassificadores() início
tipo VetorReal ← vetor [|BD|] : real ; tipo MatrizReal ← matriz [|BD|,|NC|] : real ;
MatrizReal : mTaxadeacertoBAGcomSeleção; MatrizReal : mTaxadeacertoBOOcomSeleção; MatrizReal : mTaxadeacertoBAGsemSeleção; MatrizReal : mTaxadeacertoBOOsemSeleção;
mTaxadeacertoBAGcomSeleção ← s(BD, “BAGGING”, “resample”); mTaxadeacertoBOOcomSeleção ← s(BD, “BOOSTING”, “resample”);
mTaxadeacertoBAGsemSeleção ← s(BDf, “BAGGING”, “resample”); mTaxadeacertoBOOsemSeleção ← s(BDf, “BOOSTING”, “resample”);
fim.
Algoritmo 5 Estudo do Impacto do Número de Classificadores.
55
A execução completa do experimento, face a geração dos dados para
avaliar o fator de impacto do número de iterações para os métodos BAGGING e
BOOSTING, é realizada por um conjunto de ações descritas algoritmicamente por
meio do programa EstudoDoImpactoDoNúmeroDeClassificadores (Algoritmo 5).
Este programa invoca a função s quatro vezes. Cada invocação retorna uma
matriz de ordem (|BD| x |NC|), onde cada linha representa uma base de dados e
cada coluna um número de iterações. Duas matrizes armazenam
respectivamente as precisões obtidas pela aplicação da função s sobre as
bases de dados do conjunto BD com métodos de aprendizagem BAGGING e
BOOSTING. As outras duas matrizes armazenam, por outro lado, as precisões
obtidas pela aplicação da função s sobre as bases de dados do conjunto BDf
com os mesmos métodos.
Nesta segunda parte do experimento, o método de amostragem utilizado
é o mesmo que foi utilizado na primeira parte do experimento. Relembrando,
este método corresponde a um filtro supervisionado de instâncias, chamado
Resample. Quando aplicado sobre uma base de dados, este método gera uma
nova amostra e esta última conserva as distribuições das classes.
O Quadro 10 resume o número de classificadores gerados para a
segunda parte do experimento—estudo do impacto do número de
classificadores para os métodos BAGGING e BOOSTING.
Número de Bases de Dados (|BD| + |BDf |)
Número de Amostras ∑ =
15
1i iNC
SUBTOTAL
BAGGING 30 10 1350 405.000
BOOSTING 30 10 1350 405.000
TOTAL DE CLASSIFICADORES 810.000
Quadro 10 Número de classificadores.
O cálculo do número de classificadores leva em conta que cada método
de aprendizagem é aplicado sobre 10 amostras de cada base de dados, de um
total de 30. Ter-se-ia assim 300 classificadores para cada método de
aprendizagem. Entretanto, BAGGING e BOOSTING são métodos que combinam
internamente certo número de classificadores, ou seja, um novo classificador é
gerador a cada iteração do algoritmo. Para este experimento, o número de
iterações que varia de 10 em 10 até 100 e de 20 em 20 até 200, totaliza 1350
iterações sobre cada amostra. Desta forma, o número de classificadores
56
gerados nas iterações deve ser multiplicado por 10, que corresponde ao número
de amostras por cada base de dados de um total de 30 bases.
Cabe salientar que apesar do número de classificadores utilizado ser
igual a 810.000, o número de resultados de taxa de acerto obtido é de 450 para
cada um dos métodos, pois temos 15 variações de classificadores aplicadas a
cada uma das 30 bases. Desta forma, para os métodos BAGGING e BOOSTING
totaliza-se 900 resultados (quatro matrizes de 15x15 elementos).
Como anteriormente, os dados obtidos e suas análises são apresentados
na Seção 4 – Resultados – através de quadros detalhados e gráficos com
valores médios. No Anexo B os valores obtidos são apresentados na forma de
gráficos individuais. Cada gráfico exibe quatro curvas para o par de bases de
dados correspondendo a mesma base de dados original, sendo uma do
conjunto BD e a outra análoga do conjunto BDf. Para cada uma destas bases
análogas temos duas curvas, uma delas mostra a eficiência, quanto ao número
de classificadores segundo o método BAGGING, e a outra segundo o método
BOOSTING. De forma mais precisa, o eixo x de cada gráfico indica, o número de
iterações/classificadores de 10 em 10 até 100 e depois de 100, de 20 em 20 até
200, para uma mesma base de dados. Por outro lado, o eixo y indica um valor
de taxa de acerto para cada número de iterações em x. Temos assim 15
gráficos e 60 curvas.
Os resultados desta segunda etapa de experimentos são analisados
estatisticamente com base no teste de Friedman para verificar o nível de
significância da variação da taxa de acerto segundo o número de classificadores
gerados. Apoiar-se-á sobre a mesma análise estatística para verificar se a
diferença encontrada entre os resultados obtidos a partir dos dois conjuntos de
bases de dados, BD e DBf, possui relevância numérica.
57
4. Resultados
Esta seção apresenta os resultados de um estudo experimental que
envolve os métodos de aprendizagem de máquina J48, BAGGING e BOOSTING,
cuja meta principal é analisar a eficiência destes métodos sobre um conjunto de
bases de dados da área de saúde.
Os dados para análise são gerados a partir de dois conjuntos de bases
de dados de teste. O primeiro denominado BD compreende um conjunto de
bases de dados da área da saúde. O segundo denominado BDf possui as
mesmas bases de dados de BD, porém com suas dimensionalidades reduzidas
por um processo de filtragem de atributos. Doravante, usar-se-á bases de dados
sem seleção e com seleção para referir-se ao conteúdo de BD e BDf,
respectivamente.
O restante desta seção se divide em dois momentos. O primeiro tratará
da verificação do método que possui a melhor taxa de acerto; isto será feito por
meio da análise da curva de aprendizagem para cada método estudado (Seção
4.1). O segundo momento será consagrado à análise de impacto do número de
classificadores na eficiência dos métodos BAGGING e BOOSTING (Seção 4.2).
4.1. ANÁLISE DA CURVA DE APRENDIZAGEM: J48, BAGGING E BOOSTING
A análise de eficiência para os métodos de aprendizagem de máquina
J48, BAGGING e BOOSTING foi realizada por meio da geração de várias curvas de
aprendizagem. Uma curva para cada método e base de dados, ou seja, cada
base de dados foi dividida em dez amostras de tamanhos diferentes e para
cada amostra foi aplicado um dos métodos supracitados.
As curvas de aprendizagem foram geradas tanto para as bases de dados
de BD (sem seleção de atributo), quanto para as bases de dados de BDf (com
seleção de atributo). Na apresentação a seguir, dessas curvas, manter-se-á
esta ordem respectivamente.
58
As taxas de acerto obtidas nos experimentos estão sumarizados em seis
quadros, a saber:
• Quadro 11 apresenta, em percentuais, os valores de taxa de acerto
para a curva de aprendizagem gerada para o método J48 e as bases
de dados de BD;
• Quadro 12 apresenta, em percentuais, os valores de taxa de acerto
para a curva de aprendizagem gerada para o método BAGGING e as
bases de dados de BD;
• Quadro 13 apresenta, em percentuais, os valores de taxa de acerto
para a curva de aprendizagem gerada para o método BOOSTING e as
bases de dados de BD;
• Quadro 14 apresenta, em percentuais, os valores de taxa de acerto
para a curva de aprendizagem gerada para o método J48 e as bases
de dados de BDf;
• Quadro 15 apresenta, em percentuais, os valores de taxa de acerto
para a curva de aprendizagem gerada para o método BAGGING e as
bases de dados de BDf;
• Quadro 16 apresenta, em percentuais, os valores de taxa de acerto
para a curva de aprendizagem gerada para o método BOOSTING e as
bases de dados de BDf.
Os valores presentes em cada um dos quadros supracitados
correspondem respectivamente as matrizes mTaxadeacertoJ48sem, mTaxade
acertoBAGsem, mTaxadeacertoBOOsem, mTaxadeacertoJ48com, mTaxadeacertoBAGcom e
mTaxadeacertoBOOcom geradas por meio da execução do Algoritmo 4 (Seção
Metodologia). Todos os resultados apresentados nestes quadros estão
detalhados graficamente no Anexo A.
Para facilitar a tabulação dos dados, cada uma das bases recebeu um
identificador numérico conforme a Tabela 5.
Tabela 12 Identificador Numérico das Bases de Dados Originais
ID base ID base ID base
1 arrhythmia 6 kr vs kp 11 hepatitis
2 audiology 7 pima diabetes 12 hyper hormonal
3 breast cancer 8 cleveland14heart disease 13 hypothyroid
4 wisconsin breast cancer 9 echo cardiogram 14 post operative
5 wdbc 10 heart statlog 15 sick euthyroid
59
4.1.1. Curvas de Aprendizagem: Conjunto BD
Como já dito anteriormente, os quadros 11, 12 e 13 apresentam os dados
gerados para o conjunto de bases de dados BD. Os dados nestes quadros
deram origem a 15 gráficos apresentados no Anexo A, sendo um para cada
base de dados. Cada gráfico contém três curvas de aprendizagem, uma para
cada um dos métodos de aprendizagem de máquina J48, BAGGING e BOOSTING.
Para quase todas as bases de dados, pôde-se observar que o aumento
do tamanho da amostra também influencia no incremento da taxa de acerto.
Entretanto, percebeu-se que, para 4 de 15 bases de dados, a saber, bases 3, 4,
9 e 10 (breast cancer, wisconsin breast cancer, echo cardiogram, heart statlog), a taxa de
acerto para as amostras de tamanho 100% foram menores que aqueles obtidos
com amostras parciais. Por exemplo, o método BOOSTING aplicado sobre uma
amostra de 20% da base de dados echo cardiogram, assim como o método
BAGGING aplicado sobre uma amostra de 10% da base heart statlog, têm-se uma
excelente taxa de acerto. Um exemplo contrário, o método BOOSTING aplicado
sobre uma amostra de 20% de cada uma das seguintes bases de dados breast
cancer e cleveland14heart disease não tem o mesmo desempenho. Em geral,
observa-se que para quase todas as bases de dados, que existe uma forte
variação da taxa de acerto para amostras de diferentes origens. Portanto,
conclui-se que existem amostras de mesmo tamanho que são mais adequadas
e outras menos adequadas em função da base de dados.
De acordo com o gráfico da Figura 11, percebe-se que o método
BOOSTING apresenta as maiores taxas de acerto em 93%, i.e., ele foi melhor em
14 das 15 bases de dados. Percebe-se ainda que os métodos BAGGING e
BOOSTING foram superiores ao J48 nestas 14 bases. Este resultado não é
surpresa, pois os métodos BAGGING e BOOSTING são métodos mais sofisticados
e teoricamente deveriam ter uma melhor aprendizagem devido a combinação de
classificadores. Apenas a base de dados 5 (wdbc) apresentou um
comportamento diferente das demais, onde BAGGING foi mais eficiente que o
BOOSTING.
60
Tamanho de Amostra ID da Base 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
01 87 80 70 77 82 85 88 89 89 87 02 77 69 69 70 81 75 78 82 81 83 03 75 75 74 75 76 70 73 73 78 75 04 90 96 98 96 96 97 97 97 97 96 05 93 93 94 96 96 95 95 97 98 98 06 92 97 98 99 99 99 99 99 99 99 07 75 78 72 73 75 75 77 78 84 84 08 77 77 76 71 77 76 80 83 82 83 09 69 85 59 69 73 68 73 79 72 75 10 93 70 79 76 79 75 84 86 86 87 11 53 71 87 87 83 83 89 85 88 87 12 97 98 99 99 99 99 99 99 99 99 13 98 99 99 100 100 99 99 100 100 100 14 33 56 50 49 61 60 67 57 63 15 97 97 96 97 97 98 98 98 98 98
Quadro 11 Valores percentuais de taxa de acerto para a curva de aprendizagem gerada para o método J48 e as bases de dados de BD.
Tamanho de Amostra ID da Base 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
01 80 77 78 84 82 89 90 89 91 91 02 77 73 75 77 81 77 83 84 84 85 03 79 74 69 74 78 73 75 75 78 78 04 90 94 97 97 97 97 98 97 98 98 05 98 95 95 97 96 96 97 98 97 98 06 93 97 99 99 99 99 99 99 99 99 07 70 80 77 81 78 80 84 84 87 87 08 83 77 70 78 81 82 85 84 84 87 09 69 69 59 67 71 70 76 73 72 79 10 89 80 74 81 85 83 88 87 87 88 11 73 84 87 87 83 86 89 86 91 89 12 98 98 99 99 99 99 99 99 99 99 13 98 99 100 100 100 100 99 100 99 100 14 39 56 61 56 70 63 68 67 70 15 97 97 96 97 98 98 98 98 98 99
Quadro 12 Valores percentuais de taxa de acerto para a curva de aprendizagem gerada para o método BAGGING e as bases de dados de BD.
Tamanho de Amostra ID da Base 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
01 82 83 76 80 86 89 90 91 90 93 02 77 73 75 80 81 86 89 89 92 92 03 79 58 73 72 76 78 82 86 87 83 04 91 97 98 96 98 99 99 98 99 98 05 96 95 95 96 95 97 97 97 98 97 06 95 99 99 100 100 100 100 100 100 100 07 72 82 77 82 80 82 84 87 88 89 08 80 67 70 77 80 86 87 89 88 89 09 54 85 62 67 80 72 83 81 81 83 10 89 80 80 78 85 83 88 88 89 91 11 53 77 89 90 83 81 87 90 91 91 12 98 99 99 99 99 99 99 100 100 99 13 98 98 99 99 100 100 100 100 100 100 14 39 63 69 69 80 76 72 74 84 15 98 97 96 97 98 99 99 99 99 99
Quadro 13 Valores percentuais de taxa de acerto para a curva de aprendizagem gerada para o método BOOSTING e as bases de dados de BD.
61
Cada valor mostrado no gráfico da Figura 11 corresponde a taxa média
de acerto obtida para todas as amostras de um mesmo tamanho para cada uma
das 15 bases. Este cálculo foi realizado para os três métodos analisados. Desta
forma, cada curva corresponde a dez valores médios para um mesmo método.
Com uma rápida observação deste gráfico percebe-se claramente que os
valores médios de taxa de acerto para o método BOOSTING, exceto os casos das
amostras de tamanho 10% e 20%, são sempre superiores aos demais. Os
gráficos que mostram os resultados individuais da curva de aprendizagem para
cada base estão no Anexo A.
80
82
84
86
88
90
92
94
J48 83,8135 81,1787 81,6542 82,2532 84,0621 83,7072 86,0073 87,4874 87,2445 87,6611
Bag 85,3452 82,1405 82,0190 85,2417 85,4936 86,5907 88,2051 88,2201 88,7546 89,7997
Boo 83,1168 81,9127 83,4149 85,5965 87,2797 88,6384 90,6341 91,0464 91,6380 92,6069
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Figura 11 Curva de aprendizagem média para as bases de BD: J48, BAGGING e BOOSTING.
De forma minuciosa, pode-se observar que para o método J48 têm-se
alguns picos, por exemplo, para amostras de 10%, 50% e 80%. Analogamente,
têm-se também alguns picos para o método BAGGING para amostras de 10%,
40%, 70% e 100%. Já para o método BOOSTING, têm-se a partir de amostras de
30% valores médios de taxa de acerto sempre crescentes, em uma escala
quase linear. Mesmo que o método BAGGING tenha bons resultados para
pequenas amostras (10% e 20%), observa-se que o método BOOSTING tem uma
62
eficiência em termos de taxa de acerto sempre superior para as demais
amostras.
Em termos gerais, o melhor desempenho é do método BOOSTING.
Todavia, não se recomenda desprezar por completo, o método BAGGING que
pode apresentar comportamento superior ao BOOSTING para amostras
pequenas. Por esta razão, seria prematuro descartar o método BAGGING da
análise de impacto do número de classificadores que será objeto da Seção 4.2.
4.1.2. Curvas de Aprendizagem: Conjunto BDf
Os experimentos efetuados sobre as bases de dados do conjunto BDf,
i.e., bases de dados que sofreram uma redução significativa de seus atributos
por meio de um processo de filtragem, foram conduzidos de maneira análoga ao
que foi executado na seção anterior.
Os quadros 14, 15 e 16 apresentam respectivamente os dados gerados
para o conjunto de bases de dados BDf. Estes dados deram origem a 15
gráficos apresentados no Anexo A, sendo um para cada base de dados. Cada
gráfico contém três curvas de aprendizagem, uma para cada um dos métodos
de aprendizagem de máquina utilizados: J48, BAGGING e BOOSTING.
Em geral, pôde-se observar que para bases de dados cujas suas
dimensionalidades foram reduzidas, a eficiência do método BOOSTING
permaneceu superior aos demais. Desta forma, a seleção de atributos não
altera a hierarquia entre os métodos. Isto sugere que a eficiência do método, em
termos de taxa de acerto, depende fortemente das características próprias de
cada base de dados. Neste sentido, há pouca importância sobre a filtragem ou
não de atributos irrelevantes (ou redundantes). Esta conclusão é importante à
medida que a seleção de atributos torna o processo de aprendizagem mais
rápido e sem prejuízo significativo da taxa de acerto.
63
Tamanho da Amostra ID da
Base 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% 01 87 78 84 86 87 84 88 89 90 88 02 82 71 66 68 76 73 77 79 77 81 03 75 75 67 69 73 67 68 68 73 67 04 90 96 98 96 96 97 97 97 97 96 05 93 93 93 96 96 95 95 96 98 96 06 92 93 93 93 93 94 93 94 94 94 07 70 81 72 71 76 71 75 75 76 78 08 80 80 70 72 75 75 81 80 83 83 09 69 62 46 50 70 63 61 65 62 70 10 93 70 70 80 80 78 84 85 84 87 11 80 77 87 87 83 86 90 87 89 90 12 97 98 98 99 99 99 99 99 99 99 13 97 97 98 98 98 97 98 98 98 98 14 39 52 47 67 54 67 67 62 64 15 94 94 94 95 96 95 95 96 96 96
Quadro 14 Valores percentuais de taxa de acerto para a curva de aprendizagem gerada para o método J48 e as bases de dados de BDf.
Tamanho da Amostra ID da Base 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
01 84 79 84 87 85 88 89 92 91 92 02 82 71 66 71 73 73 79 80 82 83 03 79 72 71 72 73 72 75 74 75 70 04 90 94 97 97 97 97 98 97 98 98 05 98 96 96 95 95 96 97 98 97 97 06 92 93 93 93 93 94 93 93 94 94 07 71 80 79 76 77 78 84 82 82 85 08 83 68 72 74 82 82 84 82 82 86 09 62 65 46 58 64 65 75 71 68 76 10 89 81 74 80 85 80 85 86 85 88 11 80 81 89 89 84 85 91 89 90 90 12 98 98 98 99 99 99 99 99 99 99 13 96 97 97 98 98 98 98 98 98 98 14 39 59 56 71 59 70 63 67 67 15 94 94 94 95 96 95 96 96 96 96
Quadro 15 Valores percentuais de taxa de acerto para a curva de aprendizagem gerada para o método BAGGING e as bases de dados de BDf.
Tamanho da Amostra ID da Base 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
01 87 81 84 84 89 88 92 92 91 92 02 77 67 79 78 77 81 85 86 89 90 03 82 74 78 77 78 74 71 76 79 75 04 91 97 98 96 98 99 99 98 99 98 05 96 96 97 97 96 96 96 98 98 98 06 92 93 93 93 93 94 93 94 94 94 07 72 80 78 80 81 81 85 87 88 88 08 83 75 73 78 82 81 86 88 88 90 09 62 77 49 58 76 66 70 72 72 83 10 85 78 74 80 84 85 86 87 89 89 11 80 81 91 90 88 81 87 88 89 90 12 99 98 98 98 98 99 99 99 99 99 13 95 96 97 97 98 98 98 98 98 98 14 39 48 47 64 61 65 60 69 70 15 95 95 95 95 96 97 97 97 97 98
Quadro 16 Valores percentuais de taxa de acerto para a curva de aprendizagem gerada para o método BOOSTING e as bases de dados de BDf.
64
Como já dito anteriormente, a eficiência dos métodos sobre as bases de
dados de DBf, em termos comparativos manteve-se. Entretanto, pôde-se
observar que a redução do número de atributos diminui a taxa de acerto dos
métodos. Tal diminuição ocorreu para todas as bases de dados de BDf, exceto
a base de dados 8 (cleveland14heart disease), onde houve um aumento da taxa de
acerto, e da base de dados 4 (wisconsin breast cancer) que, obviamente, não foi
afetada, visto que a mesma não sofreu nenhuma redução do número de
atributos.
Em praticamente metade dos casos a redução de atributos representou
uma pequena perda na taxa de acerto inferior a 2%. Apenas em um terço dos
casos houve uma perda significativa na taxa de acerto (em média 5%). Este foi
o caso, por exemplo, da base 6 (kr vs kp) em todos os métodos onde houve um
perda de cerca de 5% e da base14 (post operative) no método BOOSTING onde
houve uma perda de cerca de 14%. Pode-se observar que para a base de
dados 14 a redução de atributos foi semelhante às demais bases. Por outro
lado, para a base de dados 6 a redução de atributos foi bastante significativa, de
37 para 8 atributos. Esta redução de atributos será provavelmente significativa,
posto que o número de instâncias desta base é relativamente grande (3.196).
Em casos assim, o ganho estaria na provável redução do tempo de
aprendizagem. Desta forma, a perda na taxa de acerto de cerca de 5% tende a
ser um custo relativamente baixo quando comparado ao ganho do tempo
processamento e de memória.
Da mesma forma que o gráfico da Figura 11, o gráfico da Figura 12
apresenta os valores médios para os métodos J48, BAGGING e BOOSTING
aplicados sobre as bases de dados do conjunto BDf. Os 15 gráficos com os
resultados individuais para cada base, e cuja média está representada no
gráfico da Figura 12, podem ser vistos de forma detalhada no Anexo A.
Uma rápida observação deste gráfico permite observar claramente que
os valores médios de taxa de acerto para o método BOOSTING, superiores aos
demais, exceto nos casos das amostras de tamanhos 10% e 70%, onde o
método BAGGING apresenta uma ligeira superioridade. Os gráficos que mostram
os resultados individuais da curva de aprendizagem para cada base de dados
de DBf também encontram-se no Anexo A.
65
78
80
82
84
86
88
90
92
J48 85,5430 80,3285 79,1728 80,4051 84,3163 81,9081 84,4751 84,9796 85,0906 85,7921
Bag 85,5693 80,6137 81,0312 82,5483 84,8013 83,9981 87,5221 86,6591 86,9381 87,8728
Boo 85,4045 81,8019 82,1218 83,3640 86,6212 85,2470 87,3117 87,9871 89,3233 90,0794
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Figura 12 Curva de aprendizagem média para as bases de BDf: J48, BAGGING e BOOSTING.
.
De forma pormenorizada, pode-se também observar que para o método
J48 têm-se aqui alguns picos, por exemplo, para amostras de 10%, 50% e
100%. Estes picos são semelhantes aos que foram mostrados na Figura 11.
Têm-se também alguns picos para o método BAGGING, onde o destaque é o
valor da taxa de acerto média para a amostra de 70% que foi ligeiramente
superior ao método BOOSTING. Este último mantém uma eficiência média
superior aos demais, assim como, uma curva de aprendizagem regular com
ganhos na taxa de acerto gradativos de acordo com o aumento do tamanho das
amostras.
Conforme já observado nos testes para as bases de dados do conjunto
BD, o método BOOSTING apresenta a melhor, ou pelo menos equivalente,
eficiência em todas as situações. Porém, para um número razoável de
experimentos com diversos tamanhos de amostras pôde-se observar que os
valores para o método BAGGING aproximaram-se dos valores encontrados para
o método BOOSTING. Desta forma, na próxima seção será colocado em
evidência o impacto do número de classificadores, em termos de taxa de acerto
para os métodos BOOSTING e BAGGING.
66
4.2. NÚMERO DE CLASSIFICADORES
Nesta seção a análise de eficiência para os métodos de aprendizagem de
máquina BAGGING e BOOSTING foi realizada por meio da geração de vários
experimentos, variando o número de classificadores para dez amostras de uma
mesma base de dados. Este processo foi realizado tanto para as bases de
dados de BD (sem seleção de atributo) quanto para as bases de dados de BDf
(com seleção de atributo). A taxa de acerto obtida nos experimentos estão
sumarizadas em quatro quadros, a saber:
• Quadro 17 apresenta, em percentuais, os valores de taxa de acerto
variando o número de classificadores gerados para o método BAGGING
sobre as bases de dados de BD.
• Quadro 18 apresenta, em percentuais, os valores de taxa de acerto
variando o número de classificadores gerados para o método BAGGING
sobre as bases de dados de BDf.
• Quadro 20 apresenta, em percentuais, os valores de taxa de acerto
variando o número de classificadores gerados para o método
BOOSTING sobre as bases de dados de BD.
• Quadro 21 apresenta, em percentuais, os valores de taxa de acerto
variando o número de classificadores gerados para o método
BOOSTING sobre as bases de dados de BDf.
Os valores presentes em cada um dos quadros supracitados
correspondem respectivamente as matrizes mTaxadeacertoBAGsem, mTaxade
acertoBOOsem, mTaxadeacertoBAGcom e mTaxadeacertoBOOcom geradas por meio da
execução do Algoritmo 5 (Seção Metodologia). Os resultados apresentados
nestes quadros estão detalhados através de gráficos individuais no Anexo B.
Sobre as taxas de acerto encontradas foi desenvolvida uma análise
estatística por meio do teste de Friedman para ambos os experimentos sobre as
bases de dados de BD e BDf. Cabe salientar que o objetivo desta seção não é
comparar os métodos BAGGING e BOOSTING entre si, mas determinar o quanto a
eficiência de cada um dos métodos individualmente é afetada pelo número de
classificadores/iterações. Desta forma, as próximas subseções apresentam a
análise individual destes métodos sobre BD e BDf.
67
4.2.1. Impacto do Número de Classificadores: Método BAGGING
Os quadros 17 e 18 apresentam respectivamente os dados gerados para
o conjunto de bases de dados BD e BDf. Estes quadros correspondem
respectivamente às matrizes mTaxadeacertoBAGsem e mTaxadeacertoBAGcom
geradas a partir da execução do Algoritmo 5 para método BAGGING.
Número de Classificadores ID da
Base 10 20 30 40 50 60 70 80 90 100 120 140 160 180 200 01 82 83 84 83 84 84 84 84 84 84 84 84 84 84 84
02 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81
03 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73
04 96 96 96 96 96 96 96 96 96 96 96 96 96 96 96
05 95 95 95 96 96 96 96 96 96 96 96 96 96 96 96
06 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
07 76 76 76 76 76 76 76 76 76 76 76 76 76 76 76
08 79 80 80 79 80 80 80 80 80 80 80 80 80 80 80
09 61 61 62 62 63 62 62 63 62 63 62 63 63 63 63
10 81 81 81 81 81 81 81 81 81 81 81 82 82 82 82
11 81 81 81 81 82 82 81 81 81 81 81 81 81 82 82
12 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
13 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
14 69 69 69 69 69 69 69 69 69 69 69 69 69 69 69
15 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98
Quadro 17 Valores percentuais de taxa de acerto variando o número de classificadores gerados para o método BAGGING sobre as bases de dados de BD.
Número de Classificadores ID da Base 10 20 30 40 50 60 70 80 90 100 120 140 160 180 200
01 84 84 84 85 85 85 85 85 85 85 85 85 85 85 85
02 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80
03 73 73 73 73 73 74 73 73 73 73 73 73 73 73 73
04 96 96 96 96 96 96 96 96 96 96 96 96 96 96 96
05 96 96 96 96 96 96 96 96 96 96 96 96 96 96 96
06 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94
07 75 76 76 76 76 75 75 75 75 76 76 76 76 76 75
08 79 80 80 80 80 80 80 80 80 80 80 80 80 80 80
09 62 62 62 63 63 63 62 63 63 62 63 63 63 63 63
10 82 82 82 82 82 82 82 82 83 83 83 82 82 82 82
11 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81
12 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98
13 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98
14 70 70 70 70 70 70 70 70 70 70 70 70 70 70 70
15 95 95 96 96 96 96 96 96 96 96 96 96 96 96 96
Quadro 18 Valores percentuais de taxa de acerto variando o número de classificadores gerados para o método BAGGING sobre as bases de dados de BDf.
A primeira observação a ser feita é que os resultados encontrados
indicam a mesma ordem de grandeza nas diferenças numéricas entre a
aplicação dos métodos sobre ambos os conjuntos de bases de dados de BD e
BDf. Desta forma, a seleção de atributos continua tendo pouco impacto na taxa
68
de acerto obtida. Isto indica que a variação no número de classificadores não é
beneficiada ou prejudicada pela seleção de atributos.
Uma segunda observação diz respeito a um possível aumento da taxa de
acerto devido ao aumento no número de classificadores. Num olhar mais
minucioso sobre os resultados das bases de dados de BD observa-se que para
a maioria das bases (11 delas) houve algum aumento da taxa de acerto, porém
insignificante. Apenas para as bases 1 (arrhythmia) e 9 (echo cardiogram) houve um
aumento da taxa de acerto acima de 1%. De forma análoga, pode-se observar
um comportamento semelhante para as bases de DBf. No entando, para estas
bases não houve nenhum caso onde o aumento da taxa de acerto foi superior a
1%.
O Quadro 19 apresenta os resultados do teste de Friedman para o
método BAGGING sobre ambos os conjuntos de bases de dados BD e BDf.
Pode-se dizer que os valores apontam para uma progressão numérica da taxa
de acerto a medida que aumenta-se o número de classificadores em ambos os
conjuntos de dados.
Sem Seleção de Atributos Com Seleção de Atributos Número de
Classificadores média desvio média desvio 10 84,53 ±12,43 84,18 ±11,42 20 84,80 ±12,33 84,37 ±11,38 30 84,81 ±12,34 84,40 ±11,37 40 84,89 ±12,24 84,44 ±11,29 50 85,02 ±12,13 84,49 ±11,27 60 84,99 ±12,19 84,56 ±11,24 70 85,00 ±12,14 84,47 ±11,36 80 85,05 ±12,09 84,50 ±11,31 90 85,03 ±12,14 84,49 ±11,34 100 85,03 ±12,07 84,44 ±11,40 120 85,04 ±12,10 84,49 ±11,31 140 85,11 ±12,06 84,47 ±11,33 160 85,09 ±12,08 84,49 ±11,30 180 85,10 ±12,06 84,48 ±11,30 200 85,10 ±12,08 84,52 ±11,24
p-valor 0,00000 0,00323 Quadro 19 Teste Estatístico de Friedman para BAGGING.
No Quadro 19, temos para cada número de classificadores as médias e
desvios encontrados sobre as taxas de acerto para todas as bases de dados,
bem como os índices de p-valor inferiores ao nível de significância de 0,05. Este
último valor permite rejeitar estatisticamente a hipótese nula pela qual um valor
de taxa de acerto obtido pertence a um mesmo conjunto de dados, i.e., admite-
69
se a hipótese alternativa de que existem diferenças relevantes entre os valores.
Nota-se que esta conclusão por si só não permite afirmar uma progressão na
taxa de acerto em função do aumento do número de classificadores. Por outro
lado, ela permite afirmar que os conjuntos de valores são de um ponto de vista
estatístico, diferentes entre si. Esta conclusão, somada à observação do
aumento numérico da taxa de acerto verificado em algumas bases, permite
deduzir que de fato existe uma progressão nos valores. Note-se ainda que pelos
p-valores calculados é possível observar que a variação nas bases de dados de
BD é mais significativa (p-valor inferior a 10E-5) do que a variação observada
nas bases de dados de BDf (p-valor inferior a 0,00323).
84
85
86
Bag sem 84,53 84,80 84,81 84,89 85,02 84,99 85,00 85,05 85,03 85,03 85,04 85,11 85,09 85,10 85,10
Bag com 84,18 84,37 84,40 84,44 84,49 84,56 84,47 84,50 84,49 84,44 84,49 84,47 84,49 84,48 84,52
10 20 30 40 50 60 70 80 90 100 120 140 160 180 200
Figura 13 Impacto médio do número de classificadores para o método BAGGING.
O gráfico da Figura 13 mostra as variações médias obtidas para as bases
de dados de BD e BDf em cada uma das possibilidades em termos de número
de classificadores (eixo horizontal). Pode-se verificar que a progressão
numérica da taxa de acerto, segundo o teste de Friedman, é estatisticamente
relevante, apesar da pequena variação da taxa de acerto.
70
4.2.2. Impacto do Número de Classificadores: Método BOOSTING
Os quadros 20 e 21 apresentam respectivamente os dados gerados para
o conjunto de bases de dados BD e BDf. Estes quadros correspondem
respectivamente às matrizes mTaxadeacertoBOOsem e mTaxadeacertoBOOcom
geradas a partir da execução do Algoritmo 5 para o método BOOSTING.
Uma primeira observação dos valores permite verificar que os dados aqui
encontrados são semelhantes aos mesmos apresentados pelo método
BAGGING. Em geral, as variações em percentual são numericamente pequenas.
Número de Classificadores ID da
Base 10 20 30 40 50 60 70 80 90 100 120 140 160 180 200 01 81 82 83 83 83 83 83 84 84 84 84 84 84 84 84
02 85 85 84 85 85 85 85 85 85 85 85 85 85 84 85
03 67 67 67 66 66 66 66 66 66 66 66 66 66 66 66
04 96 96 96 97 97 97 97 97 97 97 97 97 97 97 97
05 96 97 97 97 97 97 97 97 97 97 97 97 97 97 97
06 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100
07 72 73 73 73 74 74 74 74 74 74 74 74 74 74 74
08 79 80 80 80 80 80 80 81 81 81 81 81 81 81 81
09 61 61 60 62 61 62 62 62 62 62 62 62 62 62 62
10 79 80 80 80 80 80 81 81 80 80 80 80 80 80 80
11 82 83 84 83 84 84 84 84 85 85 85 85 85 85 85
12 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
13 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
14 55 56 56 56 56 56 56 56 56 56 56 56 56 56 56
15 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98
Quadro 20 Valores percentuais de taxa de acerto variando o número de classificadores gerados para o método BOOSTING sobre as bases de dados de BD.
Número de Classificadores ID da Base 10 20 30 40 50 60 70 80 90 100 120 140 160 180 200
01 83 84 85 85 85 85 85 85 85 85 86 86 86 86 86
02 80 79 79 79 79 79 79 79 79 79 79 79 79 79 79
03 72 72 72 72 72 72 72 72 72 72 72 72 72 72 72
04 96 96 96 97 97 97 97 97 97 97 97 97 97 97 97
05 96 96 96 96 96 96 96 96 97 97 97 97 97 97 97
06 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94
07 75 75 75 75 75 75 75 75 75 75 75 75 75 75 75
08 79 79 79 79 79 79 79 79 79 79 79 79 79 79 79
09 64 63 63 63 63 63 63 63 63 63 63 63 63 63 63
10 79 79 79 78 79 78 78 78 78 78 78 78 78 78 78
11 81 81 81 80 81 80 81 81 81 80 80 80 80 80 80
12 96 97 97 97 97 97 97 97 97 97 97 97 97 97 97
13 98 98 98 98 98 98 98 98 98 98 98 98 98 98 98
14 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64
15 95 95 95 95 95 96 95 95 95 95 95 95 95 95 95
Quadro 21 Valores percentuais de taxa de acerto variando o número de classificadores gerados para o método BOOSTING sobre as bases de dados de BDf.
Uma análise caso a caso das bases de dados de BD mostra que o
método BOOSTING apresenta um aumento na taxa de acerto e este aumento
acompanha o número de classificadores em 9 das 15 bases de dados. Os
71
casos mais significativos são para as bases de dados: 1 (arrhythmia), 7 (pima
diabetes), 8 (cleveland14heart disease) e 11 (hepatitis). Fazendo o mesmo tipo de
análise às bases de dados de BDf, verifica-se um resultado distinto. Apenas a
base de dados 1 apresentou um aumento na taxa de acerto significativo,
enquanto as bases de dados 2 (audiology), 9 (echo cardiogram), 10 (heart statlog) e 11
(hepatitis) apresentaram uma redução da taxa de acerto com o aumento do
número de classificadores.
O teste de Friedman deve então indicar se há significância estatística da
variação da taxa de acerto para o método BOOSTING. O Quadro 22 apresenta as
médias, desvios e p-valores resultantes do teste de Friedman com nível de
significância adotado de 5%.
Sem seleção de atributos Com seleção de atributos Número de classificadores média desvio média desvio
10 83,12 ±14,73 83,37 ±11,89 20 83,67 ±14,47 83,52 ±12,15 30 83,73 ±14,61 83,60 ±12,15 40 83,89 ±14,41 83,50 ±12,19 50 83,96 ±14,46 83,57 ±12,19 60 84,02 ±14,43 83,57 ±12,27 70 84,04 ±14,41 83,54 ±12,20 80 84,14 ±14,37 83,54 ±12,20 90 84,11 ±14,45 83,57 ±12,20
100 84,11 ±14,44 83,56 ±12,21 120 84,19 ±14,42 83,56 ±12,22 140 84,24 ±14,36 83,54 ±12,24 160 84,25 ±14,37 83,54 ±12,26 180 84,21 ±14,40 83,55 ±12,25 200 84,16 ±14,47 83,54 ±12,26
p-valor 0,00000 0,19986 Quadro 22 Teste Estatístico de Friedman para BOOSTING.
Como no caso anterior sobre o método BAGGING, o teste para o método
BOOSTING aplicado sobre as bases de dados de BD indica uma significância
estatística no aumento da taxa de acerto em decorrência do aumento do
número de classificadores (aceitação da hipótese alternativa). Desta forma, o
teste de Friedman rejeita a hipótese nula (p-valor inferior a 10E-5). Por outro
lado, o aumento da taxa de acerto decorrente do aumento do número de
classificadores para a aplicação do método BOOSTING para as bases de dados
de DBf não rejeita a hipótese nula. O p-valor obtido é superior a 0,05 (0,19986).
Desta forma, não se pode afirmar que há estatisticamente diferenças
significativas nos valores encontrados. Consequentemente, para o método
72
BOOSTING aplicado as bases de dados de BDf a taxa de acerto não aumenta de
acordo com o aumento do número de classificadores.
83
84
85
Boo sem 83,12 83,67 83,73 83,89 83,96 84,02 84,04 84,14 84,11 84,11 84,19 84,24 84,25 84,21 84,16
Boo com 83,37 83,52 83,60 83,50 83,57 83,57 83,54 83,54 83,57 83,56 83,56 83,54 83,54 83,55 83,54
10 20 30 40 50 60 70 80 90 100 120 140 160 180 200
Figura 14 Impacto médio do número de classificadores para o método BOOSTING.
O gráfico da Figura 14 mostra as médias obtidas para as bases de dados
de BD e BDf para as diversas configurações de números de classificadores. A
informação visual deste gráfico evidencia a baixa relevância do aumento do
número de classificadores na taxa de acerto do método BOOSTING para bases
de dados de BDf.
73
5. Conclusão
Na área da saúde, a seleção adequada do método de descoberta de
conhecimento é essencial. Em geral, nesta área, as bases de dados possuem
um grande número de atributos, um pequeno número de ocorrências e com
grande freqüência valores ausentes. Desta forma, tem-se um universo
complexo em termos do grande número de variáveis e valores ausentes. Frente
a tais características, a utilização de técnica de aprendizagem de máquina
baseada na geração e combinação de classificadores mostrou-se uma
abordagem promissora. Além disso, a redução da dimensionalidade por meio da
filtragem de atributo também é, em geral, uma solução importante para viabilizar
uma tarefa de aprendizagem em um tempo de processamento razoável.
Pôde-se verificar, a partir da geração e análise de várias curvas de
aprendizagem, que o método BOOSTING tem uma eficiência superior aos
demais, a saber: J48 e BAGGING. Entretanto, cabe aqui uma ressalva para
destacar que para casos pontuais o método BAGGING apresentou uma taxa de
acerto semelhante e em raras situações chegou a ser numericamente superior
aos resultados obtidos pelo método BOOSTING. Com relação ao J48, o método
BAGGING foi sempre superior.
Em termos mais particulares, para bases de dados sem redução da
dimensionalidade (conjunto BD) a eficiência do método BOOSTING foi mais
marcante do que àquela do método BAGGING. A diferença de taxa de acerto do
método BOOSTING para o método BAGGING chegou a ser de até 14%, por
exemplo, para base de dados 14 (post operative ), enquanto que a maior
diferença entre ambos para as bases de dados com redução da
dimensionalidade (conjunto BDf) foi de 7% para a base dados 9 (echo
cardiogram ). Na média, a eficiência do método BOOSTING frente à BAGGING foi
de 2,8% para o conjunto BD e 2,2% para o conjunto BDf. Em resumo, o método
BOOSTING foi mais eficiente que os demais métodos em 29 das 30 bases de
dados de teste.
Pôde-se observar, por meio da análise das curvas de aprendizagem
obtidas, que houve diminuição da taxa de acerto para ambos os métodos em
conseqüência da seleção de atributos. Considerando o universo de bases de
74
dados de BDf, a diminuição da taxa de acerto em todas as bases do
experimento e para os três métodos foi em média 1,5%. A diminuição da taxa
de acerto média individual dos métodos foi de 1,3% para J48, de 1,4% para
BAGGING e de 1,7% para BOOSTING. Estes valores mostram uma diminuição da
taxa de acerto generalizada para todos os métodos. Entretanto, pode-se
considerar que tal diminuição é relativamente baixa frente aos elevados
percentuais de redução do número de atributos após a aplicação de um
processo de filtragem.
Dado o fato, que neste trabalho, não foi feita uma análise em
profundidade para verificar, se a redução da taxa de acerto dos métodos é
compensada pelo ganho de desempenho (tempo de processamento e consumo
de memória) em conseqüência da seleção de atributos. Podemos apenas
afirmar, em termos gerais ou por observação, que a seleção de atributos reduz
a taxa de acerto dos métodos. Em suma, a seleção de atributos é recomendada
apenas se existe uma necessidade clara em reduzir a dimensionalidade de uma
base de dados, por exemplo, para economizar em tempo de processamento em
tarefa de aprendizagem.
Em geral, sobre o segundo objetivo desde trabalho, pode-se dizer que o
aumento do número de classificadores/iterações para os métodos BAGGING e
BOOSTING gera um impacto positivo tanto sobre as bases de dados com como
sem seleção de atributos. No entanto, para o método BOOSTING, verificou-se
que o aumento da taxa de acerto não ocorre em 100% dos casos para as bases
de dados após a filtragem de atributos. Em outras palavras, o método BOOSTING
aplicado sobre o conjunto de bases de dados BDf não apresentou,
estatisticamente, mudança significativa da taxa de acerto quando se aumenta o
número de classificadores/iterações. Isto pode ser concluído pela observação
dos gráficos com as médias das precisões obtidas e também pelo teste
estatístico de Friedman apresentado.
Para o método BAGGING, apesar de ter sido observado pelo teste de
Friedman um aumento estatístico significativo tanto para as bases de dados
sem seleção de atributos como para as bases de dados com seleção de
atributos, tal evolução é numericamente pequena. Dentro do escopo da análise
aqui desenvolvida, pode-se dizer que para o método BOOSTING sem seleção de
75
atributos, ou para o método BAGGING com e sem seleção de atributos existe um
ganho de taxa de acerto com o aumento do número de classificadores.
Em conclusão, recomenda-se a utilização do método BOOSTING sem
seleção de atributos e com tantos classificadores quanto possível para
aumentar a taxa de acerto obtida. Obviamente, tal recomendação é válida
quando as características da base de dados de treinamento se assemelham
aquelas das bases de dados de teste utilizadas no contexto deste trabalho.
É importante relembrar que o presente trabalho não teve por ambição
exaurir o tema. Vários problemas se encontram em aberto e são trabalhos
futuros naturais a esta dissertação. Dentre as diversas possibilidades de
continuações sugere-se as seguintes atividades:
1. A experimentação de outras abordagens e outros algoritmos para
seleção de atributos no intuito de verificar, em particular, se os métodos
BAGGING e BOOSTING mantém suas eficiências; e
2. A verificação dos resultados de eficiência obtidos frente a outras bases
de dados da saúde, tipicamente, bases de dados locais que podem ter
características semelhantes ou não às bases utilizadas que são em sua
totalidade oriundas de instituições da área da saúde estrangeiras.
76
Referências
BALA, J.; JONG, K.D.E.; HUANG, J.; VAFAIE, H.; WECHSLER, H. Using learning to facilitate the evolution of features for recognizing visual concepts. Evolutionary computation , 4(3), 297-311, 1996. BARANAUSKAS, J.A. Extração de conhecimento por múltiplos indutores . [Doutorado] USP: São Carlos, 2001. BARLETT, P.; FREUND, Y.; LEE, W.S.; SCHAPIRE, R.E.: Boosting the margin: A new explanation for the effectiveness of voting methods. Proc 14th International Conference on Machine Learning. Morgan Kaufmann, San Francisco (1997) 320-330. Disponível em http://citeseer.ist.psu.edu/schapire97boosting.html Acesso em 26 Agosto 2007.
BAUER, E.; KOHAVI, R. An Empirical Comparison of Voting Classification Algorithms: Bagging, Boosting, and Variants. Machine Learning , 36(1/2): 105-139. Springer, 1999. BREIMAN, L. Bagging predictors. Machine learning , 24(2), 123-140, Springer, 1996. BREIMAN, L. Randomizing outputs to increase prediction accuracy. Machine learning, 40(3),229-42, 2000. BREIMAN, L. Some infinity theory for predictor ensembles . California: University Of California, 2000a. BUSSAB, W.O.; MORETTIN, P.A. Estatística Básica. São Paulo: Saraiva, 2002. CARVALHO, L.A.V. Data mining , 2 ed, São Paulo: Erica, 2001. DASH, M.; LIU, H. Feature selection for classification. Intelligent data analysis: An International Journal, 1(3), 131-156, 1997. DATE, C.J. Introdução a sistema de banco de dados . Elsevier, 8ª Edição 2004. DEMSAR, J. Statistical Comparisons of Classifiers over Multiple Data Sets. Journal of Machine Learning Research , 7: 1-30, 2006. DIAMANTIDIS, N.A.; KARLIS, D.; GIANKOUMAKIS, E.A. Unsupervised stratification of cross-validation for accuracy estimation. Artificial Intelligence, 116: 1-16, 2000.
77
DINIZ, C.A.R; LOUZADA-NETO, F. Data mining - Uma introdução , SINAPE, 2000. DIETTERICH T.G. An Experimental Comparison of Three Methods for Constructing Ensembles of Decision Trees: Bagging, Boosting, and Randomization. Machine Learning , 40(2): 139-157, Springer, 2000. EKLUND, P.W; HOANG, A. A performance Survey of Public Domain Supervised Machine Learning Algorithms , 2001. Disponível em http://citeseer.ist.psu.edu/142129.html Acesso em 26 Agosto 2007. FAYYAD, U.; PIATETSKY-SHAPIRO, G.; SMYTH, P. From data mining to knowledge discovery. advances in knowledge discover y & Data Mining ,1-34, 1996. FREITAS, A.A. Data mining and knowledge discovery with evolutionary algorithms, Springer-Verlag ,2002. FREUND, Y. SCHAPIRE, R.E. A decision-theoretic generalization of on-line learning and an application to boosting. Journal of Computer and System Sciences , 55:119-39,1997. FREUND, Y.; SCHAPIRE, R.E. Experiments with a new boosting algorithm. Proceedings of the 13 th International Conference on Machine Learning , 148-156, Morgan Kaufmann, 1996. GRAY,R.M. Entropy and information theory. Springer Verlag , New York, 1990. GRANDVALET, Y. Bagging Equalizes Influence. Machine Learning, 55(3): 251-270, 2004. GOLDSCHIDT, R.; PASSOS, E. Data mining – um guia prático . Campus, 2005. HALL, M.A., & HOLMES, G. Benchmarking attribute selection techniques for discrete data mining. IEEE Transactions on Knowledge and Data Engineering , 15(3), 2003. HALL, M., Correlation-based feature selection for discrete and numeric class machine learning. Proceedings of the Seventeenth International Confer ence on Machine Learning, 359-366, 2000. HOLSHEIMER, S. A. Data Mining - The search for knowledge in databases , Report CS-R9406, CWI (Centre for Mathematics and Computer Science), Amsterdam, 1994.
78
KOHAVI, R.; JOHN, G.H. The wrapper approach, In: Liu H, Motoda H. (Eds.) Feature Extraction, Construction and Selection: a d ata mining perspective , 33-49; 1998. KOTSIANTI, S.B.; KANELLOPOULOS, D. Combining Bagging, Boosting and Dagging for Classification Problems. Knowledge-Based Intelligent Information and Engineering Systems , LNAI 4693, Springer, 2007. KUNCHEVA, L.I.; SKURICHINA, M.; DUIN, R.P.W. An experimental study on diversity for bagging and boosting with linear classifiers, Information Fusion . 3 (4):245-258, Elsevier. 2002. LIU, H.; MOTODA, H. Feature selection for knowledge discovery and data mining . Kluwer, 1998. LIU, H.; YU, L. Toward integrating feature selection algorithms for classification and clustering. IEEE Transactions on Knowledge and Data Engineering , 17(4): 491-502, 2005. LIU, H., LI, J., WONG, L. A comparative Study on Feature Selection and Classification Methods Using Gene Expression Profiles and Proteomic Patterns. Genome Informatics, 13:51-60, 2002. MITCHELL, T. Machine Learning . McGraw-Hill, 1997. MONARD, M.C.B; BARANAUSKAS, J.A. Indução de Regras e Árvores de Decisão. In: Sistemas inteligentes, São Paulo: Manole, 2003. QUINLAN, J.R. C4.5: Programs for machine learning. San Francisco: Morgan Kaufman, 1993. QUINLAN, J.R. Bagging, Boosting and C4.5. Proceedings of the Thirteenth National Conference on Artificial Intelligence and Eighth Innovative Applications of Artificial Intelligence Conference, AAAI 96, IAAI 96, August 4-8, 1996, Portland, Oregon - Volume 1. AAAI Press / The MIT Press, 1996. QUINLAN, J. R. Induction of decision trees. Machine Learning , 1(1): 81-106, 1986. REZENDE, S.O. Sistemas inteligentes, fundamentos e aplicações . São Paulo: Manole, 2003. RUSSEL, S.; NORVIG, P. Artificial Intelligence: A modern approach, . Prentice-Hall, 2002. SCHAPIRE, R.E.F.; LEE, W.S. Boosting the margin: A new explanation for the effectiveness of voting methods. In: Fischer DH [editor]. Proc Fourteenth International Conference on Machine Learning , San Francisco: Morgan Kaufmann, 332-340, 1997.
79
SCUSE, D.E.; REUTEMANN, P. Weka Experimenter Tutorial for Version 3.4 , Disponível em: http://www.cs.waikato.ac.nz/ml/weka/ - Acesso em 26 de Agosto de 2007. SIEGEL, S. Estatística Não Paramétrica. São Paulo: McGraw Hill, 1975. STATISTICA software package version 8. http://www.statsoft.com Acesso em 26 de Agosto 2007. TAN, M.; STEINBACH, V.; KUMAR, A.W. Introduction to Data Mining , 2006. UCI: Machine Learning Repository Content Summary. Disponível em http://www.ics.uci.edu/~mlearn/MLSummary.html Acesso em 26 Agosto 2007. WITTEN, I.H; FRANK, E. Data mining: practical machine learning tools and techniques with Java implementations , Morgan Kaufmann, 2000. WITTEN, I.H; FRANK, E. Data Mining: Practical machine learning tools and techniques , 2 ed. San Francisco: Morgan Kaufmann, 2005.
80
ANEXO A – Resultados Brutos de Taxa de acerto e Grá ficos com as Curvas de Aprendizagem
Neste anexo encontra-se em cada uma das páginas, gráficos e tabelas com os resultados de taxa de acerto obtidos para cada uma das bases testes. Em cada uma destas páginas encontram-se dois gráficos. No primeiro gráfico mostra-se os índices de taxa de acerto obtidos para os métodos J48, Bagging e Boosting (eixo y) aplicados às bases teste sem seleção de atributos. O segundo gráfico exibe os mesmos resultados aplicados às bases devidamente alteradas (vide seção 3.1) pelo processo de seleção de atributos. Note-se que para a quarta base teste (wisconsin breast cancer), ambos os gráficos são idênticos, pois o processo de seleção de atributos não reduziu a base de teste original. Em todos os gráficos apresenta-se no eixo x o tamanho incremental das amostras consideradas de 10% a 100%. A única exceção é o caso da décima quarta base teste, que devido ao seu tamanho reduzido (apenas 90 instâncias) não foi possível fazer uma amostra de tamanho 10% onde os métodos pudessem ser aplicados. Por esta razão, tanto no gráfico dos resultados sem e com seleção de atributos desta base não existem resultados para amostra de tamanho 10%. As 15 bases testes, seu número de instâncias, número de classes, bem como o número de atributos nas versões sem e com seleção de atributos são as descritas no quadro abaixo.
Bases Instâncias Classes Atributos
Sem Seleção
Atributos Com
Seleção 1 arrhythmia 452 2 280 38 2 audiology 226 24 70 7 3 breast cancer 286 2 10 6 4 wisconsin breast cancer 699 2 10 10 5 wdbc 569 2 31 12 6 kr vs kp 3196 2 37 8 7 pima diabetes 768 2 9 5 8 cleveland14heart disease 303 2 14 8 9 echo cardiogram 132 3 12 6
10 heart statlog 270 2 14 8 11 hepatitis 155 2 20 11 12 hyper hormonal 2800 4 30 7 13 hypothyroid 3772 4 30 6 14 post operative 90 3 9 6 15 sick euthyroid 3163 2 26 7
81
Anexo A.1. Base Teste arrhythmia – Curva de Aprendizagem
70
75
80
85
90
95
J48 86,6667 80,0000 70,3704 77,2222 81,8584 85,2399 87,9747 88,6427 89,1626 86,9469
Bag 80,0000 76,6667 77,7778 83,8889 82,3009 89,2989 89,5570 89,1967 90,6404 91,3717
Boo 82,2222 83,3333 76,2963 80,0000 86,2832 89,2989 89,8734 90,8587 89,6552 92,9204
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting sem seleção de atributos aplicados à base arrhythmia
70
75
80
85
90
95
J48 86,6667 77,7778 83,7037 85,5556 86,7257 84,1328 87,6582 89,4737 90,1478 88,2743
Bag 84,4444 78,8889 83,7037 86,6667 85,3982 87,8229 88,9241 91,6898 90,6404 92,0354
Boo 86,6667 81,1111 83,7037 84,4444 88,9381 87,8229 92,4051 91,6898 91,1330 92,2566
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting com seleção de atributos aplicados à base arrhythmia
82
Anexo A.2. Base Teste audiology – Curva de Aprendizagem
65
70
75
80
85
90
95
J48 77,2727 68,8889 68,6567 70,0000 80,5310 74,8148 78,4810 81,6667 80,7882 83,1858
Bag 77,2727 73,3333 74,6269 76,6667 80,5310 77,0370 82,9114 84,4444 84,2365 84,5133
Boo 77,2727 73,3333 74,6269 80,0000 81,4159 85,9259 89,2405 89,4444 91,6256 92,0354
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting sem seleção de atributos aplicados à base audiology
65
70
75
80
85
90
95
J48 81,8182 71,1111 65,6716 67,7778 76,1062 73,3333 76,5823 78,8889 77,3399 81,4159
Bag 81,8182 71,1111 65,6716 71,1111 72,5664 73,3333 79,1139 80,0000 81,7734 83,1858
Boo 77,2727 66,6667 79,1045 77,7778 76,9912 80,7407 85,4430 85,5556 88,6700 89,8230
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting com seleção de atributos aplicados à base audiology
83
Anexo A.3. Base Teste breast cancer – Curva de Aprendizagem
55
60
65
70
75
80
85
90
J48 75,0000 75,4386 74,1176 74,5614 76,2238 69,5906 73,0000 73,2456 78,2101 75,1748
Bag 78,5714 73,6842 69,4118 73,6842 77,6224 72,5146 74,5000 75,4386 77,8210 77,9720
Boo 78,5714 57,8947 72,9412 71,9298 75,5245 77,7778 82,0000 85,5263 86,7704 83,2168
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting sem seleção de atributos aplicados à base breast cancer
55
60
65
70
75
80
85
90
J48 75,0000 75,4386 67,0588 69,2982 72,7273 67,2515 68,0000 68,4211 73,1518 67,4825
Bag 78,5714 71,9298 70,5882 71,9298 73,4266 71,9298 74,5000 73,6842 75,4864 69,9301
Boo 82,1429 73,6842 77,6471 77,1930 77,6224 73,6842 71,0000 76,3158 78,5992 75,1748
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting com seleção de atributos aplicados à base breast cancer
84
Anexo A.4. Base Teste wisconsin breast cancer – Curva de Aprendizagem
85
87
89
91
93
95
97
99
J48 89,8551 95,6835 97,6077 95,6989 96,2751 96,6587 97,3415 97,4955 96,6614 95,8512
Bag 89,8551 94,2446 97,1292 96,7742 96,5616 97,1360 97,7505 97,4955 97,7742 97,7110
Boo 91,3043 97,1223 97,6077 96,4158 97,9943 98,8067 98,9775 98,3900 98,8871 97,8541
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting sem seleção de atributos aplicados à base wisconsin breast cancer
85
87
89
91
93
95
97
99
J48 89,8551 95,6835 97,6077 95,6989 96,2751 96,6587 97,3415 97,4955 96,6614 95,8512
Bag 89,8551 94,2446 97,1292 96,7742 96,5616 97,1360 97,7505 97,4955 97,7742 97,7110
Boo 91,3043 97,1223 97,6077 96,4158 97,9943 98,8067 98,9775 98,3900 98,8871 97,8541
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting com seleção de atributos aplicados à base wisconsin breast cancer
85
Anexo A.5. Base Teste wdbc – Curva de Aprendizagem
90
91
92
93
94
95
96
97
98
99
100
J48 92,8571 92,9204 93,5294 95,5947 95,7746 95,3079 95,2261 97,1429 98,4375 97,5395
Bag 98,2143 94,6903 95,2941 96,9163 96,1268 95,6012 97,4874 97,5824 96,8750 98,0668
Boo 96,4286 94,6903 95,2941 96,4758 95,0704 96,7742 96,9849 96,7033 98,0469 97,1880
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting sem seleção de atributos aplicados à base wdbc
90
91
92
93
94
95
96
97
98
99
100
J48 92,8571 92,9204 92,9412 96,0352 96,1268 95,3079 95,2261 96,2637 97,6563 95,7821
Bag 98,2143 95,5752 95,8824 95,1542 95,0704 95,6012 97,2362 98,0220 97,4609 97,3638
Boo 96,4286 96,4602 97,0588 97,3568 95,7746 96,1877 95,7286 98,2418 97,8516 97,7153
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting com seleção de atributos aplicados à base wdbc
86
Anexo A.6. Base Teste kr vs kp – Curva de Aprendizagem
90
91
92
93
94
95
96
97
98
99
100
J48 92,4765 97,3396 97,8079 98,9045 98,9362 99,0610 99,2401 99,1784 99,3394 99,3116
Bag 93,4169 97,1831 98,6430 98,7480 98,8736 99,1654 99,2848 99,1393 99,3394 99,3429
Boo 95,2978 98,5915 99,2693 99,6870 99,5620 99,5827 99,5530 99,6088 99,6175 99,6871
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting sem seleção de atributos aplicados à base kr vs kp
90
91
92
93
94
95
96
97
98
99
100
J48 92,1630 93,2707 93,3194 93,2707 93,3041 93,5316 93,4287 93,5055 93,6370 93,5544
Bag 92,1630 93,2707 93,3194 93,2707 93,3041 93,5316 93,4287 93,4664 93,6022 93,5857
Boo 91,5361 93,2707 93,3194 93,2707 93,3041 93,5837 93,3840 93,6620 93,8456 93,7735
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting com seleção de atributos aplicados à base kr vs kp
87
Anexo A.7. Base Teste pima diabetes – Curva de Aprendizagem
65
70
75
80
85
90
J48 75,0000 77,7778 72,1739 72,9642 75,2604 75,0000 76,7225 78,0130 83,9363 83,5938
Bag 69,7368 79,7386 77,3913 81,4332 78,3854 80,4348 83,7989 83,8762 86,9754 87,3698
Boo 72,3684 82,3529 76,9565 81,7590 79,6875 81,7391 84,3575 86,9707 88,1331 88,9323
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting sem seleção de atributos aplicados à base pima diabetes
65
70
75
80
85
90
J48 69,7368 81,0458 72,1739 71,3355 76,3021 71,3043 74,8603 74,5928 76,4110 78,3854
Bag 71,0526 80,3922 78,6957 75,5700 76,8229 77,6087 83,7989 82,2476 82,4891 84,8958
Boo 72,3684 80,3922 77,8261 80,4560 81,2500 80,8696 84,9162 86,6450 88,2779 88,0208
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting com seleção de atributos aplicados à base pima diabetes
88
Anexo A.8. Base Teste cleveland14heart disease – Curva de Aprendizagem
65
70
75
80
85
90
J48 76,6667 76,6667 75,5556 71,0744 76,8212 76,2431 80,1887 83,4711 81,6176 83,1683
Bag 83,3333 76,6667 70,0000 77,6860 80,7947 82,3204 84,9057 84,2975 83,8235 87,4587
Boo 80,0000 66,6667 70,0000 76,8595 80,1325 86,1878 87,2642 89,2562 88,2353 88,7789
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting sem seleção de atributos aplicados à base cleveland14heart disease
65
70
75
80
85
90
J48 80,0000 80,0000 70,0000 71,9008 75,4967 75,1381 81,1321 80,1653 82,7206 82,8383
Bag 83,3333 68,3333 72,2222 74,3802 82,1192 82,3204 84,4340 81,8182 82,3529 86,1386
Boo 83,3333 75,0000 73,3333 77,6860 82,1192 80,6630 85,8491 88,4298 88,2353 89,7690
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting com seleção de atributos aplicados à base cleveland14heart disease
89
Anexo A.9. Base Teste echo cardiogram – Curva de Aprendizagem
45
50
55
60
65
70
75
80
85
J48 69,2308 84,6154 58,9744 69,2308 72,7273 68,3544 72,8261 79,0476 72,0339 75,0000
Bag 69,2308 69,2308 58,9744 67,3077 71,2121 69,6203 76,0870 73,3333 72,0339 78,7879
Boo 53,8462 84,6154 61,5385 67,3077 80,3030 72,1519 82,6087 80,9524 81,3559 83,3333
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting sem seleção de atributos aplicados à base echo cardiogram
45
50
55
60
65
70
75
80
85
J48 69,2308 61,5385 46,1538 50,0000 69,6970 63,2911 60,8696 64,7619 61,8644 70,4545
Bag 61,5385 65,3846 46,1538 57,6923 63,6364 64,5570 75,0000 71,4286 67,7966 75,7576
Boo 61,5385 76,9231 48,7179 57,6923 75,7576 65,8228 69,5652 72,3810 72,0339 82,5758
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting com seleção de atributos aplicados à base echo cardiogram
90
Anexo A.10. Base Teste heart statlog – Curva de Aprendizagem
70
75
80
85
90
95
J48 92,5926 70,3704 79,0123 75,9259 78,5185 74,6914 83,5979 85,6481 86,4198 87,4074
Bag 88,8889 79,6296 74,0741 81,4815 85,1852 82,7160 87,8307 87,0370 87,2428 87,7778
Boo 88,8889 79,6296 80,2469 77,7778 85,1852 83,3333 87,8307 88,4259 89,3004 91,4815
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting sem seleção de atributos aplicados à base heart statlog
70
75
80
85
90
95
J48 92,5926 70,3704 70,3704 79,6296 80,0000 77,7778 84,1270 85,1852 83,5391 86,6667
Bag 88,8889 81,4815 74,0741 79,6296 85,1852 80,2469 85,1852 86,1111 85,1852 88,1481
Boo 85,1852 77,7778 74,0741 79,6296 84,4444 85,1852 85,7143 86,5741 89,3004 88,8889
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting com seleção de atributos aplicados à base heart statlog
91
Anexo A.11. Base Teste hepatitis – Curva de Aprendizagem
50
55
60
65
70
75
80
85
90
95
J48 53,3333 70,9677 86,9565 87,0968 83,1169 82,7957 88,8889 85,4839 88,4892 87,0968
Bag 73,3333 83,8710 86,9565 87,0968 83,1169 86,0215 88,8889 86,2903 90,6475 89,0323
Boo 53,3333 77,4194 89,1304 90,3226 83,1169 80,6452 87,0370 89,5161 90,6475 90,9677
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting sem seleção de atributos aplicados à base hepatitis
50
55
60
65
70
75
80
85
90
95
J48 80,0000 77,4194 86,9565 87,0968 83,1169 86,0215 89,8148 87,0968 89,2086 89,6774
Bag 80,0000 80,6452 89,1304 88,7097 84,4156 84,9462 90,7407 88,7097 89,9281 89,6774
Boo 80,0000 80,6452 91,3043 90,3226 88,3117 80,6452 87,0370 87,9032 89,2086 90,3226
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting com seleção de atributos aplicados à base hepatitis
92
Anexo A.12. Base Teste hyper hormonal – Curva de Aprendizagem
95
96
97
98
99
100
J48 97,1429 98,0357 98,9286 99,0179 98,8571 99,1667 99,1837 99,2411 99,1667 99,2857
Bag 98,2143 98,2143 98,6905 98,9286 98,7857 99,1667 99,2347 99,3304 99,3254 99,3214
Boo 97,8571 98,7500 98,9286 99,1071 98,7857 99,4643 99,3878 99,5089 99,5635 99,4286
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting sem seleção de atributos aplicados à base hyper hormonal
95
96
97
98
99
100
J48 97,1429 97,6786 98,0952 98,6607 98,5714 98,5119 98,6224 98,8839 98,7302 98,5714
Bag 97,5000 97,8571 98,2143 98,7500 98,5714 98,5714 98,7245 98,6607 98,6905 98,5714
Boo 98,5714 98,3929 98,3333 98,4821 98,3571 98,7500 99,0816 98,8393 99,1667 99,0000
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting com seleção de atributos aplicados à base hyper hormonal
93
Anexo A.13. Base Teste hypothyroid – Curva de Aprendizagem
90
91
92
93
94
95
96
97
98
99
100
J48 98,1432 98,8064 99,4695 99,6684 99,7349 99,4697 99,4697 99,5028 99,6170 99,6023
Bag 97,6127 99,0716 99,5579 99,6684 99,6288 99,5139 99,4697 99,6023 99,4991 99,6288
Boo 98,1432 98,4085 99,1158 99,4695 99,5228 99,7349 99,6970 99,7348 99,8527 99,8144
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting sem seleção de atributos aplicados à base hypothyroid
90
91
92
93
94
95
96
97
98
99
100
J48 96,5517 97,4801 97,7011 97,8117 97,6140 97,3487 97,7652 97,6798 97,8491 97,7200
Bag 96,2865 97,2149 97,4359 98,0106 97,8791 97,7464 97,9924 98,0444 98,0554 98,2503
Boo 94,6950 95,7560 96,8170 97,0159 97,6140 98,0999 98,2955 98,3427 98,3500 98,3563
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting com seleção de atributos aplicados à base hypothyroid
94
Anexo A.14. Base Teste post operative – Curva de Aprendizagem
30
40
50
60
70
80
90
J48 33,3333 55,5556 50,0000 48,8889 61,1111 60,3175 66,6667 56,7901 63,3333
Bag 38,8889 55,5556 61,1111 55,5556 70,3704 63,4921 68,0556 66,6667 70,0000
Boo 38,8889 62,9630 69,4444 68,8889 79,6296 76,1905 72,2222 74,0741 84,4444
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting sem seleção de atributos aplicados à base post operative
30
40
50
60
70
80
90
J48 38,8889 51,8519 47,2222 66,6667 53,7037 66,6667 66,6667 61,7284 64,4444
Bag 38,8889 59,2593 55,5556 71,1111 59,2593 69,8413 62,5000 66,6667 66,6667
Boo 38,8889 48,1481 47,2222 64,4444 61,1111 65,0794 59,7222 69,1358 70,0000
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting com seleção de atributos aplicados à base post operative
95
Anexo A.15. Base Teste sick euthyroid – Curva de Aprendizagem
90
91
92
93
94
95
96
97
98
99
100
J48 97,1519 96,8354 96,0970 96,8379 97,4067 98,1023 97,6513 97,8656 97,9972 98,4192
Bag 97,1519 96,9937 96,2025 97,2332 97,7230 97,9441 97,8771 98,1818 98,4188 98,6405
Boo 98,1013 96,9937 96,3080 97,3913 97,7230 98,5240 98,5095 98,5771 98,8053 99,0199
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting sem seleção de atributos aplicados à base sick euthyroid
90
91
92
93
94
95
96
97
98
99
100
J48 93,9873 94,3038 93,9873 94,7826 96,0152 95,3084 95,0316 95,6126 95,7133 95,7635
Bag 94,3038 93,9873 93,9873 95,0198 95,9519 95,3611 96,1608 96,0079 96,1701 96,1745
Boo 94,6203 94,9367 94,8312 95,4941 96,3947 96,7317 97,1996 97,1146 97,1539 97,6604
10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Resultados de Taxa de acerto para os métodos J48, Bagging e Boosting com seleção de atributos aplicados à base sick euthyroid
96
ANEXO B – Resultados Brutos de Taxa de acerto e Grá ficos do Impacto do Número de Classificadores
Neste anexo encontram-se os resultados de taxa de acerto obtidos para cada uma das bases de teste nas versões com e sem seleção de atributos, onde foram aplicados os métodos Bagging e Boosting a amostras aleatórias utilizando-se diversos números de classificadores (de 10 a 200). A exemplo do anexo anterior, para cada uma das bases teste são mostrados os valores de taxa de acerto obtidos (eixo y) com a aplicação dos métodos Bagging e Boosting nas versões com e sem seleção de atributos. O método J48 não é testado, pois sua aplicação é independente do número de classificadores utilizado. A principal diferença da apresentação dos resultados é o fato de agrupar-se em um único gráfico os valores de taxa de acerto dos métodos com e sem seleção de atributos. O eixo x apresenta o número de classificadores utilizado, variando de 10 até 200 classificadores. Note-se que a exemplo do ocorrido com os resultados expostos no anexo anterior, a quarta base de teste apresenta os mesmos valores para a aplicação dos métodos com e sem seleção de atributos, pois a quarta base teste (wisconsin breast cancer) não teve redução no número de atributos pela seleção de atributos. As bases de teste utilizadas possuem as características expostas no quadro abaixo.
Bases Instâncias Classes Atributos
Sem Seleção
Atributos Com
Seleção 1 arrhythmia 452 2 280 38 2 audiology 226 24 70 7 3 breast cancer 286 2 10 6 4 wisconsin breast cancer 699 2 10 10 5 wdbc 569 2 31 12 6 kr vs kp 3196 2 37 8 7 pima diabetes 768 2 9 5 8 cleveland14heart disease 303 2 14 8 9 echo cardiogram 132 3 12 6
10 heart statlog 270 2 14 8 11 hepatitis 155 2 20 11 12 hyper hormonal 2800 4 30 7 13 hypothyroid 3772 4 30 6 14 post operative 90 3 9 6 15 sick euthyroid 3163 2 26 7
97
Anexo B.1. Base Teste arrhythmia – Número de Classificadores
80
81
82
83
84
85
86
Bag sem 82,11 83,19 83,54 83,39 83,61 83,68 83,75 83,79 83,81 83,77 83,97 83,93 83,84 83,77 83,92
Boo sem 80,79 81,98 82,98 83,27 83,31 83,42 83,44 83,62 83,84 83,64 84,29 84,13 84,29 84,13 84,06
Bag com 83,64 84,39 84,41 84,50 84,63 84,77 84,88 84,83 84,61 84,70 84,90 84,76 84,88 84,94 84,79
Boo com 82,54 83,95 84,90 85,08 85,36 85,21 85,21 85,28 85,26 85,46 85,57 85,68 85,68 85,77 85,84
10 20 30 40 50 60 70 80 90 100 120 140 160 180 200
Resultados de Taxa de acerto para os métodos Bagging e Boosting com e sem seleção de atributos aplicados à base arrhythmia Anexo B.2. Base Teste audiology – Número de Classificadores
79
80
81
82
83
84
85
Bag sem 80,84 80,62 80,62 80,75 80,88 80,88 80,92 80,79 80,89 80,75 80,93 81,15 81,02 80,93 80,84
Boo sem 84,75 84,61 84,39 84,66 84,61 84,61 84,65 84,57 84,56 84,66 84,66 84,61 84,70 84,47 84,60
Bag com 79,56 79,51 79,69 79,64 79,80 79,82 79,78 79,86 79,78 79,74 79,78 79,73 79,73 79,73 79,73
Boo com 79,69 79,20 79,11 79,16 79,16 79,16 79,16 79,16 79,16 79,16 79,16 79,16 79,16 79,16 79,16
10 20 30 40 50 60 70 80 90 100 120 140 160 180 200
Resultados de Taxa de acerto para os métodos Bagging e Boosting com e sem seleção de atributos aplicados à base audiology
98
Anexo B.3. Base Teste breast cancer – Número de Classificadores
66
67
68
69
70
71
72
73
74
Bag sem 72,71 72,67 72,57 73,06 73,13 73,13 73,13 73,16 73,13 73,09 73,34 73,23 73,20 73,16 73,09
Boo sem 66,89 67,07 66,57 66,43 66,43 66,43 66,43 66,43 66,43 66,43 66,43 66,43 66,43 66,43 66,43
Bag com 73,37 73,34 73,09 73,34 73,12 73,51 73,40 73,26 73,30 73,37 73,37 73,23 73,37 73,26 73,37
Boo com 71,65 71,79 71,79 71,79 71,79 71,79 71,79 71,79 71,79 71,79 71,79 71,79 71,79 71,79 71,79
10 20 30 40 50 60 70 80 90 100 120 140 160 180 200
Resultados de Taxa de acerto para os métodos Bagging e Boosting com e sem seleção de atributos aplicados à base breast cancer Anexo B.4. Base Teste wisconsin breast cancer – Número de Classificadores
96,0
96,1
96,2
96,3
96,4
96,5
96,6
96,7
96,8
96,9
97,0
Bag sem 96,07 96,12 96,24 96,17 96,24 96,21 96,22 96,24 96,34 96,32 96,28 96,30 96,31 96,24 96,27
Boo sem 96,08 96,38 96,47 96,51 96,61 96,58 96,57 96,62 96,62 96,68 96,71 96,72 96,81 96,78 96,77
Bag com 96,07 96,12 96,24 96,17 96,24 96,21 96,22 96,24 96,34 96,32 96,28 96,30 96,31 96,24 96,27
Boo com 96,08 96,38 96,47 96,51 96,61 96,58 96,57 96,62 96,62 96,68 96,71 96,72 96,81 96,78 96,77
10 20 30 40 50 60 70 80 90 100 120 140 160 180 200
Resultados de Taxa de acerto para os métodos Bagging e Boosting com e sem seleção de atributos aplicados à base wisconsin breast cancer
99
Anexo B.5. Base Teste wdbc – Número de Classificadores
95
96
97
98
Bag sem 95,15 95,49 95,29 95,54 95,55 95,55 95,61 95,62 95,52 95,54 95,55 95,59 95,61 95,59 95,59
Boo sem 96,05 96,64 96,91 96,82 96,87 97,01 97,14 97,10 97,19 97,21 97,19 97,29 97,22 97,33 97,28
Bag com 95,50 95,84 95,80 95,78 95,87 95,94 95,89 95,85 95,84 95,89 95,77 95,85 95,82 95,89 95,84
Boo com 95,91 96,47 96,42 96,33 96,38 96,35 96,49 96,43 96,50 96,52 96,52 96,59 96,63 96,63 96,59
10 20 30 40 50 60 70 80 90 100 120 140 160 180 200
Resultados de Taxa de acerto para os métodos Bagging e Boosting com e sem seleção de atributos aplicados à base wdbc Anexo B.6. Base Teste kr vs kp – Número de Classificadores
93
94
95
96
97
98
99
100
Bag sem 99,42 99,45 99,44 99,44 99,46 99,44 99,45 99,44 99,45 99,44 99,45 99,45 99,46 99,45 99,46
Boo sem 99,59 99,61 99,62 99,61 99,60 99,61 99,61 99,61 99,61 99,60 99,61 99,61 99,61 99,62 99,61
Bag com 94,04 94,04 94,03 94,03 94,03 94,03 94,03 94,03 94,03 94,03 94,03 94,03 94,03 94,03 94,03
Boo com 94,24 94,24 94,24 94,24 94,24 94,24 94,24 94,24 94,24 94,24 94,24 94,24 94,24 94,24 94,24
10 20 30 40 50 60 70 80 90 100 120 140 160 180 200
Resultados de Taxa de acerto para os métodos Bagging e Boosting com e sem seleção de atributos aplicados à base kr vs kp
100
Anexo B.7. Base Teste pima diabetes – Número de Classificadores
71
72
73
74
75
76
77
Bag sem 75,65 76,21 76,27 76,21 76,05 76,01 76,00 76,26 76,13 76,17 76,20 76,25 76,33 76,34 76,29
Boo sem 71,69 72,61 73,07 73,36 73,71 73,68 73,76 73,79 73,85 73,78 74,03 74,03 73,90 73,86 73,86
Bag com 75,24 75,73 75,81 75,74 75,63 75,49 75,36 75,48 75,47 75,56 75,56 75,51 75,57 75,55 75,46
Boo com 74,58 74,60 74,60 74,60 74,60 74,60 74,60 74,60 74,60 74,60 74,60 74,60 74,60 74,60 74,60
10 20 30 40 50 60 70 80 90 100 120 140 160 180 200
Resultados de Taxa de acerto para os métodos Bagging e Boosting com e sem seleção de atributos aplicados à base pima diabetes Anexo B.8.Base Teste cleveland14heart disease – Número de Classificadores
78
79
79
80
80
81
81
82
82
Bag sem 79,02 79,73 79,80 79,47 80,10 80,13 80,00 80,07 79,77 79,74 79,64 79,64 79,67 79,70 79,77
Boo sem 78,59 80,21 80,11 80,18 80,11 80,41 80,47 80,80 80,96 80,86 81,39 81,06 81,19 80,99 81,06
Bag com 79,44 79,74 79,59 79,99 79,93 80,02 79,96 79,99 79,96 79,69 79,73 79,89 79,69 79,79 79,89
Boo com 78,92 79,09 78,95 78,66 78,85 78,89 78,95 78,95 79,02 78,99 78,95 78,92 79,05 78,99 78,95
10 20 30 40 50 60 70 80 90 100 120 140 160 180 200
Resultados de Taxa de acerto para os métodos Bagging e Boosting com e sem seleção de atributos aplicados à base cleveland14heart disease
101
Anexo B.9. Base Teste echo cardiogram – Número de Classificadores
60
61
62
63
64
65
Bag sem 61,12 61,40 61,55 61,95 62,53 61,98 62,44 62,59 62,37 62,90 62,45 62,75 62,76 62,69 62,61
Boo sem 60,64 61,25 60,35 61,98 61,46 61,76 61,91 62,20 61,52 61,82 61,74 62,35 62,35 62,19 61,51
Bag com 61,80 62,18 62,32 62,79 63,17 63,08 62,35 62,80 62,65 62,20 62,80 62,80 63,02 63,03 63,42
Boo com 64,14 63,24 63,24 63,24 63,24 63,24 63,24 63,24 63,24 63,24 63,24 63,24 63,24 63,24 63,24
10 20 30 40 50 60 70 80 90 100 120 140 160 180 200
Resultados de Taxa de acerto para os métodos Bagging e Boosting com e sem seleção de atributos aplicados à base echo cardiogram Anexo B.10. Base Teste heart statlog – Número de Classificadores
77
78
79
80
81
82
83
Bag sem 80,59 81,22 81,07 81,15 81,19 81,26 81,19 81,11 81,30 81,19 81,37 81,67 81,63 81,74 81,74
Boo sem 78,59 79,78 79,74 80,41 80,44 80,41 80,56 80,78 80,22 80,04 80,04 80,30 80,11 80,41 80,33
Bag com 81,56 82,00 82,19 82,07 82,30 82,44 82,41 82,41 82,56 82,52 82,56 82,44 82,37 82,33 82,33
Boo com 78,74 79,00 78,93 78,37 78,59 78,19 78,04 77,96 78,11 78,22 78,11 77,93 77,85 77,89 77,85
10 20 30 40 50 60 70 80 90 100 120 140 160 180 200
Resultados de Taxa de acerto para os métodos Bagging e Boosting com e sem seleção de atributos aplicados à base heart statlog
102
Anexo B.11. Base Teste hepatitis – Número de Classificadores
79
80
81
82
83
84
85
Bag sem 80,73 81,04 81,17 81,37 81,50 81,50 81,24 81,30 81,45 81,37 81,11 81,30 81,37 81,56 81,50
Boo sem 82,38 82,79 83,65 83,05 84,15 84,29 83,85 84,48 84,69 84,74 84,61 84,86 85,00 84,82 84,75
Bag com 80,94 81,18 81,24 81,05 81,24 81,43 81,11 81,17 81,36 81,24 81,17 81,11 81,05 80,99 81,17
Boo com 81,01 80,65 81,18 80,29 80,54 80,15 80,67 80,74 80,85 80,41 80,28 80,03 79,83 80,03 79,84
10 20 30 40 50 60 70 80 90 100 120 140 160 180 200
Resultados de Taxa de acerto para os métodos Bagging e Boosting com e sem seleção de atributos aplicados à base hepatitis Anexo B.12. Base Teste hyper hormonal – Número de Classificadores
96
97
98
99
Bag sem 98,56 98,61 98,61 98,63 98,63 98,63 98,62 98,62 98,62 98,61 98,63 98,63 98,63 98,62 98,63
Boo sem 98,61 98,65 98,67 98,64 98,65 98,62 98,59 98,61 98,61 98,61 98,59 98,60 98,62 98,61 98,60
Bag com 97,89 97,92 97,94 97,92 97,94 97,94 97,92 97,91 97,91 97,91 97,93 97,93 97,94 97,93 97,94
Boo com 96,46 97,47 97,46 97,47 97,46 97,46 97,46 97,46 97,47 97,47 97,47 97,47 97,47 97,47 97,47
10 20 30 40 50 60 70 80 90 100 120 140 160 180 200
Resultados de Taxa de acerto para os métodos Bagging e Boosting com e sem seleção de atributos aplicados à base hyper hormonal
103
Anexo B.13. Base Teste hypothyroid – Número de Classificadores
97
98
99
100
Bag sem 99,41 99,42 99,43 99,43 99,43 99,43 99,43 99,43 99,44 99,44 99,43 99,44 99,44 99,44 99,44
Boo sem 99,30 99,32 99,33 99,33 99,33 99,34 99,34 99,34 99,34 99,34 99,33 99,34 99,33 99,33 99,33
Bag com 98,05 98,07 98,06 98,05 98,05 98,07 98,05 98,05 98,05 98,05 98,07 98,07 98,07 98,07 98,06
Boo com 97,65 97,70 97,70 97,71 97,71 97,71 97,71 97,71 97,71 97,71 97,71 97,71 97,71 97,71 97,71
10 20 30 40 50 60 70 80 90 100 120 140 160 180 200
Resultados de Taxa de acerto para os métodos Bagging e Boosting com e sem seleção de atributos aplicados à base hypothyroid Anexo B.14. Base Teste post operative – Número de Classificadores
55
57
59
61
63
65
67
69
71
Bag sem 68,67 68,89 68,56 68,89 69,00 69,11 69,11 69,33 69,22 69,22 69,33 69,33 69,11 69,33 69,33
Boo sem 55,33 56,33 56,33 56,33 56,33 56,33 56,33 56,33 56,33 56,33 56,33 56,33 56,33 56,33 56,33
Bag com 70,22 70,00 70,11 70,00 69,89 70,11 70,11 70,00 69,89 69,89 69,89 69,89 69,89 69,89 69,89
Boo com 63,78 63,78 63,78 63,78 63,78 63,78 63,78 63,78 63,78 63,78 63,78 63,78 63,78 63,78 63,78
10 20 30 40 50 60 70 80 90 100 120 140 160 180 200
Resultados de Taxa de acerto para os métodos Bagging e Boosting com e sem seleção de atributos aplicados à base post operative
104
Anexo B.15. Base Teste sick euthyroid – Número de Classificadores
95
96
97
98
Bag sem 97,94 97,93 97,94 97,95 97,94 97,94 97,94 97,93 97,94 97,94 97,94 97,95 97,95 97,95 97,95
Boo sem 97,56 97,76 97,76 97,80 97,85 97,87 97,88 97,88 97,88 97,88 97,88 97,87 97,88 97,88 97,89
Bag com 95,42 95,49 95,53 95,53 95,56 95,55 95,55 95,57 95,56 95,55 95,56 95,57 95,56 95,58 95,57
Boo com 95,12 95,19 95,20 95,20 95,20 96,20 95,20 95,20 95,20 95,20 95,20 95,20 95,20 95,20 95,20
10 20 30 40 50 60 70 80 90 100 120 140 160 180 200
Resultados de Taxa de acerto para os métodos Bagging e Boosting com e sem seleção de atributos aplicados à base sick euthyroid
Livros Grátis( http://www.livrosgratis.com.br )
Milhares de Livros para Download: Baixar livros de AdministraçãoBaixar livros de AgronomiaBaixar livros de ArquiteturaBaixar livros de ArtesBaixar livros de AstronomiaBaixar livros de Biologia GeralBaixar livros de Ciência da ComputaçãoBaixar livros de Ciência da InformaçãoBaixar livros de Ciência PolíticaBaixar livros de Ciências da SaúdeBaixar livros de ComunicaçãoBaixar livros do Conselho Nacional de Educação - CNEBaixar livros de Defesa civilBaixar livros de DireitoBaixar livros de Direitos humanosBaixar livros de EconomiaBaixar livros de Economia DomésticaBaixar livros de EducaçãoBaixar livros de Educação - TrânsitoBaixar livros de Educação FísicaBaixar livros de Engenharia AeroespacialBaixar livros de FarmáciaBaixar livros de FilosofiaBaixar livros de FísicaBaixar livros de GeociênciasBaixar livros de GeografiaBaixar livros de HistóriaBaixar livros de Línguas
Baixar livros de LiteraturaBaixar livros de Literatura de CordelBaixar livros de Literatura InfantilBaixar livros de MatemáticaBaixar livros de MedicinaBaixar livros de Medicina VeterináriaBaixar livros de Meio AmbienteBaixar livros de MeteorologiaBaixar Monografias e TCCBaixar livros MultidisciplinarBaixar livros de MúsicaBaixar livros de PsicologiaBaixar livros de QuímicaBaixar livros de Saúde ColetivaBaixar livros de Serviço SocialBaixar livros de SociologiaBaixar livros de TeologiaBaixar livros de TrabalhoBaixar livros de Turismo