Material Weka

49
Algoritmos Autor: Alisson Patrick Maximino

Transcript of Material Weka

Page 1: Material Weka

Algoritmos

Autor: Alisson Patrick Maximino

Page 2: Material Weka

Centro Universitário Barão de Mauá

Curso de Bacharelado em Ciência da Computação

COMPARAÇÃO DE ALGORITMOS DE APRENDIZADO DE

MÁQUINA PARA CLASSIFICAÇÃO DE PADRÕES EM UMA BASE D E

DADOS MÉDICOS

Alisson Patrick Maximino

Ribeirão Preto

2007

Page 3: Material Weka

Alisson Patrick Maximino

COMPARAÇÃO DE ALGORITMOS DE APRENDIZADO DE

MÁQUINA PARA CLASSIFICAÇÃO DE PADRÕES EM UMA BASE D E

DADOS MÉDICOS

Orientador: Prof. Dr. Paulo Eduardo Ambrósio

Ribeirão Preto

2007

Monografia apresentada ao Curso de Ciência da Computação do Centro Universitário Barão de Mauá, como parte dos requisitos para obtenção do título de Bacharel em Ciência da Computação.

Page 4: Material Weka
Page 5: Material Weka

Dedicatória

Aos meus pais, minha amada Mãe Marli, meu amado Pai Vanderlei e minha amada Avó Floripes, pessoas maravilhosas,

batalhadoras, minha fonte maior de inspiração, cuidaram e doaram incondicionalmente seu sangue e suor em forma de amor e trabalho por

mim, a minha grande e maravilhosa companheira Juliana, que me deram apoio e carinho nos momentos mais difíceis durante esses anos

dedicados aos estudos,

Page 6: Material Weka

Agradecimentos

Primeiramente à Deus, dedico o meu agradecimento maior, porque têm sido tudo em minha vida, o maior responsável por este grande sonho que se realiza. À todos professores(as), que conseguiram transmitir o seu conhecimento, contribuindo para minha sabedoria, e para meu crescimento pessoal e profissional, em especial ao professor Dr. Paulo Ambrósio, pela paciência e dedicação, e todos aqueles(as) que cruzaram em minha vida, participando de alguma forma construtiva. Aos meus grandes amigos e companheiros, Roger e Flávio, que sempre me incentivaram e proporcionaram momentos de lazer, imprescindíveis ao bom andamento desses 4 anos de estudos.

Page 7: Material Weka

Resumo

A classificação de padrões, neste caso, para diversos tipos de patologias, doenças

aplicadas ao pulmão, podem ser classificadas por um profissional, como um médico, onde,

através de seu vasto conhecimento e estudo, é capaz de analisar e identificar uma doença

especifica. A partir da área de estudo de Inteligência Artificial, e utilizando os conceitos e

técnicas de aprendizado de máquina, no qual, existem diversos tipos de algoritmos de

aprendizado de máquina que podem ser utilizados na classificação de padrões. Na prática, é

difícil saber qual tipo de algoritmo utilizar para cada problema. Os diversos sistemas de

aprendizado de máquina possuem características particulares e comuns que possibilitam sua

classificação quanto à linguagem de descrição, modo, paradigma e forma de aprendizado

utilizado. O objetivo principal desse trabalho é realizar um estudo sobre alguns dos principais

algoritmos de aprendizado de máquina, dentre eles, algoritmos de indução, de regras de

decisão, redes neurais artificiais, algoritmos baseados em métodos estatísticos, e outros, onde

serão realizadas comparações de desempenho sobre resultados obtidos pelos algoritmos.

Palavras-chave: Aprendizado de máquina, Algoritmos, Mineração de Dados, Base de Dados,

Resultados.

Page 8: Material Weka

Abstract

The pattern classification, in this case, for several kinds of pathologies, lung related

diseases may be classified by a physian, where through his or her vast knowledge and study,

is capable of analyzing and spotting a specific disease. Starting from the Artificial Intelligence

field, and using the concepts and learning techniques of machines, in which, there are several

types of learning algorithms of machines that can be used in pattern classification. In

practice, it is hard to know what kind of algorithm to use for each problem. The different

learning systems of machines bear particular and common characteristics, which make their

classification possible as to description language, manner, paradigm and the learning method

used. The main goal of the present study is to carry out a study on some of the principal

learning algorithm of machine, among them, induction algorithms, decision rules, artificial

neural nets, algorithms based on statistical methods, and others, where performance

comparisons will be carried out over the results obtained by algorithms.

Keywords: Learning Machine, Algorithms, Data Mining, Database, Results.

Page 9: Material Weka

Lista de Figuras

Figura 1.1 Hierarquia do aprendizado. .....................................................................................16 Figura 2.1 Redes Neurais. ........................................................................................................19 Figura 2.2 Árvores de Decisão. ................................................................................................21 Figura 2.3 Processo KDD.........................................................................................................24 Figura 2.4 Tela inicial do WEKA.............................................................................................26 Figura 2.5 Tela do Pré-Processo...............................................................................................27 Figura 2.6 Tela de Classificação. .............................................................................................28 Figura 3.1 Parâmetros Clínicos e Parâmetros Radiológicos.....................................................32 Figura 3.2 Exemplo extraído da base de dados. .......................................................................34 Figura 3.3 Gráfico em (%) de Acerto com Cross-Validation...................................................36 Figura 3.4 Gráfico em (%) de Erro Absoluto Relativo com Cross-Validation. .......................36 Figura 3.5 Gráfico em (s) Tempo de Execução com Cross-Validation....................................37 Figura 3.6 Gráfico em (%) de Acerto com Leave-One-Out. ....................................................38 Figura 3.7 Gráfico em (%) de Erro Absoluto Relativo com Leave-One-Out...........................39 Figura 3.8 Gráfico em (s) Tempo de Execução com Leave-One-Out......................................40 Figura 3.9 Matriz confusão Redes Neurais (MLP) Cross-Validation. .....................................41 Figura 3.10 Matriz Confusão Redes Neurais (MLP) Leave-One-Out......................................41 Figura 3.11 Matriz Confusão Redes Neurais (RBF) Cross-Validation. ...................................42 Figura 3.12 Matriz Confusão Redes Neurais (RBF) Leave-One-Out. .....................................42 Figura 3.13 Matriz Confusão C4.5 Cross-Validation...............................................................43 Figura 3.14 Matriz Confusão C4.5 Leave-One-Out. ................................................................43 Figura 3.15 Matriz Confusão ZEROR Cross-Validation.........................................................44 Figura 3.16 Matriz Confusão ZEROR Leave-One-Out............................................................44 Figura 3.17 Matriz Confusão ONER Cross-Validation. ..........................................................45 Figura 3.18 Matriz Confusão ONE Leave-One-Out. ...............................................................45 Figura 3.19 Matriz Confusão Rede Bayesiana Cross-Validation.............................................46 Figura 3.20 Matriz Confusão Rede Bayesiana Leave-One-Out. ..............................................46

Page 10: Material Weka

Lista de Tabelas

Tabela 1 Estrutura do arquivo ARRF.......................................................................................29 Tabela 2 Relação das patologias investigadas..........................................................................30 Tabela 3 (%) de Acerto com Cross-Validation. .......................................................................35 Tabela 4 (%) de Erro Absoluto Relativo com Cross-Validation. .............................................36 Tabela 5 (s) Tempo de Execução com Cross-Validation. ........................................................37 Tabela 6 (%) de Acerto com Leave-One-Out...........................................................................38 Tabela 7 (%) de Erro Absoluto Relativo com Leave-One-Out. ...............................................39 Tabela 8 (s) Tempo de Execução com Leave-One-Out. ..........................................................39

