• Nenhum resultado encontrado

Explorer Fuzzy Tree: uma ferramenta para experimentação de técnicas de classificação baseadas em árvores de decisão fuzzy

N/A
N/A
Protected

Academic year: 2021

Share "Explorer Fuzzy Tree: uma ferramenta para experimentação de técnicas de classificação baseadas em árvores de decisão fuzzy"

Copied!
14
0
0

Texto

(1)

Explorer Fuzzy Tree: uma ferramenta para experimentac¸˜ao

de t´ecnicas de classificac¸˜ao baseadas em ´arvores de decis˜ao

fuzzy

Erick Nilsen Pereira de Souza1, Daniela Barreiro Claro1 ∗

1 Laborat´orio de Sistemas Distribu´ıdos - LaSiD

Departamento de Ciˆencia da Computac¸˜ao – Universidade Federal da Bahia (UFBA) Salvador – BA – Brasil

{erick,dclaro}@ufba.br

Abstract. Techniques based on the fuzzy logic applied to classification tree algo-rithms have been presenting good results in data mining domain. In this context, this work proposes an analysis of fuzzy logic in classification trees through the implementation of two techniques for tree fuzzyfications. A tool, called Explorer Fuzzy Tree, was developed in order to evaluate classification techniques based on fuzzy decision trees, varying some parameters to obtain better results in data classification. Furthermore, a comparative study using four different datasets was made using the implemented algorithms.

Resumo. A aplicac¸˜ao de t´ecnicas baseadas na l´ogica fuzzy `a algoritmos de classificac¸˜ao com ´arvores vem apresentando bons resultados na minerac¸˜ao de dados. Nesse contexto, este trabalho prop˜oe uma an´alise da aplicac¸˜ao da l´ogica fuzzy `as ´arvores de classificac¸˜ao atrav´es da implementac¸˜ao de duas t´ecnicas de fuzzyficac¸˜ao de ´arvores. Os algoritmos implementados foram reunidos em uma ferramenta para experimentac¸˜ao destas t´ecnicas, chamada Explorer Fuzzy Tree, que permite variar parˆametros espec´ıficos para obtenc¸˜ao de melhores resulta-dos na classificac¸˜ao de daresulta-dos. Adicionalmente, foi feito um estudo comparativo dos algoritmos implementados na ferramenta com base nos resultados obtidos dos experimentos realizados.

1. Introduc¸˜ao

Um dos maiores desafios em aplicac¸˜oes que armazenam grandes quantidades de dados ´e extrair padr˜oes ´uteis que permitam novas percepc¸˜oes aos usu´arios. Atualmente, a im-portˆancia da informac¸˜ao ´e incontest´avel. De fato, estima-se que cinco exabytes (5 x 1018 bytes) de novas informac¸˜oes foram produzidos em 2002, dos quais 92% estavam

armazenados em meios magn´eticos. Isso representa mais do que o dobro da informac¸˜ao produzida em 1999 (2 exabytes) [Eggermont 2005]. Assim, a tecnologia vem facilitando o ac´umulo de informac¸˜ao. Entretanto, como observado por Albert Einstein: “Informac¸˜ao n˜ao ´e Conhecimento”. Estudos comprovam que o c´erebro humano consegue fazer apenas oito comparac¸˜oes por vez [Lyman 2003], o que impossibilita a descoberta de padr˜oes em grandes bases de dados, at´e mesmo para as mentes mais “brilhantes”.

Para contornar as limitac¸˜oes da percepc¸˜ao humana, surge o processo de descoberta do conhecimento autom´atico em bancos de dados, denominado KDD (Knowledge

(2)

very in Databases). De acordo com [Fayyad and Smyth 1996a], o KDD pode ser definido como o processo n˜ao trivial de identificar padr˜oes v´alidos, novos, potencialmente ´uteis e compreens´ıveis em dados. A principal fase desse processo ´e a Minerac¸˜ao de Dados. Se-gundo Fayyad [Fayyad and Smyth 1996b], a Minerac¸˜ao de Dados consiste em fazer a an´alise dos dados e aplicar algoritmos de aprendizado de m´aquina, sob limitac¸˜oes com-putacionais aceit´aveis, para produzir um conjunto de padr˜oes sobre os dados. Os algorit-mos de aprendizado de m´aquina geralmente utilizam conceitos da estat´ıstica e da teoria da informac¸˜ao para produzir resultados.