Page 11: Material Weka

Lista de Siglas

AM: Aprendizado de Máquina

IA: Inteligência Artificial

KDD: Knowledge Discovery in Databases

GPL: General Public Licence

WEKA: Waikato Environment for Knowledge Analysis

Page 12: Material Weka

Sumário

INTRODUÇÃO........................................................................................................................25 1 APRENDIZADO..............................................................................................................13

1.1 A HIERARQUIA DE APRENDIZADO..................................................................13 1.2 PARADIGMAS DE APRENDIZADO....................................................................14 1.3 TÉCNICAS DE VALIDAÇÃO................................................................................16

1.3.1 CROSS-VALIDATION ...................................................................................16 1.3.2 LEAVE-ONE-OUT..........................................................................................17

2 APRENDIZADO DE MÁQUINA ...................................................................................18 2.1 REDES NEURAIS ...................................................................................................18 2.2 ÁRVORES DE DECISÃO.......................................................................................20 2.3 C4.5 ..........................................................................................................................21 2.4 ZERO RULE (ZEROR) ...........................................................................................22 2.5 ONE RULE (ONER)................................................................................................22 2.6 REDE BAYESIANA................................................................................................22 2.7 INTRODUÇÃO À MINERAÇÃO DE DADOS .....................................................23 2.8 WEKA ......................................................................................................................24

2.8.1 AMBIENTE EXPLORER DO WEKA............................................................25 2.8.2 AMBIENTE EXPLORER - PRÉ-PROCESSO................................................26 2.8.3 AMBIENTE EXPLORER - CLASSIFICAÇÃO .............................................27 2.8.4 ARQUIVO ARRF ............................................................................................28

3 DESENVOLVIMENTO PRÁTICO ................................................................................30 3.1 LEVANTAMENTOS DE DADOS..........................................................................30 3.2 PARÂMETROS CLÍNICOS E RADIOLÓGICOS .................................................31 3.3 DADOS COLETADOS............................................................................................34 3.4 BASE DE DADOS PARA TREINAMENTO E TESTES.......................................34 3.5 RESULTADOS OBTIDOS POR CADA ALGORITMO........................................34

3.5.1 RESULTADOS OBTIDOS - CROSS-VALIDATION....................................35 3.5.2 RESULTADOS OBTIDOS - LEAVE-ONE-OUT ..........................................37 3.5.3 REDES NEURAIS (MLP) - CROSS-VALIDATION.....................................40 3.5.4 REDES NEURAIS (MLP) - LEAVE-ONE-OUT............................................41 3.5.5 REDES NEURAIS (RBF) - CROSS-VALIDATION......................................41 3.5.6 REDES NEURAIS (RBF) - LEAVE-ONE-OUT ............................................42 3.5.7 C4.5 - CROSS - VALIDATION ......................................................................42 3.5.8 C4.5 - LEAVE-ONE-OUT...............................................................................43 3.5.9 ZEROR - CROSS-VALIDATION...................................................................43 3.5.10 ZEROR - LEAVE-ONE-OUT .........................................................................44 3.5.11 ONER - CROSS-VALIDATION.....................................................................44 3.5.12 ONER - ONE-LEAVE-OUT............................................................................45 3.5.13 REDE BAYESIANA - CROSS-VALIDATION .............................................45 3.5.14 REDE BAYESIANA - LEAVE-ONE-OUT ....................................................46

CONCLUSÕES........................................................................................................................47 REFERÊNCIAS BIBLIOGRÁFICAS .....................................................................................48

Page 13: Material Weka

INTRODUÇÃO

Nos últimos anos a informática tem se apresentado como um fator significativo no dia-

a-dia das pessoas, causando assim mudanças marcantes no modo de viver. O computador tem

sido de grande influência em diversas áreas de atuação, quer no emprego, em casa, centros de

pesquisas ou diversas áreas de estudos, está relacionado a constantes melhorias em qualidade

e desempenho, e, através de sua rápida evolução surgem cada vez mais equipamentos cada

vez menores e mais acessíveis. Através deste crescimento computacional, ocorre uma

intensificação de estudos científicos sobre o assunto, como ferramenta de auxílio para todas as

demais ciências.

O conceito de Aprendizado de Máquina representa parte desta interação como uma

forma de extração de conhecimento, ou seja, uma forma de aprendizado realizado por um

computador com o objetivo de obter comportamentos computacionalmente inteligentes, por

exemplo o reconhecimento de padrões.

Especificamente na Medicina, os computadores podem ser utilizados como ferramenta

de auxílio à tomada de decisões, como por exemplo, em sistemas de apoio ao diagnóstico, os

quais têm como principal objetivo auxiliar o profissional da área no processo de tomada de

decisões.

Para um médico, diagnosticar certa doença, com base nos sintomas, exames, é bem

mais simples, devido ao conhecimento, ou seja, o poder do ser humano relacionado à alta

capacidade de aprendizagem, e recursos a serem utilizados. Agora, utilizar um sistema com

base em Aprendizado de Máquina que realize com mesmo grau de eficiência no processo de

diagnosticar, não é uma tarefa tão simples.

O objetivo deste trabalho é a realização de estudos sobre algoritmos de aprendizado de

máquina, aplicados a uma base de dados médicos, e utilizando a biblioteca de algoritmos

WEKA (biblioteca gratuita de mineração de dados, que possui suporte a vários algoritmos,

que será apresentada com mais detalhe no capitulo 2).

Os resultados obtidos pelos algoritmos de classificação de padrões, nem sempre

apresentam o mesmo grau de eficiência, ou melhor, podem-se obter resultados variados, tendo

a visão de qual dos algoritmos utilizados tiveram um melhor desempenho durante a sua

execução.

Page 14: Material Weka

13

1 APRENDIZADO

Os seres humanos possuem varias habilidades, destacando a capacidade de aprender, tal

assunto, ao longo dos anos tornaram-se grande alvo para a realização de pesquisas. Os homens e

alguns animais possuem essa capacidade de aprendizagem muito evoluída. Eles adquirem à

aprendizagem com base na experiência, aprendem ouvindo, aprendem aumentando a capacidade

do conhecimento que já possuem, através de acontecimentos sucessivos. Pode-se considerar o

aprendizado um processo complexo, não apenas por reunir diversas habilidades e áreas de

conhecimento, mas também por reunir diferentes níveis de abstração, no qual, podemos encontrar

varias definições sobre o processo de aprendizado (AMBRÓSIO, 2002).

O aprendizado é descrito como “o processo através do qual um sistema melhora o seu

desempenho” (SIMON, 1983 apud AMBRÓSIO, 2002). Esta melhoria no desempenho pode

ocorrer devido à aplicação de novos métodos e conhecimentos, podendo também ocorrer através

do aperfeiçoamento dos métodos e conhecimentos existentes, tornando-os mais rápidos e

precisos.

1.1 A HIERARQUIA DE APRENDIZADO

O conhecimento sobre um determinado problema ou situação pode ser interpretado de

varias formas. A indução é a forma lógica, do qual, podem-se tirar conclusões incertas sobre

conjuntos de exemplos em questão. A indução é caracterizada como um raciocínio obtido de

forma generalizada através de um conceito específico, onde esse conceito pode ser aprendido

através da utilização indutiva à partir de exemplos citados.As possíveis hipóteses adquiridas pela

indução podem ou não estarem corretas (MONARD, 2002).

Segundo Monard (2002), “Foi através da indução que Arquimedes descobriu a primeira

lei da hidrostática e princípio da alavanca, que Kepler descobriu as leis do movimento planetário,

que Darwin descobriu as leis da seleção natural das espécies.”

A indução é uma das formas de se obter um novo conhecimento mais utilizado pelo

cérebro humano, no qual, deve-se ter cuidado em utilizar, pois, se os exemplos a serem

escolhidos não forem os mais adequados, a hipótese resultante pode não ser verdadeira. Os

Page 15: Material Weka

14

sistemas de aprendizado podem ser classificados em duas grandes categorias (BARANAUSKAS,

2001):

• Sistemas tipo caixa preta que desenvolvem sua própria representação do conceito,

isto é, sua representação interna pode não ser facilmente interpretada por humanos

e não fornecem nem esclarecimento, nem explicação do processo de

reconhecimento.

• Sistemas orientados a conhecimento que objetivam a criação de estruturas

simbólicas que sejam compreensíveis por humanos.

1.2 PARADIGMAS DE APRENDIZADO

O aprendizado de máquina pode ser implementado seguindo diferentes paradigmas. Uma

das classificações adotadas separa os paradigmas em: Simbólico, Estatístico, Baseado em

Exemplos, Conexionista e Genético (BARANAUSKAS, 2001):

• Simbólico - Sistemas simbólicos de Aprendizado de Máquina podem ser

classificados com base na linguagem de representação de exemplos utilizados, de

forma simbólica. Estes símbolos podem ser representados de forma lógica, seja

ela, utilizando árvore de decisão, regras ou rede semântica.

• Estatístico - Estudiosos da área de Estatística vem desenvolvendo variados

métodos de classificação, tendo uma grande semelhança com sistemas de

aprendizado de máquina. Tais estudiosos têm como objetivo utilizar modelos

estatísticos para encontrar soluções parecidas com a forma indutiva de

conhecimento. Alguns autores consideram Redes Neurais e aprendizado

Bayesiano, como métodos estatísticos semi-paramétricos.

• Baseado em Exemplos - Uma forma de classificar um exemplo é lembrar-se de

outro similar cuja classe é conhecida e assumir que o novo exemplo terá a mesma

classe. Essa filosofia exemplifica os sistemas baseados em exemplos, que

classificam exemplos nunca vistos através de exemplos similares conhecidos.

Page 16: Material Weka

15

• Conexionista - No aprendizado conexionista baseia-se nos estudos de Redes

Neurais, tal sistema similar ao modelo biológico do sistema nervoso do ser

humano. Não se procura obter regras como na abordagem simbólica da

Inteligência Artificial, mas determinar a intensidade de conexões entre neurônios.

• Genético – De acordo com Baranauskas (2001) “Um classificador genético

consiste de uma população de elementos de classificação que competem para fazer

a predição”. Elementos mais fortes sobrevivem, e os mais fracos são descartados,

produzindo variações de si mesmo. O paradigma genético esta relacionado

diretamente com a teoria de Darwin, na qual sobrevivem os mais bem adaptados

ao ambiente.

Por meio dos paradigmas citados, a aprendizagem pode ser classificada em dois tipos:

aprendizado supervisionado e aprendizado não supervisionado.

• Aprendizado supervisionado - Definido também como aprendizagem com um

‘professor’, passando valores necessários de entrada ao sistema, como a presença

de um elemento externo supervisor que fornece as informações, ou seja, é através

dessa informação ocorre à supervisão, onde, o sistema poderá verificar a saída, a

resposta esperada para que assim verifique o quanto errou durante o processo, para

que possa “aprender” com esse erro (AMBRÓSIO, 2002).

• Aprendizado não-supervisionado - Diferente da aprendizagem supervisionada, não

depende do elemento (professor) para que possa realizar a supervisão para o

processo de aprendizagem (AMBRÓSIO, 2002).

Na Figura 1.1 é ilustrado o processo de aprendizagem, após realizar o aprendizado, sendo

supervisionado ou não supervisionado, até chegar à classificação, onde, poderá se obter

resultados, como objetivo principal deste trabalho.

Page 17: Material Weka

16

Figura 1.1 Hierarquia do aprendizado.

Fonte: Adaptado de MONARD, 2002.

1.3 TÉCNICAS DE VALIDAÇÃO

As técnicas de validação são fundamentais para que as execuções com classificadores, ou

seja, o algoritmo em questão possa ocorrer, pois, a maneira de como se validar o mesmo é

referenciado a essas técnicas.

Dentre as várias opções de validação disponíveis no Software WEKA, foram escolhidas

duas técnicas para validar os testes realizados neste trabalho, validação por Cross-Validation e

Leave-One-Out, sendo elas brevemente descritas a seguir:

1.3.1 CROSS-VALIDATION

Cross-Validation em r-fold - CV. Os exemplos são aleatoriamente divididos em r

partições mutuamente exclusivas (folds) de tamanho aproximadamente igual a n/r exemplos. Os

exemplos nos (r-1) folds são usados para treinamento e a hipótese induzida é testada no fold

diferente para teste. O erro na Cross-Validation é a média dos erros calculados em cada um dos r

folds (MONARD, 2002).

Page 18: Material Weka

17

1.3.2 LEAVE-ONE-OUT

Leave-One-Out é um caso especial de Cross-Validation. É computacionalmente

dispendioso e frequentemente é usado em amostras pequenas. Para uma amostra de tamanho n

uma hipótese é induzida utilizando (n−1) exemplos; a hipótese é então testada no único exemplo

remanescente. Este processo é repetido n vezes, cada vez induzindo uma hipótese deixando de

considerar um único exemplo. O erro é a soma dos erros em cada teste dividido por n

(MONARD, 2002).

Page 19: Material Weka

18

2 APRENDIZADO DE MÁQUINA

Aprendizado de Máquina - AM, pertence à área de IA, tem como objetivo principal

desenvolver técnicas computacionais como relação ao aprendizado desenvolver sistemas com a

missão de obter conhecimento de forma automática. Define-se sistema de aprendizado, como um

programa de computador, sendo capaz de tomar decisões com base de experiências realizadas

através da solução bem sucedida de problemas anteriores. Para simplificar o entendimento,

aprendizado de máquina, é uma técnica utilizada para obter um novo conhecimento automático,

aplicado em um computador, esse processo utiliza os algoritmos de AM, para realizar o

aprendizado de forma computacional (MITCHELL, 1997).

Desde a invenção dos computadores, o ser humano teve a curiosidade de saber se a

invenção foi feita para aprender, e também compreender como os programar para obter um

melhor aprendizado sobre o mesmo. Os algoritmos para a aprendizagem de máquina nos

auxiliam a uma melhor compreensão como habilidades de aprendizagem humanas (MITCHELL,

1997).

Conforme Carvalho (2001) “Os algoritmos de aprendizado de máquina são muito

interessantes, pois, além de modelarem bem os dados, permitindo previsões e classificações”.

Por meio dessa teoria de aprendizagem de máquina serão respondidas perguntas de como

será realizado à aprendizagem e o desempenho variando dos treinamentos apresentados, e, se os

algoritmos de aprendizagem são os mais apropriados para vários tipos de formas de

aprendizagem, visando saber qual algoritmo teve um melhor desempenho.

2.1 REDES NEURAIS

Pode-se dizer que redes neurais artificiais consistem em um modo de abordar a solução de

problemas de inteligência artificial. A aprendizagem de uma rede neural artificial ocorre através

de um processo iterativo de correções e ajustes associados a suas conexões, pelo qual a rede vai

aprendendo aos poucos a cada iteração realizada durante o processo de treinamento

(AMBRÓSIO, 2002).

Neste caso, ao invés de programar um computador de modo a fazê-lo similar a um

comportamento humano inteligente como, saber jogar xadrez, compreender e manter um diálogo,

Page 20: Material Weka

19

resolver problemas matemáticos, procura-se construir um sistema computacional que possa