Este trabalho avalia o comportamento e a aplicabilidade da l´ogica nebulosa `as t´ecnicas de classificac¸˜ao em Minerac¸˜ao de Dados. Algoritmos de classificac¸˜ao baseados em ´arvores de decis˜ao fuzzy foram implementados utilizando a linguagem Java e testados com quatro bases de dados (Iris [R.A. Fisher 1988], Segment-challenge [Group 1990a], Segment-test [Group 1990b] e SPAMBASE [Hopkins et al. 2001]). Foi desenvolvida uma ferramenta gr´afica para facilitar a experimentac¸˜ao destes algoritmos, o Explorer Fuzzy Tree (EFT). Adicionalmente, s˜ao apresentados e discutidos os resultados gerados por cada algoritmo.

O restante deste artigo est´a dividido da seguinte forma: a sec¸˜ao 2 apresenta os principais algoritmos de classificac¸˜ao com ´arvores cl´assicas. A sec¸˜ao 3 descreve duas t´ecnicas de fuzzyficac¸˜ao de ´arvores. A sec¸˜ao 4 apresenta os algoritmos de classificac¸˜ao com ´arvore fuzzy desenvolvidos e a ferramenta gr´afica de Minerac¸˜ao de Dados implemen-tada. A sec¸˜ao 5 discute os resultados obtidos nos experimentos realizados. A sec¸˜ao 6 apresenta conclus˜oes e considerac¸˜oes finais.

2. Algoritmos de Classificac¸˜ao com ´

Arvores

Os principais algoritmos de classificac¸˜ao com ´arvores de decis˜ao s˜ao gulosos e utilizam o m´etodo top-down. Dentre estes, os mais populares s˜ao: ID3 [Quinlan 1993] e C4.5 [Quinlan 1996]. A seguir s˜ao descritas as principais caracter´ısticas destes algoritmos. 2.1. ID3

O ID3 (Iterative Dichotomiser 3) constr´oi a ´arvore de decis˜ao a partir da raiz, selecio-nando o melhor atributo classificador dentre todos os atributos do conjunto de dados. O melhor atributo classificador ´e selecionado com base numa avaliac¸˜ao estat´ıstica de todos os atributos. Ap´os a escolha, os dados s˜ao separados de acordo com as classes do atribu-to escolhido, gerando uma subdivis˜ao dos dados para cada descendente na ´arvore. O al-goritmo ´e aplicado recursivamente a cada descendente. Isto gera uma ´arvore de decis˜ao aceit´avel, na qual o algoritmo nunca retrocede para reconsiderar escolhas feitas anterior-mente.

´

E crucial selecionar o atributo que ´e mais significativo para classificar os exem-plos. No ID3, a selec¸˜ao do melhor atributo classificador ´e feita com base no conceito de ganho de informac¸˜ao. O ganho de informac¸˜ao mede como um determinado atributo separa os exemplos de treinamento de acordo com suas classificac¸˜oes. Formalmente, o ganho de informac¸˜ao (de um atributo A relativo a uma colec¸˜ao de instˆancias S) ´e definido como [Quinlan 1996]:

(3)

Ganho(S, A) = Entropia(S) − k X j=1 −|Sj| |S|Entropia(Sj) (1)

A entropia ´e uma medida que caracteriza a impureza de uma colec¸˜ao arbitr´aria de instˆancias. Mais precisamente, dada uma colec¸˜ao S, a entropia de S ´e obtida da seguinte equac¸˜ao [Guarda 2000]: Entropia(S) = c X i=1 −pilog2pi (2)

onde c ´e a quantidade de classes presentes em S, e pi ´e a probabilidade de uma

instˆancia em S pertencer `a classe i.

Dessa maneira, o ID3 usa o ganho de informac¸˜ao para selecionar, entre os can-didatos, os atributos que ser˜ao utilizados a cada etapa de construc¸˜ao da ´arvore. As-sim, o algoritmo ID3 privilegia os atributos que possuem maior ganho de informac¸˜ao, selecionando-os como atributos de decis˜ao pertencentes aos n´os internos da ´arvore de classificac¸˜ao constru´ıda.

O ID3 foi criado para receber como entrada apenas conjuntos de dados com atributos discretos (nominais), ou seja, atributos cujos valores s˜ao predefinidos. Esta limitac¸˜ao foi contornada quando Quinlan [Quinlan 1993] publicou o desenvolvimento de uma fam´ılia de algoritmos de classificac¸˜ao com ´arvores para conjuntos cont´ınuos na lin-guagem C, denominada C4.5.

2.2. C4.5

Os algoritmos da fam´ılia C4.5 definem limiares de partic¸˜ao para cada atributo nos n´os internos da ´arvore por trabalharem com bases de dados de atributos cont´ınuos. O melhor limiar de um atributo cont´ınuo ´e escolhido em meio a um conjunto de limiares candidatos. Em [Quinlan 1996], Quinlan sugere que os limiares candidatos de um atributo A sejam selecionados da seguinte forma:

1. Ordena-se os valores distintos de A para obter a seq¨uˆencia v1, v2, v3, ..., vn.

2. Os limiares candidatos s˜ao todos os valores pertencentes ao seguinte conjunto: { t ∈ < / t = (vi+vi+1)

2 , ∀ i ∈ (1,2,3,...,n)}.

Ap´os a selec¸˜ao dos limiares candidatos, utiliza-se a mesma estrat´egia do ID3 para a selec¸˜ao do melhor limiar: o ganho de informac¸˜ao. Assim, todos os limiares s˜ao testados e ´e escolhido aquele que apresenta maior ganho. Esse procedimento ´e feito para todos os limiares de todos os atributos e repetido para a construc¸˜ao de cada sub´arvore.

A seguir s˜ao descritos os algoritmos mais recentes da fam´ılia C4.5.

2.2.1. C4.5 Release 7

A principal caracter´ıstica do C4.5 Release 7 foi a inclus˜ao de um importante crit´erio para selec¸˜ao desse limiar: a relac¸˜ao de ganho. Este crit´erio adota o c´alculo da informac¸˜ao de corte para auxiliar a escolha do melhor limiar [Quinlan 1996]:

(4)

Corte(S, A) = − p X i=1 |Si| |S|log2 |Si| |S| (3)

onde p denota a quantidade de subconjuntos do atributo A e Sirepresenta a

quan-tidade de exemplos de cada subconjunto i de S. Para atributos cont´ınuos o valor de p ´e sempre 2, pois Quinlan [Quinlan 1996] prop˜oe uma divis˜ao bin´aria para os intervalos dos valores cont´ınuos.