modelar circuitos de forma semelhante aos circuitos cerebrais humanos (BARRETO, 2002).

Espera-se ver um comportamento inteligente, aprendendo novas tarefas, errando, fazendo

generalizações e descobertas, com características de um neurônio pertencente ao cérebro humano.

O algoritmo de treinamento conhecido como backpropagation, responsável por fazer

esses ajustes associados às conexões da rede, sendo a propagação “para frente” (feed forward) do

sinal de entrada e propagação “para trás” (backpropagation) do erro da saída obtida em relação à

saída desejada (AMBRÓSIO, 2002).

Da mesma forma, estes circuitos neurais artificiais poderão se auto-organizar, quando

apresentados em ambientes diversos, criando suas próprias representações internas e apresentar

comportamentos imprevisíveis. Neste trabalho utilizou-se duas redes neurais, a rede RBF (Radial

Basis Function) aplicada normalmente em pequenas amostras devido a utilização de funções em

base radial, e a rede MLP (Multilayer Perceptron) rede neural de múltiplas camadas.

Uma rede MLP possui a camada de entrada, as camadas intermediárias e a camada de

saída, uma rede RBF possui apenas uma camada intermediária. Uma rede neural pode ter o

treinamento supervisionado e não supervisionado (BARRETO, 2002). Um exemplo de uma rede

neural MLP é ilustrado na figura 2.1.

Figura 2.1 Redes Neurais. Fonte: TATIBANA e KAETSU, SD.

Page 21: Material Weka

20

2.2 ÁRVORES DE DECISÃO

Dentre os vários algoritmos utilizados em mineração de dados, destaca-se o algoritmo de

árvore de decisão. Pode-se definir e representar uma árvore de decisão graficamente, ou seja,

gerando uma estrutura na forma de uma árvore que ajuda na classificação e decisão a serem

tomadas (JUSTINO, sd).

O algoritmo de classificação por árvores de decisão é um algoritmo supervisionado, ou

seja, é necessário conhecer todos os registros, as informações da base de dados utilizadas no

treinamento (LÓPEZ & HERRERO, 2004).

O processo de geração da árvore, realizada pelo algoritmo inicia-se com a definição de

quais são os elementos, ou seja, os valores da árvore. A figura 2.2, é um exemplo de uma

estrutura de uma árvore de decisão. Para um fácil entendimento, a árvore é constituída por um

conjunto de nós que são conectados por ramificações, que auxiliam na compreensão dos

processos de ligação entre os nós. A estrutura básica de uma árvore pode ser formada por três

tipos de nós: o nó raiz, que representa o inicio da árvore, os nós comuns que dividem um

determinado atributo e geram ramificações e os nós folha que contêm as informações de

classificação do algoritmo (PICHILIANI, 2006)..

Page 22: Material Weka

21

Figura 2.2 Árvores de Decisão.

Fonte: Adaptado de BARANAUSKAS, 2002.

2.3 C4.5

O J48 é o algoritmo mais conhecido do WEKA. Baseado na implementação do C 4.5

release 8, desenvolvido por Ross Quinlan, que gera uma árvore de decisão baseado em um

conjunto de dados de treinamento, sendo que este modelo é usado para classificar as instâncias no

conjunto de teste. A versão mais recente do algoritmo, disponibilizada apenas comercialmente, é

a C 5.0 (WITTEN & FRANK, 1999).

Nó Raiz

Nó Comum

Nó Comum

Nó Comum

Nós Folhas Classificação

Nós Folhas Classificação

Nós Folhas Classificação

Regra de Decisão

Regra de Decisão

Regra de Decisão

Page 23: Material Weka

22

2.4 ZERO RULE (ZEROR)

Este é o algoritmo de aprendizagem mais antigos do software WEKA. Consiste em

modelar uma base de dados com uma única regra. Devido a essa característica, o poder de

desempenho deste algoritmo é inferior aos demais. Para uma base de dados, onde ocorrerá uma

nova classificação, o algoritmo ZEROR prediz o valor de maior freqüência, nos dados de

treinamento. O algoritmo ZEROR pode ser aplicado em problemas com valores nominais ou

valor da classe comum para problemas numéricos (WITTEN & FRANK, 1999).

2.5 ONE RULE (ONER)

O algoritmo ONER é um algoritmo que produz uma regra simples, pois, é baseado em um

único atributo, assim como o ZEROR, possui baixo desempenho para os demais, mas,

comparando os dois algoritmos, o ONER ao ser aplicado na base de dados de treinamento,

consegue obter maior sucesso se referindo à porcentagem de acertos. Este algoritmo leva um

único parâmetro que é o número mínimo de exemplos (WITTEN & FRANK, 1999).

2.6 REDE BAYESIANA

Redes Bayesianas é um algoritmo de aprendizado supervisionado, baseia-se no teorema

de probabilidade de Bayes, também conhecido por classificador de Naïve Bayes. Tem como

objetivo calcular valores de probabilidade como predizer a classe mais provável, onde se

caracteriza como uma classificação estatística, pois é completamente baseada em probabilidades

(PICHILIANI, 2006).

A rede bayesiana é considerada simples ou ingênua, segundo (PICHILIANI, 2006) “ela

considera que o efeito do valor de um atribuído sobre uma determinada classe é independente dos

valores dos outros atributos, o que simplifica os cálculos envolvidos”.

O raciocínio Bayesiano fornece uma aproximação probabilística de inferência. As decisões

ótimas podem ser feitas analisando estas probabilidades junto aos dados utilizados. O raciocínio

Bayesiano fornece a base para algoritmos de aprendizagem isso manipula diretamente

probabilidades, como uma estrutura para analisar operação de outros algoritmos que não

Page 24: Material Weka

23

manipulam explicitamente probabilidades. Os métodos Bayesianos são importantes para nosso

estudo de aprendizado de máquina, no qual, fornecem uma perspectiva para compreensão de

vários algoritmos de aprendizagem que não manipulam explicitamente probabilidades

(MITCHELL, 1997).

2.7 INTRODUÇÃO À MINERAÇÃO DE DADOS

A Mineração de Dados consiste no do processo de Extração de Conhecimento de um

grande volume de dados. A Extração de Conhecimento é definida por Fayyad et al. (1996) como:

“KDD (Knowledge Discovery in Databases) se refere ao processo global de descobrir

conhecimento útil de dados. E mineração de dados se refere a um passo particular neste processo.

A mineração de dados é a aplicação de algoritmos específicos para extrair padrões de dados”.

O processo da utilização de técnicas de mineração de dados (data mining) vem sendo

bastante utilizado em diversas áreas como finanças, economia, biologia, astronomia, análise de

mercado, diagnósticos, entre outros, mas principalmente o seu crescimento aplicado à área de

Ciência da Computação, denominada KDD. O processo de KDD combina técnicas de

aprendizado de máquina, conforme já citado neste trabalho, reconhecimento de padrões,

estatísticas, banco de dados e visualização para extrair conhecimento (ou informação) de dados

brutos, através da técnica de mineração de dados. Carvalho (2001) define mineiração de dados

como “o uso de técnicas automáticas de exploração de grandes quantidades de dados de forma a

descobrir novos padrões e relações que, devido ao volume de dados, não seriam facilmente

descobertos a olho nu pelo ser humano.” Destacam-se algoritmos como Redes Neurais,

Algoritmos Genéticos, baseados em estatísticas e Arvores de Decisões. Pode-se dividir esse

processo em algumas etapas (FAYYAD et al., 1996):

• Seleção

• Processamento

• Transformação

• Mineração dos dados

• Interpretação/Evolução

Page 25: Material Weka

24