A relac¸˜ao de ganho ´e obtida pela seguinte equac¸˜ao [Quinlan 1996]:

RelacaoGanho(S, A) = Ganho(S, A)

Corte(S, A) (4)

Esse balanceamento no ganho de informac¸˜ao ´e crucial para a obtenc¸˜ao de ´arvores mais consistentes com a amostra (S).

2.2.2. C4.5 Release 8

O Release 8 difere do Release 7 pela aplicac¸˜ao do princ´ıpio MDL (Minimum Description Length) [Rissanen 1983] para corrigir um mal comportamento nos crit´erios de selec¸˜ao dos melhores limiares.

O ganho de informac¸˜ao - na forma como ´e calculado no Release 7 - permite que atributos que possuem muitos limiares distintos sejam inadequadamente beneficiados em relac¸˜ao aos que possuem poucos limiares distintos. Assim, duas modificac¸˜oes s˜ao sugeri-das: primeiro, o ganho de informac¸˜ao de um teste sobre um atributo cont´ınuo ´e penalizado na medida do acr´escimo de custo determinado pela transmiss˜ao do limiar. Sendo h o n´umero de valores distintos do atributo considerado, a equac¸˜ao 1 ´e modificada para:

Ganho(S, A) = Entropia(S) − k X j=1 |Sj| |S|Entropia(Sj) − log2 h − 1 |S| (5)

Limiares com ganho negativo, ou seja, cujo ganho original n˜ao consegue superar a penalizac¸˜ao s˜ao automaticamente descartados.

A segunda modificac¸˜ao ´e selecionar o limiar de cada atributo cont´ınuo ap´os a determinac¸˜ao do m´aximo ganho de informac¸˜ao e, ent˜ao, aplicar o crit´erio da relac¸˜ao de ganho para escolher o melhor limiar geral.

Experimentalmente, percebe-se que as ´arvores geradas pelo Release 8 tendem a ser mais robustas que as geradas pelo Release 7. Embora a acur´acia de uma ´arvore de decis˜ao seja satisfat´oria em muitos casos, outras t´ecnicas podem ser utilizadas para me-lhor´a-la. Nesse contexto, a aplicac¸˜ao da l´ogica fuzzy tem apresentado bons resultados. Na pr´oxima sess˜ao s˜ao discutidas duas t´ecnicas de fuzzyficac¸˜ao de ´arvores.

(5)

3. ´

Arvores de Classificac¸˜ao Fuzzy

Autores em [[Liang 1997], [Eggermont 2005] e [Araujo 2006]] reportam melhoras sig-nificativas nas acur´acias obtidas em diversas bases de dados para algoritmos fuzzy em relac¸˜ao aos algoritmos cl´assicos (crisp).

De modo geral, uma ´arvore de classificac¸˜ao fuzzy ´e gerada a partir de uma ´arvore de classificac¸˜ao cl´assica (constru´ıda por m´etodos como ID3 e C4.5). Na pr´atica, a ´arvore cl´assica ´e adaptada para trabalhar com operac¸˜oes de conjuntos nebulosos. Os principais operadores de conjuntos nebulosos s˜ao mostrados nas tabelas 3.1 e 3.2

Tabela 3.1 - Func¸˜oes de intersec¸˜ao de conjuntos nebulosos [Cruz 1998]

Tipo µa∩b(x) Produto µa(x)µb(x) Zadeh (1965) min(µa(x), µb(x)) Yager (1980) 1 − min{1, [(1 − µa(x))w + (1 − µb(x))w] 1 w} Dubois/Prade (1980) (µa(x)∗µb(x)) max(µa(x),µb(x),w)

Tabela 3.2 - Func¸˜oes de uni˜ao de conjuntos nebulosos [Cruz 1998]

Tipo µa∪b(x)

Soma Limitada min(1, µa(x) + µb(x))

Zadeh (1965) max(µa(x), µb(x)) Yager (1980) 1 − min{1, [(µa(x))w + (µb(x))w] 1 w} Dubois/Prade (1980) (µa(x)+µb(x))−(µa(x)µb(x))−min(µa(x),µb(x),1−w) max(1−µa(x),1−µb(x),w)

A seguir s˜ao apresentadas duas t´ecnicas de fuzzyficac¸˜ao de ´arvores: FTREE (Fuzzy Tree Representation) [Eggermont 2005] e FILM (Fuzzy Inductive Learning Method) [Liang 1997].

3.1. T´ecnicas de Fuzzyficac¸˜ao de ´Arvores

Partindo de uma ´arvore cl´assica, a fuzzyficac¸˜ao ´e aplicada nos limiares de cada n´o da ´arvore atrav´es de uma func¸˜ao membership. A figura 1 mostra um exemplo de ´arvore fuzzy e sua partic¸˜ao no espac¸o de atributos.

Figure 1. Uma ´arvore de decis ˜ao fuzzy e sua partic¸ ˜ao do espac¸o de atributos (adaptado de [Liang 1997])

3.1.1. FTREE

A t´ecnica de fuzzyficac¸˜ao de ´arvores discutida nesta sec¸˜ao ´e uma proposta de representac¸˜ao de ´arvores de decis˜ao fuzzy descrita em [Eggermont 2005].

(6)

Toda ´arvore de decis˜ao pode ser mapeada em um conjunto de regras de inferˆencia, sendo a cardinalidade desse conjunto o n´umero de valores do atributo-objetivo. Considere o exemplo de ´arvore de decis˜ao exibido na figura 2. Como existem dois valores para o atributo-objetivo (Sailing e Swimming), ´e poss´ıvel construir duas regras de inferˆencia partindo dessa ´arvore. S˜ao elas:

Regra 1: IF (Temperature = Warm) ∧ (WindForce = Light) THEN class = Swim-ming

Regra 2: IF (Temperature != Warm) ∨ (Temperature = Warm ∧ WindForce != Light) THEN class = Sailing

Figure 2. Exemplo de ´arvore de decis ˜ao cl ´assica [Eggermont 2005]

O processo de fuzzyficac¸˜ao comec¸a com o c´alculo dos fatores de inclus˜ao das classes. Para realizar este c´alculo ´e necess´ario aplicar um dos operadores de uni˜ao e intersec¸˜ao da l´ogica fuzzy (tabelas 3.1 e 3.2) sobre os ´atomos das regras 1 e 2 [Eggermont 2005]. Nesta t´ecnica s˜ao utilizados os operadores de produto e soma limi-tada para intersec¸˜ao e uni˜ao, respectivamente. Assim, os fatores de inclus˜ao das classes no exemplo da figura 2 s˜ao calculados da seguinte forma:

µSwimming = µ(T emperature=W arm)∗ µ(W indF orce=Ligth)

µSailing = µ(T emperature!=W arm)+ (µ(T emperature=W arm)∗ µ(W indF orce!=Ligth))

Suponha que uma nova instˆancia I com os atributos Temperature e WindForce deva ser classificada e que os valores das func¸˜oes membership sejam µ(T emperature=W arm) =

0, 9 e µ(W indF orce=Ligth)= 0, 3 para os valores dessa instˆancia. Sendo assim, os fatores de

inclus˜ao das classes Swimming e Sailing s˜ao: µSwimming = 0, 9 ∗ 0, 3 = 0, 27

µSailing = (1 − 0, 9) + (0, 9 ∗ (1 − 0, 3)) = 0, 73

O ´ultimo passo ´e a defuzzyficac¸˜ao, ou seja, a escolha da classe da instˆancia I. Como 0,73 > 0,27, I deve ser classificado como Sailing. Adicionalmente, o resultado sugere uma confianc¸a de 73% na classificac¸˜ao.

A t´ecnica FTREE realiza a fuzzyficac¸˜ao apenas nos limiares da ´arvore cl´assica. A seguir ´e descrita uma t´ecnica que fuzzyfica tanto os limiares quanto as folhas da ´arvore.

(7)

3.1.2. FILM

O m´etodo FILM (Fuzzy Inductive Learning Method) [Liang 1997] aplica a operac¸˜ao de fuzzyficac¸˜aosobre a ´arvore cl´assica em quatro etapas:

1. Fuzzyficac¸˜ao dos limiares cl´assicos:

A fuzzyficac¸˜ao ´e feita pela aplicac¸˜ao das func¸˜oes membership sobre os limiares cl´assicos. Cada func¸˜ao membership cria uma largura de borda fuzzy associada a seu limiar correspondente. Segundo Peng [Liang 1997], a largura da borda fuzzy definida para cada limiar deve ser uma func¸˜ao do desvio padr˜ao dos exemplos de treino do respectivo atributo.

2. Reclassificac¸˜ao dos exemplos de treino:

O segundo passo ´e associar cada instˆancia de treino `as folhas correspondentes da ´arvore. Uma instˆancia pode ser associada a mais de uma folha (com diferentes fatores de inclus˜ao) da ´arvore de decis˜ao fuzzy. O c´alculo do fator de inclus˜ao de uma instˆancia a uma folha ´e feito atrav´es da aplicac¸˜ao do operador de intersec¸˜ao da l´ogica fuzzy (Tabela 3.1) sobre os ´atomos da express˜ao gerada pelo percurso feito da raiz at´e a folha da ´arvore.

´

E poss´ıvel aplicar qualquer operador sobre as express˜oes geradas. Entretanto, os operadores de intersec¸˜ao e uni˜ao sugeridos nessa t´ecnica s˜ao as func¸˜oes de Yager definidas nas tabelas 3.1 e 3.2.

3. Fuzzyficac¸˜ao das folhas:

Ap´os a obtenc¸˜ao de todas as associac¸˜oes dos exemplos de treino `as folhas da ´arvore, ´e necess´ario calcular os fatores de inclus˜ao de cada valor do atributo-objetivo nessas folhas. Para efetuar esse c´alculo, ´e preciso aplicar o operador de uni˜ao da l´ogica fuzzy sobre todas as instˆancias de uma mesma classe da folha. Por exemplo, considere uma folha Si que possui instˆancias associadas, cujas classes

poss´ıveis s˜ao A e B. Sejam Ca e Cb os conjuntos das instˆancias que podem ser

classificadas como A e B em Si, respectivamente. Os fatores de inclus˜ao das

classes da folha Si s˜ao determinados da seguinte forma [Liang 1997]:

µA(Si) = µSi(x1, y1) ∪ µSi(x2, y2) ∪ µSi(x3, y3) ∪ ... ∪ µSi(xn, yn)

∀(xk, yk) ∈ Cae k ∈ {1, 2, 3, ..., n}

µB(Si) = µSi(x1, y1) ∪ µSi(x2, y2) ∪ µSi(x3, y3) ∪ ... ∪ µSi(xn, yn)

∀(xk, yk) ∈ Cb e k ∈ {1, 2, 3, ..., n}

A figura 3 mostra um exemplo de ´arvore de classificac¸˜ao obtida nesse processo.