Os processos dessas etapas estão representados na figura 2.3, refere-se ao processo de

preparação e seleção dos dados a serem analisados, padronizando o tipo, formato, e estrutura de

tal, neste trabalho será utilizado dados médicos. Visa cumprir os objetivos definidos na etapa de

identificação do problema, compreende o processo de escolha do algoritmo a ser utilizado para

processar as informações e extrair os padrões propriamente ditos, focado na transformação dos

dados, representando os padrões obtidos no processo da mineração de dados aplicado, obtendo-se

a interpretação ou evolução dos dados para o conhecimento.

Figura 2.3 Processo KDD.

FONTE: FAYYAD et al., 1996.

2.8 WEKA

Para aplicar a técnica de mineração de dados foi utilizado o software de domínio público,

um software livre que possui sua licença baseada na GPL (General Public Licence) denominado

WEKA (Waikato Environment for Knowledge Analysis), da Universidade de Waikato, Nova

Zelândia. O pacote WEKA consiste de uma coleção de algoritmos de aprendizado de máquina

para tarefas de mineração de dados. Pode ser usado para aplicar métodos de aprendizado a um

conjunto de dados e analisar a saída para extrair informações a partir dos dados de entrada. Todos

os algoritmos são implementados em Java, tanto novos como aqueles pré-existentes. Por

Page 26: Material Weka

25

exemplo, o indutor C 4.5, originalmente escrito em linguagem de programação C foi recodificado

para linguagem Java, nomeado como J.48 (WITTEN & FRANK, 1999).

Assim como os algoritmos contidos no WEKA, o próprio software foi escrito em

linguagem Java, uma vez que esta linguagem está disponível em varias plataformas como

Windows, Linux e Macintosh, transformando assim, num software bastante portável (WITTEN

& FRANK, 1999).

Neste trabalho será utilizado o ambiente Explorer do WEKA, para a realização dos testes,

a seguir será ilustrado imagens dos respectivos ambientes utilizados do software.

2.8.1 AMBIENTE EXPLORER DO WEKA

Neste trabalho é utilizado o ambiente Explorer do WEKA representada na figura 2.4, para

a realização dos testes, como abertura do arquivo da base de dados com extensão arff, a escolha

dos algoritmos para os testes e a validação aplicada a eles, onde, se obterá os resultados para a

realização de comparação de desempenho.

Page 27: Material Weka

26

Figura 2.4 Tela inicial do WEKA.

2.8.2 AMBIENTE EXPLORER - PRÉ-PROCESSO

Nesta tela (Figura 2.5), ocorre a abertura do arquivo da base de dados, onde é realizada a

identificação dos atributos e instâncias da base por completo.

Page 28: Material Weka

27

Figura 2.5 Tela do Pré-Processo.

2.8.3 AMBIENTE EXPLORER - CLASSIFICAÇÃO

Após a abertura da base de dados, é utilizado o ambiente de classificação, onde acontece a

escolha do classificador (Figura 2.6), ou seja, o algoritmo a ser executado e a técnica de

validação. Feito as escolhas dos requisitos, inicia-se o processo de execução, onde ao final do

processo o WEKA disponibiliza os resultados em porcentagem de erro e acerto, neste, caso

representa os erros e acertos para classificação de certo tipo da doença esperada.

Page 29: Material Weka

28

Figura 2.6 Tela de Classificação.

2.8.4 ARQUIVO ARRF

O WEKA utiliza arquivos de dados de treinamento, com formato (arff), onde devem ser

mostradas quais variáveis são permitidas para uma relação específica, bem como o tipo de dado

de cada variável, isto é, nominal ou valor numérico (Tabela 1). Deverá conter uma lista de todos

os atributos definindo-se o tipo do atributo ou os valores que ele pode representar. Os valores

devem estar representados entre chaves “{}” e separados por vírgulas.

Page 30: Material Weka

29

Tabela 1 Estrutura do arquivo ARRF.

@relation

Representa o conjunto de dados a ser

analisado.

@attribute

Define as características, ou seja, o tipo de

cada variável. O atributo pode ser do tipo:

• Nominal

• Booleano

• Numérico

@data

É a representação dos registros da base de

dados. As informações devem ser colocadas

separadas por vírgulas, e cada linha

representa um único registro.

Page 31: Material Weka

30

3 DESENVOLVIMENTO PRÁTICO

O objetivo principal deste trabalho é a utilização de algoritmos de AM, para aplicação em

dados médicos, precisamente em um grupo de patologias classificadas como lesões intersticiais

pulmonares, obtendo resultados onde será utilizado para comparação de desempenho entre os

mesmos.

3.1 LEVANTAMENTOS DE DADOS

Os dados utilizados foram retirados de (AMBRÓSIO, 2002), dentre varias doenças que

podem ser classificadas no grupo das lesões intersticiais pulmonares, totalizando mais de 180

diferentes doenças. Para realizar a escolha de quais seriam utilizadas como exemplo para o

desenvolvimento do sistema, contou-se com a ajuda de um médico especializado na área, no qual,

foram selecionadas as seguintes patologias:

Tabela 2 Relação das patologias investigadas.

• Paracoccidioidomicose

• Fibrose Pulmonar Idiopática (IPF)

• Tuberculose Miliar

• Histoplasmose

• Sarcoidose

• Silicose

• Esclerose Sistêmica (Escleroderma)

• Histiocitose X (Granuloma Eosinofílico)

• Linfangite Carcinomatosa

Page 32: Material Weka

31

3.2 PARÂMETROS CLÍNICOS E RADIOLÓGICOS

Em seguida, após a escolha das patologias, também através do auxílio de um especialista,

criou-se os principais parâmetros a serem analisados no exame clínico e radiológico que podem

auxiliar no diagnóstico diferencial, obtendo-se aos seguintes (AMBRÓSIO, 2002):

a) parâmetros clínicos:

• idade do paciente;

• sexo;

• tempo de duração dos sintomas;

• constatação de estado febril;

• nível de imunidade;

• relato de doença maligna;

• paciente fumante;

• relato de tratamentos com drogas;

• relato de exposição constante à poeira;

• relato de exposição constante a antígenos orgânicos.

b) Parâmetros radiológicos:

• grau de lesões apresentadas na área superior, nas metades esquerda e direita;

• grau de lesões apresentadas na área média, nas metades esquerda e direita;

• grau de lesões apresentadas na área inferior, nas metades esquerda e direita;

• apresentação de padrão proximal ou periférico;

• homogeneidade das lesões apresentadas;

• apresentação de padrão fino ou grosseiro;

• apresentação de nodularidade;

• apresentação de linhas septais;

• apresentação de pulmão em “favo de mel”;

• verificação de perda de volume pulmonar;

• apresentação de linfadenopatia;

• apresentação de efusão pleural;

Page 33: Material Weka

32

• tamanho cardíaco alterado.

Com o conjunto de elementos, já bastante reduzidos, e analisados por um especialista, foi

realizado a quantificação dos parâmetros radiológicos e o preenchimento do protocolo utilizado

como entrada de dados para o sistema.

Figura 3.1 Parâmetros Clínicos e Parâmetros Radiológicos. Fonte: Adaptado de AMBRÓSIO, 2002.

Page 34: Material Weka

33

Os dados caracterizados como parâmetros clínicos foram obtidos através do prontuário do

paciente, adaptados e quantificados da seguinte maneira (AMBRÓSIO, 2002):

a) Idade: idade do paciente, em anos;

b) Sexo: sexo do paciente, sendo o valor “masc” para sexo masculino e “fem” para sexo

feminino;

c) Duração dos sintomas: relatado pelo paciente, de 0 a 12 meses (relatos de mais de doze

meses foram fixados no valor 12);