Figure 3. Uma ´arvore de decis ˜ao fuzzy gerada pelo FILM [Liang 1997]

(8)

4. Predic¸˜ao de novas instˆancias:

O processo de predic¸˜ao ´e feito em duas fases: mapeamento da instˆancia nas folhas fuzzye defuzzyficac¸˜ao. O mapeamento da nova instˆancia nas folhas fuzzy requer o mapeamento da instˆancia no espac¸o de atributos fuzzy da ´arvore. Ou seja, os va-lores dos atributos da instˆancia s˜ao utilizados para determinar, atrav´es das func¸˜oes membership de cada n´o, o grau de associac¸˜ao (fator de inclus˜ao) da instˆancia a uma determinada folha da ´arvore. Ap´os a obtenc¸˜ao das associac¸˜oes das folhas `a instˆancia, ´e poss´ıvel calcular a associac¸˜ao da instˆancia a uma classe em cada folha. Isto ´e feito multiplicando-se o fator de inclus˜ao do mapeamento da instˆancia na folha pelos fatores de inclus˜ao da classe na folha. Por exemplo, suponha que as associac¸˜oes de um caso (x, y) com as folhas da figura 3 sejam 0,521 para a folha ”a”, 0.479 para a folha ”b” e 0 para a folha ”c”. Assim, as associac¸˜oes da instˆancia (x, y) `as classes A e B em cada folha s˜ao:

Leaf a: µA(x, y) = 0, 521 ∗ 1, 0 = 0, 521; µB(x, y) = 0, 521 ∗ 0, 2 = 0, 104

Leaf b: µA(x, y) = 0, 479 ∗ 0, 4 = 0, 192; µB(x, y) = 0, 479 ∗ 0, 9 = 0, 431

Paradoxalmente, os valores obtidos para as folhas ”a” e ”b” sugerem classificac¸˜oes distintas. Para resolver esse impasse ´e preciso aplicar algum mecanismo de defuzzyficac¸˜ao. O procedimento utilizado no m´etodo FILM ´e o k-sum. Neste procedimento s˜ao escolhidos os maiores k valores de associac¸˜ao calculados para as classes; os valores escolhidos s˜ao somados para cada classe. A classe com a maior soma ´e ent˜ao selecionada para classificar a nova instˆancia.

No exemplo anterior, diferentes valores para k apresentam a mesma conclus˜ao. Ou seja, a instˆancia (x, y) deve ser classificada como A:

K = 1 : A; (µA = 0, 521)

K = 2 : A; (µA = 0, 521 > µB = 0, 431)

K = 3 : A; (µA = 0, 521 + 0, 192 = 0, 713 > µB = 0, 431)

K = 4 : A; (µA = 0, 521 + 0, 192 = 0, 713 > µB = 0, 431 + 0, 104 = 0, 535)

Diversos estudos vˆem sendo realizados atrav´es da aplicac¸˜ao de t´ecnicas de fuzzyficac¸˜ao nas ´arvores de classificac¸˜ao em Minerac¸˜ao de Dados, por´em, a maioria das ferramen-tas disponibilizadas n˜ao implementam esferramen-tas t´ecnicas. Neste contexto, a sec¸˜ao seguinte descreve uma ferramenta que incorpora caracter´ısticas fuzzy nas ´arvores de classificac¸˜ao.

4. Implementac¸˜ao

Esta sec¸˜ao apresenta o Explorer Fuzzy Tree (EFT)1, uma ferramenta de Minerac¸˜ao de Dados. O EFT fornece ao usu´ario a possibilidade de fazer experimentos com algoritmos de classificac¸˜ao baseados em ´arvores de decis˜ao fuzzy sobre qualquer base de dados com atributos cont´ınuos. O objetivo ´e possibilitar experimentac¸˜ao de parˆametros que permi-tam aumentar o poder preditivo da ´arvore cl´assica atrav´es da sua fuzzyficac¸˜ao. A seguir, s˜ao descritas as principais caracter´ısticas da ferramenta: arquitetura, algoritmos de apren-dizado implementados e interface gr´afica.

4.1. Arquitetura do Explorer Fuzzy Tree

O Explorer Fuzzy Tree ´e uma ferramenta desenvolvida na linguagem Java e modelada sobre a arquitetura em 3 camadas:

(9)

• Camada de dados (Data Layer): ´e respons´avel pela manipulac¸˜ao de arquivos texto que cont´em as instˆancias e as descric¸˜oes dos atributos das bases de dados a serem processadas.

• Camada de Neg´ocio (Business Layer): Manipula as informac¸˜oes fornecidas pela camada de dados, efetua e dispara ac¸˜oes e fornece as informac¸˜oes a serem exibidas na camada de interface. ´E nesta camada que s˜ao implementados os algoritmos de aprendizado indutivo e as t´ecnicas de experimentac¸˜ao do EFT.

• Camada de Interface (Interface Layer): permite a realizac¸˜ao de experimentos e a visualizac¸˜ao dos resultados de forma pr´atica e intuitiva.

4.2. Algoritmos Desenvolvidos

Neste trabalho, foram aplicadas duas t´ecnicas de fuzzyficac¸˜ao a dois algoritmos de classificac¸˜ao com ´arvores, resultando na implementac¸˜ao de 6 algoritmos de aprendizado indutivo baseados em ´arvores de decis˜ao (sendo 2 algoritmos cl´assicos e 4 algorit-mos fuzzy), todos sendo desenvolvidos utilizando a linguagem Java. Os algoritalgorit-mos de classificac¸˜ao com ´arvores cl´assicas implementados foram baseados no C4.5 Release 7 e no C4.5 Release 8 (ver sec¸˜ao 2) no qual originou os algoritmos J47 e J48 respectivamente. As t´ecnicas de fuzzyficac¸˜ao aplicadas (FILM e FTREE) deram origem respectivamente aos dois algoritmos FILMJ47 e FILMJ48 e aos dois algoritmos FJ47 e FJ48.