d) Temperatura: observação de estado febril no momento do exame, sendo classificada

com o valor “febre”, para a constatação de febre e valor “normal” para temperatura normal;

e) Imunidade: valor “normal” para pacientes com imunidade normal e “suprimido” para

os portadores de doenças do sistema imune;

f) Doença maligna: relatado pelo paciente, sendo o valor “sim” para os pacientes

portadores de doença maligna e “nao” caso contrário;

g) Fumante: relatado pelo paciente, sendo “nao” para não fumantes e “sim” para

fumantes;

h) Tratamento com drogas: pacientes com tratamento por drogas tóxicas foram

classificados com o valor “tóxico”, pacientes tratados por drogas pouco tóxicas receberam o valor

“pouco_toxico”, tratados com drogas não tóxicas valor “nao_toxico”, e pacientes que não

receberam nenhum tratamento por drogas classificados com o valor “nao”;

i) Exposição à poeira: pacientes que relataram exposição constante à poeira receberam

valor “sim”, caso contrário “nao”;

j) Exposição a antígenos orgânicos: também relatada pelo paciente, à exposição para

qualquer tipo de antígeno orgânico recebeu o valor “sim”, e valor “nao” caso contrário.

Os parâmetros radiológicos foram quantificados pelo profissional especializado com base

na observação das imagens radiológicas catalogadas também no prontuário do paciente. Essa

quantificação foi realizada com valores inteiros no intervalo de 0 a 5 para todos os campos,

Page 35: Material Weka

34

exceto o tamanho cardíaco (intervalo de 1 a 5), sendo dado o valor 0 para a ausência de lesão, e

valores maiores para o nível (ou tamanho) da presença de lesão.

3.3 DADOS COLETADOS

Um total de 112 (cento e doze) casos das patologias investigadas, distribuídos como: 22

casos de paracoccidioidomicose; 14 casos de histoplasmose; 17 casos de fibrose pulmonar

idiopática; 20 casos de tuberculose miliar; 11 casos de sarcoidose; 12 casos de esclerodermia; 5

casos de silicose; 5 casos de histiocitose X; e 6 casos de linfangite carcinomatosa.

3.4 BASE DE DADOS PARA TREINAMENTO E TESTES

Através dos dados coletados, criou-se uma base computacional, para a aplicação dos

algoritmos. Cada um dos 112 registros dessa base (total de casos coletados) compõe-se de uma

cadeia de 27 valores para o protocolo de entrada, sendo eles 18 valores numéricos e 9 entre

nominais e booleanos, representando os 26 campos do protocolo de entrada, mais 1 valor para

representar a saída esperada.

Figura 3.2 Exemplo extraído da base de dados. Fonte: Adaptado de AMBRÓSIO, 2002.

3.5 RESULTADOS OBTIDOS POR CADA ALGORITMO

A seguir serão ilustrados gráficos mostrando o desempenho e tabelas com seus

respectivos resultados em porcentagem de acerto e tempo de execução para cada algoritmo com

Page 36: Material Weka

35

validação Cross-Validation e Leave-One-Out, sendo que, o algoritmo que obteve o maior

desempenho foi a Rede Neural (MLP) e o pior desempenho foi o Zero Rule.

3.5.1 RESULTADOS OBTIDOS - CROSS-VALIDATION

Na Tabela 3, obteve-se o resultado em porcentagem de acerto para cada algoritmo com

validação Cross-Validation, sendo que, o algoritmo que obteve o maior desempenho foi a Rede

Neural (MLP) com 69,70% de acerto, 42,70% de erro absoluto relativo e 12,05 segundos em

tempo de execução e o que obteve o pior desempenho com execução rápida foi o Zero Rule, com

19,60% de acerto, 100% de erro absoluto relativo e - segundos em tempo de execução, assim

como o algoritmo One Rule 28,60% de acerto, 82,50% de erro absoluto relativo e 0,03 segundos

em tempo de execução, também não obteve um bom desempenho de acerto, sendo o penúltimo

em termos de valor. Destaca-se os algoritmos Rede Neural (RBF) 46,40% de acerto, 61,90% de

erro absoluto relativo e 37,8 segundos em tempo de execução, Rede Bayesiana 57,10% de acerto,

56,99% de erro absoluto relativo e 0,13 segundos em tempo de execução e o C 4.5 (J.48) 52,70%

de acerto, 56,77% de erro absoluto relativo e 0,25 segundos em tempo de execução, que

obtiveram um bom desempenho. Os valores de desempenho estão representados no gráfico da

figura 3.3, onde cada algoritmo possui a sua respectiva cor fixada na legenda de cada gráfico. Na

tabela 3 estão os valores em % de acerto, tabela 4 valores de erro absoluto relativo e os valores de

tempo de execução representados na tabela 5.

Tabela 3 (%) de Acerto com Cross-Validation.

Cross-Validation

Algoritmos (%) Acerto One Rule 28,60% Zero Rule 19,60%

Rede Neural (MLP) 69,70% Rede Neural (RBF) 46,40%

Rede Bayesiana 57,10% C 4.5 (J.48) 52,70%

Page 37: Material Weka

36

28,60%

57,10%

19,60%

69,70%

46,40%52,70%

0,00%

10,00%

20,00%

30,00%

40,00%

50,00%

60,00%

70,00%

80,00%

Algoritmos

One Rule

Zero Rule

Rede Neural (MLP)

Rede Neural (RBF)

Rede Bayesiana

C 4.5 (J.48)

Figura 3.3 Gráfico em (%) de Acerto com Cross-Validation.

Tabela 4 (%) de Erro Absoluto Relativo com Cross-Validation.

Cross-Validation

Algoritmos (%) Erro Absoluto

Relativo One Rule 82,50% Zero Rule 100% Rede Neural (MLP) 42,70% Rede Neural (RBF) 61,90% Rede Bayesiana 56,99% C 4.5 (J.48) 56,77%

82,50%

100%

42,70%

61,90%56,99%

56,77%

0,00%10,00%20,00%30,00%40,00%50,00%60,00%70,00%80,00%90,00%

100,00%

1

Algoritmos

One Rule

Zero Rule

Rede Neural (MLP)

Rede Neural (RBF)

Rede Bayesiana

C 4.5 (J.48)

Figura 3.4 Gráfico em (%) de Erro Absoluto Relativo com Cross-Validation.

Page 38: Material Weka

37

Tabela 5 (s) Tempo de Execução com Cross-Validation.

Cross-Validation

Algoritmos (s) Tempo de Execução One Rule 0,03 Zero Rule - Rede Neural (MLP) 12,05 Rede Neural (RBF) 37,8 Rede Bayesiana 0,13 C 4.5 (J.48) 0,25

0,03

12,05

37,8

0,13 0,250

5

10

15

20

25

30

35

40

Algoritmos

One Rule

Zero Rule

Rede Neural (MLP)

Rede Neural (RBF)

Rede Bayesiana

C 4.5 (J.48)

Figura 3.5 Gráfico em (s) Tempo de Execução com Cross-Validation.

3.5.2 RESULTADOS OBTIDOS - LEAVE-ONE-OUT

Na Tabela 4, obteve-se o resultado em porcentagem de acerto para cada algoritmo com

validação Leave-One-Out, sendo que, o algoritmo que obteve o maior desempenho foi a Rede

Neural (MLP) com 70,50% de acerto, 42,64% de erro absoluto relativo e 12,89 segundos em

tempo de execução e o que obteve o pior desempenho com execução rápida foi o Zero Rule, com

19,60% de acerto, 100% de erro absoluto relativo e - segundos em tempo de execução, assim

como o algoritmo One Rule 24,10% de acerto, 87,10% de erro absoluto relativo e - segundos em

tempo de execução, também não obteve um bom desempenho de acerto, sendo o penúltimo em

termos de valor. Destaca-se os algoritmos Rede Neural (RBF) 48,20% de acerto, 60,10% de erro

absoluto relativo e 36,33 segundos em tempo de execução, Rede Bayesiana 57,10% de acerto,

Page 39: Material Weka

38

55,13% de erro absoluto relativo e - segundos em tempo de execução e o C 4.5 (J.48) 50,90% de

acerto, 57,33% de erro absoluto relativo e 0,05 segundos em tempo de execução, que obtiveram

um bom desempenho. Os valores de desempenho estão representados no gráfico da figura 3.5,

onde cada algoritmo possui a sua respectiva cor fixada na legenda de cada gráfico. Na tabela 6

estão os valores em % de acerto, tabela 7 valores de erro absoluto relativo e os valores de tempo

de execução representados na tabela 8.

Tabela 6 (%) de Acerto com Leave-One-Out.

Leave-One-Out Algoritmos (%) Acerto One Rule 24,10% Zero Rule 19,60% Rede Neural (MLP) 70,50% Rede Neural (RBF) 48,20% Rede Bayesiana 57,10% C 4.5 (J.48) 50,90%

24,10%19,60%

70,50%

48,20%

57,10%

50,90%

0,00%

10,00%

20,00%

30,00%

40,00%

50,00%

60,00%

70,00%

80,00%

Algoritmos

One Rule

Zero Rule

Rede Neural (MLP)

Rede Neural (RBF)

Rede Bayesiana

C 4.5 (J.48)

Figura 3.6 Gráfico em (%) de Acerto com Leave-One-Out.

Page 40: Material Weka

39

Tabela 7 (%) de Erro Absoluto Relativo com Leave-One-Out.

Leave-One-Out

Algoritmos (%) Erro Absoluto

Relativo One Rule 87,10% Zero Rule 100% Rede Neural (MLP) 42,64% Rede Neural (RBF) 60,10% Rede Bayesiana 55,13% C 4.5 (J.48) 57,33%

87,10%

100%

42,64%

60,10%55,13% 57,33%

0,00%

10,00%

20,00%

30,00%

40,00%

50,00%

60,00%

70,00%

80,00%

90,00%

100,00%

1

Algoritmos

One Rule

Zero Rule

Rede Neural (MLP)

Rede Neural (RBF)

Rede Bayesiana

C 4.5 (J.48)

Figura 3.7 Gráfico em (%) de Erro Absoluto Relativo com Leave-One-Out.

Tabela 8 (s) Tempo de Execução com Leave-One-Out.

Leave-One-Out

Algoritmos (s) Tempo de Execução One Rule - Zero Rule - Rede Neural (MLP) 12,89 Rede Neural (RBF) 36,33 Rede Bayesiana - C 4.5 (J.48) 0,05

Page 41: Material Weka

40

12,89

36,33

0,050

5

10

15

20

25

30

35

40

Algoritmos

One Rule

Zero Rule

Rede Neural (MLP)

Rede Neural (RBF)

Rede Bayesiana

C 4.5 (J.48)

Figura 3.8 Gráfico em (s) Tempo de Execução com Leave-One-Out.

Foram realizados dois testes para cada algoritmo, aplicado por duas validações, por

Cross-Validation e Leave-One-Out, com o objetivo de verificar qual algoritmo vai obter o melhor

desempenho com relação à porcentagem de erro e acerto, levando em conta o tempo de execução

de cada um. Dentre todos o que obteve o pior desempenho foi o algoritmo ZEROR, resultado já

esperado, pois, o algoritmo aplica a base de dados uma única regra, onde, prediz o valor mais

freqüente nos dados, sendo assim, resultando em uma porcentagem baixe de acerto. O algoritmo

que obteve o maior desempenho foi a rede neural (MLP), com maior porcentagem de acerto.

3.5.3 REDES NEURAIS (MLP) - CROSS-VALIDATION

O teste aplicado ao algoritmo de redes neurais com validação de Cross-Validation, com

testes realizados com o número total de 112 registros obteve o resultado de 78 acertos com

porcentagem de 69.6429 % e 34 erros com porcentagem de 30.3571 % de erro. A seguir a matriz

resultante gerada pelo algoritmo, representa o número de acertos e erros sobre a classificação da

doença esperada:

Page 42: Material Weka

41

Figura 3.9 Matriz confusão Redes Neurais (MLP) Cross-Validation.

3.5.4 REDES NEURAIS (MLP) - LEAVE-ONE-OUT

O teste realizado ao algoritmo de redes neurais com validação de Leave-One-Out,

realizados com o número total de 112 registros obteve o resultado de 79 acertos com

porcentagem de 70.5357 % e 33 erros com porcentagem de 29.4643 % de erro. A seguir a matriz

resultante gerada pelo algoritmo, representa o número de acertos e erros sobre a classificação da

doença esperada:

Figura 3.10 Matriz Confusão Redes Neurais (MLP) Leave-One-Out.

3.5.5 REDES NEURAIS (RBF) - CROSS-VALIDATION

O teste realizado ao algoritmo de redes neurais RBF com validação de Cross-Validation,

realizados com o número total de 112 registros obteve o resultado de 52 acertos com

porcentagem de 46.4286 % e 60 erros com porcentagem de 53.5714 % de erro. A seguir a matriz

resultante gerada pelo algoritmo, representa o número de acertos e erros sobre a classificação da

doença esperada:

Page 43: Material Weka

42

Figura 3.11 Matriz Confusão Redes Neurais (RBF) Cross-Validation.

3.5.6 REDES NEURAIS (RBF) - LEAVE-ONE-OUT

O teste realizado ao algoritmo de redes neurais RBF com validação de Leave-One-Out,

realizados com o número total de 112 registros obteve o resultado de 54 acertos com

porcentagem de 48.2143 % e 58 erros com porcentagem de 51.7857 % de erro. A seguir a matriz

resultante gerada pelo algoritmo, representa o número de acertos e erros sobre a classificação da

doença esperada:

Figura 3.12 Matriz Confusão Redes Neurais (RBF) Leave-One-Out.

3.5.7 C4.5 - CROSS - VALIDATION

O teste realizado ao algoritmo J.48 com validação de Cross-Validation, realizados com o

número total de 112 registros obteve o resultado de 59 acertos com porcentagem de 52.6786% e

53 erros com porcentagem de 47.3214 % de erro. A seguir a matriz resultante gerada pelo

algoritmo, representa o número de acertos e erros sobre a classificação da doença esperada:

Page 44: Material Weka

43

Figura 3.13 Matriz Confusão C4.5 Cross-Validation.

3.5.8 C4.5 - LEAVE-ONE-OUT

O teste realizado ao algoritmo J.48 com validação de Leave-One-Out, realizados com o

número total de 112 registros obteve o resultado de 57 acertos com porcentagem de 50.8929% e

55 erros com porcentagem de 49.1071 % de erro. A seguir a matriz resultante gerada pelo

algoritmo, representa o número de acertos e erros sobre a classificação da doença esperada:

Figura 3.14 Matriz Confusão C4.5 Leave-One-Out.

3.5.9 ZEROR - CROSS-VALIDATION

O teste realizado ao algoritmo ZEROR com validação de Cross-Validation, realizados

com o número total de 112 registros obteve o resultado de 22 acertos com porcentagem de

19.6429 % e 90 erros com porcentagem de 80.3571 % de erro. A seguir a matriz resultante

gerada pelo algoritmo, representa o número de acertos e erros sobre a classificação da doença

esperada:

Page 45: Material Weka

44