4.3. Interface Gr´afica do Explorer Fuzzy Tree

O Explorer Fuzzy Tree oferece uma interface gr´afica para facilitar a realizac¸˜ao de ex-perimentos sobre os algoritmos desenvolvidos. A figura 4 mostra a tela principal da fer-ramenta.

(10)

5. Experimentos Realizados

Com o intuito de avaliar o comportamento dos algoritmos de ´arvores de classificac¸˜ao fuzzy implementados, estes foram aplicados a quatro conjuntos de dados sob validac¸˜ao cruzada (procedimento estat´ıstico para an´alise de experimentos em conjuntos).

5.1. Conjuntos de Dados

Os conjuntos de dados avaliados foram obtidos de fontes distintas. Suas caracter´ısticas est˜ao brevemente descritas abaixo. Outras informac¸˜oes s˜ao agrupadas na Tabela 5.1.

1. Iris [R.A. Fisher 1988]: utilizada para ilustrar an´alise discriminante. O conjunto cont´em 3 tipos de flores, cada um com 50 instˆancias. As trˆes classes do atributo objetivo s˜ao: Iris-setosa, Iris-versicolor e Iris-virginica.

2. Segment-challenge [Group 1990a]: obtida randomicamente de uma base de dados com 7 imagens de outdoors. Classes do atributo objetivo: brickface, sky, foliage, cement, window, pathe grass.

3. Segment-test [Group 1990b]: ´e um subconjunto da base Segment-challenge. 4. SPAMBASE [Hopkins et al. 2001]: ´e uma base codificada de e-mails, constru´ıda

por pesquisadores da HP. ´E formada por 4601 e-mails pessoais de um dos pesquisadores (George Forman). Os e-mails s˜ao codificados em 57 atributos de entrada cont´ınuos e um atributo objetivo bin´ario (1 para indicar e-mail spam e 0 para indicar e-mail n˜ao-spam).

Tabela 5.1 - Informac¸˜oes sobre os conjuntos de dados

Conjuntos de Dados Dom´ınio Classes Atributos de entrada Qtde. de instˆancias

SPAMBASE Comercial 2 57 4601

Segment-challenge Comercial 7 19 1500

Segment-test Comercial 7 19 810

Iris Biol´ogico 3 4 150

5.2. Procedimentos Experimentais

Os experimentos foram realizados com os diferentes algoritmos de classificac¸˜ao imple-mentados neste trabalho: J47, J48, FILMJ47, FILMJ48, FJ47 e FJ48. Cada algoritmo de ´arvore fuzzy foi comparado ao algoritmo de ´arvore cl´assica sobre o qual foi baseado. Assim, as seguintes comparac¸˜oes foram feitas: J47 x FILMJ47, J48 x FILMJ48, J47 x FJ47 e J48 x FJ48.

O objetivo dos experimentos ´e determinar para quais parˆametros a acur´acia da ´arvore cl´assica ´e superada pela acur´acia da ´arvore fuzzy correspondente. Mais precisa-mente, deseja-se determinar os valores mais adequados para o expoente de Yager (w) e largura da borda fuzzy (d), de modo a maximizar o poder de predic¸˜ao da ´arvore.

Para a determinac¸˜ao dos parˆametros, foi utilizada uma validac¸˜ao cruzada com 10 folds. Cada fold recebeu aleatoriamente 10% da totalidade dos dados. Para cada configurac¸˜ao da ´arvore, s˜ao separados 1 fold para o conjunto de treinamento e os outros 9 para o conjunto de validac¸˜ao, at´e todos os 10 folds serem selecionados para o conjunto de treinamento. A acur´acia ´e ent˜ao computada pela m´edia aritm´etica das acur´acias dos folds.

(11)

Dois parˆametros foram testados para os algoritmos implementados com o m´etodo FILM: o expoente de Yager (w) e a largura da borda fuzzy (d). Para os algoritmos imple-mentados com o m´etodo FTREE, foi testada apenas a largura da borda fuzzy. A largura da borda fuzzy foi determinada pelo desvio padr˜ao dos exemplos de treino. Foram utilizadas larguras entre 10% e 90% do desvio padr˜ao.

5.3. Resultados e Discuss˜oes

As tabelas 5.2, 5.3, 5.4 e 5.5 mostram a acur´acia preditiva de cada m´etodo aplicado aos conjuntos de dados descritos na sec¸˜ao 5.1. Os valores do expoente de Yager (w) e das frac¸˜oes dos desvios (d) exibidos maximizam o poder de predic¸˜ao da ´arvore fuzzy em relac¸˜ao `a ´arvore cl´assica correspondente.

Tabela 5.2 - J47 x FILMJ47

Conjuntos de Dados acur´acia J47 acur´acia FILMJ47 w d

SPAMBASE 0,848 0,853 /3/4/5/ 0,1/0,3/0,5

Segment-challenge 0,860 0,874 /5/6/7/ 0,1/0,3

Segment-test 0,818 0,847 /4/5/6/ 0,1/0,3

Iris 0,825 0,869 /3/4/ 0,3/0,5/0,7

Tabela 5.3 - J48 x FILMJ48

Conjuntos de Dados acur´acia J48 acur´acia FILMJ48 w d

SPAMBASE 0,874 0,857 /3/4/7/ 0,1/0,3

Segment-challenge 0,866 0,874 /5/6/7/ 0,1/0,3

Segment-test 0,812 0,835 /4/5/ 0,1/0,3

Iris 0,846 0,907 /2/3/7/ 0,5/0,7/0,9

Tabela 5.4 - J47 x FJ47

Conjuntos de Dados acur´acia J47 acur´acia FJ47 d

SPAMBASE 0,849 0,614 0,1/0,5

Segment-challenge 0,865 0,838 0,1/0,3

Segment-test 0,819 0,790 0,1/0,3

Iris 0,801 0,803 0,1/0,3

Tabela 5.5 - J48 x FJ48

Conjuntos de Dados acur´acia J48 acur´acia FJ48 d

SPAMBASE 0,873 0,645 0,1/0,3

Segment-challenge 0,866 0,841 0,1/0,3

Segment-test 0,828 0,798 0,1/0,3

Iris 0,846 0,837 0,1/0,7

Os dados das tabelas 5.2 e 5.3 mostram o aumento da acur´acia preditiva das ´arvores configuradas pelos algoritmos implementados com o m´etodo FILM, sobretudo em relac¸˜ao `as bases menores. O algoritmo FILMJ47 superou o algoritmo J47 para todas as bases. J´a o FILMJ48 n˜ao conseguiu superar o J48 ao processar o SPAMBASE. Embora baseado em um algoritmo inferior, as acur´acias obtidas no FILMJ47 foram semelhantes `as obtidas no FILMJ48; para a base segment-test, a acur´acia do FILMJ47 chegou a superar `a do FILMJ48.

(12)

Os resultados gerados para a t´ecnica FTREE s˜ao mostrados nas tabelas 5.4 e 5.5. Como pode ser observado, os algoritmos FJ47 e FJ48 tiveram desempenho inferior aos algoritmos J47 e J48, respectivamente e para quase todas as bases testadas. Isso ocorre devido `a pouca flexibilidade oferecida pelas func¸˜oes utilizadas para os c´alculos de uni˜ao e intersec¸˜ao de conjuntos nebulosos sugeridas nessa t´ecnica (sec¸˜ao 3).

Al´em disso, ´e poss´ıvel observar que em ambas as t´ecnicas de fuzzyficac¸˜ao, as diferenc¸as entre as acur´acias fuzzy e cl´assica tendem a aumentar para bases menores e diminuir para bases maiores. A reduc¸˜ao do poder de predic¸˜ao em ´arvores geradas com muitos dados tem relac¸˜ao direta com as equac¸˜oes utilizadas para os c´alculos de uni˜ao e intersec¸˜ao de conjuntos nebulosos nos m´etodos apresentados. Como os valores obtidos das func¸˜oes membership s˜ao afetados pela flexibilidade dessas equac¸˜oes, a classificac¸˜ao correta de novas instˆancias pode ser comprometida pela escolha de uma equac¸˜ao pouco flex´ıvel. Foi observado que, sob treinamento excessivo, os fatores de inclus˜ao calculados nos algoritmos tendem a valores semelhantes para todas as classes; este comportamento afeta drasticamente o poder de predic¸˜ao da ´arvore fuzzy, uma vez que reduz a capacidade do algoritmo em diferenciar as classes pelos fatores de inclus˜ao.

As equac¸˜oes de Yager adotadas no m´etodo FILM oferecem um parˆametro de con-trole (w) que flexibiliza o c´alculo dos fatores de inclus˜ao das classes em cada folha fuzzy. Entretanto, para bases grandes, as melhorias evidenciadas para o m´etodo s˜ao quase imper-cept´ıveis. Foi observado que este m´etodo n˜ao se comportou bem ao ser testado em bases de dados maiores, embora este comportamento n˜ao tenha sido reportado [Liang 1997]. No m´etodo FTREE, as conseq¨uˆencias da escolha de equac¸˜oes pouco flex´ıveis para os c´alculos de uni˜ao e intersec¸˜ao em conjuntos nebulosos s˜ao ainda mais degradantes; ´e poss´ıvel observar que o tamanho das express˜oes booleanas geradas no processo de fuzzyficac¸˜ao da ´arvore cl´assica ´e proporcional `a sua altura. Assim, quanto maior o conjunto de treino, maiores ser˜ao as express˜oes booleanas geradas. Consequentemente, maior ser´a a tendˆencia dos fatores de inclus˜ao de todas as classes serem semelhantes e pr´oximos de

1

n (sendo n o n´umero de valores do atributo-objetivo).

Sendo assim, conclui-se que o m´etodo de fuzzyficac¸˜ao para ´arvores de classificac¸˜ao FILM, embora mais custoso do ponto de vista computacional, ´e significati-vamente melhor (em termos de acur´acia) que o m´etodo FTREE. Entretanto, o FILM n˜ao ´e livre de problemas. A principal desvantagem deste m´etodo ´e a dificuldade de encontrar os valores ´otimos para o expoente de Yager e os valores adequados para a largura da borda fuzzya serem mapeados nas func¸˜oes membership de cada limiar da ´arvore cl´assica.

6. Conclus˜ao

A extrac¸˜ao de informac¸˜oes novas e potencialmente ´uteis em bases de dados vem sendo aplicada a um n´umero cada vez maior de problemas. A Minerac¸˜ao de Dados fornece diversas t´ecnicas que permitem a obtenc¸˜ao dessas informac¸˜oes.