Figura 3.15 Matriz Confusão ZEROR Cross-Validation.

3.5.10 ZEROR - LEAVE-ONE-OUT

O teste realizado ao algoritmo ZEROR com validação de Leave-One-Out, realizados com

o número total de 112 registros obteve o mesmo resultado pela validação de Cross-Validation de

22 acertos com porcentagem de 19.6429 % e 90 erros com porcentagem de 80.3571 % de erro. A

seguir a matriz resultante gerada pelo algoritmo, representa o número de acertos e erros sobre a

classificação da doença esperada:

Figura 3.16 Matriz Confusão ZEROR Leave-One-Out.

3.5.11 ONER - CROSS-VALIDATION

O teste realizado ao algoritmo ONER com validação de Cross-Validation, realizados com

o número total de 112 registros obteve o resultado de 32 acertos com porcentagem de 28.5714 %

e 80 erros com porcentagem de 71.4286 % de erro. A seguir a matriz resultante gerada pelo

algoritmo, representa o número de acertos e erros sobre a classificação da doença esperada:

Page 46: Material Weka

45

Figura 3.17 Matriz Confusão ONER Cross-Validation.

3.5.12 ONER - ONE-LEAVE-OUT

O teste realizado ao algoritmo ONER com validação de Leave-One-Out, realizados com o

número total de 112 registros obteve o resultado de 27 acertos com porcentagem de 24.1071 % e

85 erros com porcentagem de 75.8929 % de erro. A seguir a matriz resultante gerada pelo

algoritmo, representa o número de acertos e erros sobre a classificação da doença esperada:

Figura 3.18 Matriz Confusão ONE Leave-One-Out.

3.5.13 REDE BAYESIANA - CROSS-VALIDATION

O teste realizado pela rede bayesiana com validação de Cross-Validation, realizados com

o número total de 112 registros obteve o resultado de 64 acertos com porcentagem de 57.1429 %

e 48 erros com porcentagem de 42.8571 % de erro. A seguir a matriz resultante gerada pelo

algoritmo, representa o número de acertos e erros sobre a classificação da doença esperada:

Page 47: Material Weka

46

Figura 3.19 Matriz Confusão Rede Bayesiana Cross-Validation.

3.5.14 REDE BAYESIANA - LEAVE-ONE-OUT

O teste realizado pela rede bayesiana com validação de Leave-One-Out, realizados com o

número total de 112 registros obteve o mesmo resultado pela validação de Cross-Validation 64

acertos com porcentagem de 57.1429 % e 48 erros com porcentagem de 42.8571 % de erro. A

seguir a matriz resultante gerada pelo algoritmo, representa o número de acertos e erros sobre a

classificação da doença esperada:

Figura 3.20 Matriz Confusão Rede Bayesiana Leave-One-Out.

Page 48: Material Weka

47

CONCLUSÕES

Observou-se que o processo de extração de conhecimento e a utilização dos algoritmos de

aprendizado de máquina para classificação de padrões, possuem certa diferenciação entre eles,

como resultados aplicado ao desempenho de ambos, variando de algoritmo para algoritmo,

levando em conta o paradigma pertencente ao mesmo.

Foram realizados estudos teóricos sobre cada algoritmo, a fim de se obter um

conhecimento sobre cada um com relação ao desempenho, ou seja, a capacidade de classificar

uma saída esperada de forma eficaz.

Os testes foram iniciados a partir de uma base dados, no qual, foi aplicada ao software

WEKA, onde se realizou dois testes para cada algoritmo, com duas validações Cross-Validation e

Leave-One-Out, para a obtenção de resultados.

O software WEKA por ser uma licença GPL facilitou bastante durante o processo dos

testes, contribuiu com a possibilidade de se realizar vários testes em pouco espaço de tempo, e

também por dar suporte a diversos algoritmos de aprendizagem de máquina.

Observando os resultados obtidos pela pesquisa, pode-se concluir que o algoritmo de

melhor desempenho como classificador de padrões, especificamente para a base de dados

trabalhada, foi o de rede neural multicamadas, que teve a maior porcentagem de acerto, bem

como o menor erro absoluto relativo.

Após a conclusão do algoritmo de maior desempenho, como classificador de padrões,

observou-se que o mesmo obteve tal desempenho sobre os demais especificamente em uma base

dados apenas, porém, os demais algoritmos utilizados no trabalho podem obter melhor

desempenho, por exemplo, em duas ou mais base de dados, e também em base de dados adaptada

para a estrutura própria de tal algoritmo.

Espera-se, com esse trabalho, por meio dos estudos de desempenho realizados com os

algoritmos e seus resultados, proporcionar uma fonte para futuras pesquisas na área.

Como proposta de trabalhos futuros, espera-se desenvolver os testes comparativos

utilizando-se bases de dados distintas, a fim de comparar o desempenho dos algoritmos em

situações diversas.

Page 49: Material Weka

48

REFERÊNCIAS BIBLIOGRÁFICAS

AMBRÓSIO, P. E. Redes neurais artificiais no apoio ao diagnóstico de lesões intersticiais pulmonares. Dissertação (Mestrado). Ribeirão Preto: Faculdade de Filosofia, Ciências e Letras de Ribeirão Preto, Universidade de São Paulo, 2002. BARANAUSKAS, J. A. Extração Automática de Conhecimento por Múltiplos Indutores. São Carlos: Instituto de Ciências Matemáticas e de Computação, Universidade de São Paulo, 2001.

BARRETO, J. M. Introdução Redes Neurais Artificiais. Florianópolis: Laboratório de Conexionismo e Ciências Cognitivas UFSC - Departamento de Informática e de Estatística, 2002. Disponível em: <http://twiki.im.ufba.br/bin/viewfile/MAT054/TodoMaterial?rev=1.1;filename=REDESNEURAIS.PDF >. Acesso em: 14 ago. 2007.

CARVALHO, L. A.V. Datamining: A Mineiração de Dados no Marketing, Medicina, Economia, Engenharia e Administração. São Paulo: Editora Érica Ltda, 2001.

FAYYAD, U.; PIATETSKY-SHAPIRO, G.; SMITH, P. The KDD process for extracting useful knowledge from volumes of Data. Communications of the ACM, New York, 1996. JUSTINO, G. Indução de Árvores de Decisão Difusas. Disponível em: <http://www.cesblu.br/revista/ver_artigo.php?id=21>. Acesso em: 30 ago. 2007.

LÓPEZ, J. M. M; HERRERO, J. G. Técnicas de Análisis de Datos: Aplicaciones Prácticas Utilizando Microsoft Excel Y Weka. Disponivel em: <http://galahad.plg.inf.uc3m.es/~docweb/ad/transparencias/apuntesAnalisisDatos.pdf >. Acesso em: 25 set. 2007.

MITCHELL, T. M. Machine Learning. S.l.: McGraw-Hill. 1997.

MONARD, M. C.; BARANAUSKAS, J. A. Conceitos sobre Aprendizado de Máquina. Capítulo 4. In: REZENDE, S. O. Sistemas Inteligentes: Fundamentos e Aplicações. Barueri: Manole, 2002.

PICHILIANI, M. DataMining na Prática: Árvores de Decisão. Disponível em: <http://www.imasters.com.br/artigo/5130/sql_server/data_mining_na_pratica_arvores_de_decisao/> Acesso em: 16 ago. 2007.

TATIBANA, C. Y. e KAETSU, D. Y. Disponível em: <http://www.din.uem.br/ia/neurais/#neural>. Acesso em: 12 jul. 2007.

WITTEN, I. H., AND FRANK E. Data Mining: Practical Machine Learning Toolsand Techniques with Java Implementations. San Francisco, 1999.