Um problema recorrente em Minerac¸˜ao de Dados ´e o de classificac¸˜ao. Prever se um novo email recebido ´e spam ou se um chamado feito a um ´org˜ao que presta servic¸os de atendimento m´ovel de emergˆencia ´e falso pode ser de grande utilidade para a sociedade. Assim, muitos pesquisadores vˆem criando estrat´egias e desenvolvendo algoritmos para maximizar o poder preditivo dos classificadores. Um classificador pode ser constru´ıdo por meio de uma ´arvore de decis˜ao e ter seu poder preditivo elevado pela l´ogica fuzzy.

(13)

Embora a aplicac¸˜ao da l´ogica nebulosa `as ´arvores de classificac¸˜ao, em muitos casos, tenha apresentado bons resultados em termos de acur´acia, as ferramentas de Minerac¸˜ao de Dados mais utilizadas n˜ao implementam t´ecnicas de fuzzyficac¸˜ao de ´arvores.

Este trabalho investigou os principais algoritmos para construc¸˜ao de ´arvores de de-cis˜ao e duas t´ecnicas para fuzzyficac¸˜ao de ´arvores: FTREE e FILM. A partir desse estudo, foi desenvolvida a ferramenta Explorer Fuzzy Tree, que permite a experimentac¸˜ao das t´ecnicas implementadas sobre bases de dados com atributos cont´ınuos. Adicionalmente, foram testadas quatro bases de dados de dom´ınio p´ublico sobre os algoritmos implemen-tados nesta ferramenta. Os resulimplemen-tados obtidos sugerem aumento da acur´acia preditiva para o m´etodo FILM e reduc¸˜ao da acur´acia preditiva para o m´etodo FTREE em se tratando de bases de dados pequenas.

References

Araujo, A. V. (2006). Arvores de decis˜ao fuzzy na minerac¸˜ao de imagens do sistema´ footscanage. Master’s thesis, UFPA, Paran´a.

Cruz, A. (1998). L´ogica nebulosa. nce dcc-im ufrj.

http://equipe.nce.ufrj.br/adriano/fuzzy/bibliogr/transp.ps.gz. Ultimo acesso em´ 27 de outubro de 2007.

Eggermont, J. (2005). Data Mining Using Genetic Programming - Classification and Symbolic Regression. PhD thesis, University of Leiden, Netherlands.

Fayyad, U. and Smyth, P. (1996a). Advances in knowledge discovery and data mining. AAAI Press, pages 1–30.

Fayyad, U. and Smyth, P. (1996b). From data mining to knowledge discovery: An overview. Communications of the ACM, pages 24–26.

Group, V. (1990a). Segment-challenge. http://www.cs.waikato.ac.nz/ml/weka/. ´Ultimo acesso em 14 de novembro de 2007.

Group, V. (1990b). Segment-test. http://www.cs.waikato.ac.nz/ml/weka/. ´Ultimo acesso em 14 de novembro de 2007.

Guarda, A. (2000). Inteligˆencia Artificial em Controle de Automac¸˜ao. Editora Edgard Bl¨ucher.

Hopkins, M., Reeber, E., Forman, G., and Suermondt, J. (2001). Spambase. http://www.ics.uci.edu/ mlearn/databases/spambase/. ´Ultimo acesso em 27 de outubro de 2007.

Liang, T.-P. (1997). Film: a fuzzy inductive learning method for automated knowledge acquisition. Communications of the ACM, pages 61–73.

Lyman, P. (2003). How much information? http://www.sims.berkeley.edu/how-much-info-2003. ´Ultimo acesso em 14 de novembro de 2007.

Quinlan, J. R. (1993). C4.5: Programs For Machine Learning. Morgan Kalfmann. Quinlan, J. R. (1996). Improved use of continuous in c4.5. Journal of Artificial Inteligence

(14)

R.A. Fisher, M. M. (1988). Iris. http://www.cs.waikato.ac.nz/ml/weka/. ´Ultimo acesso em 14 de novembro de 2007.

Rissanen, J. (1983). A universal prior for integers and estimation by minimum description length. Annals of statistic, 11(2):416–431.

Referências

Documentos relacionados

The screening and diagnosis of diabetic nephropathy have been based on the measurement of urinary albumin excretion rate (UAER) in a timed 24-h or overnight urine collection;

Este artigo está dividido em três partes: na primeira parte descrevo de forma sumária sobre a importância do museu como instrumento para construção do conhecimento, destaco

91 Figura 47: Corrente elétrica na armadura do motor capturada a partir da validação experimental do modelo matemático para dados experimentais da roda de tração

Os ativos não circulantes classificados como disponível para venda são mensurados pelo menor montante entre o seu custo contábil e o seu valor justo, líquido das despesas com a

Por último, temos o vídeo que está sendo exibido dentro do celular, que é segurado e comentado por alguém, e compartilhado e comentado no perfil de BolsoWoman no Twitter. No

Materializando o Ciberespaço um novo ambiente operacional de carácter potencialmente assimétrico, onde se torna necessário desenvolver e mobilizar novas competências, este

Guarnizo e Avendano (2014) desenvolveram uma ferramenta estudantil para a prática de lógica fuzzy, focada no controle fuzzy, para a aplicação em um sistema de nível de

Este artigo aborda o processo de elaboração de uma ferramenta case com funcionamento via web para a tomada de decisão em ambiente fuzzy a partir da avaliação da satisfação