111
Carlos Manuel Silva Pinto Algoritmos Incrementais para Aprendizagem Bayesiana Departamento de Ciˆ encia de Computadores Faculdade de Economia da Universidade do Porto 2005

Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

  • Upload
    vuhuong

  • View
    217

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

Carlos Manuel Silva Pinto

Algoritmos Incrementais paraAprendizagem Bayesiana

Departamento de Ciencia de Computadores

Faculdade de Economia da Universidade do Porto

2005

Page 2: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

Carlos Manuel Silva Pinto

Algoritmos Incrementais paraAprendizagem Bayesiana

Tese submetida a Faculdade de Economia da

Universidade do Porto para obtencao do grau de Mestre

em Inteligencia Artificial e computacao

Dissertacao realizada sob supervisao do

Professor Joao Gama, da Faculdade de Economia do Porto

Departamento de Ciencia de Computadores

Faculdade de Economia da Universidade do Porto

2005

Page 3: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

iii

Page 4: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

For every complex problem there is a simple and wrong solution.

Para todos os problemas complexos existe uma solucao simples e errada.

Albert Einstein

iv

Page 5: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

Agradecimentos

Esta e sempre a parte mais difıcil de qualquer tese, pois felizmente vivemos num mundo

de entre ajuda onde todos gostam muito de ajudar. Agradeco a todos esse espırito e a

disponibilidade que nos faz ter esperanca num mundo com menos espinhos.

No entanto gostaria de deixar um tributo muito especial a duas pessoas, pois esta tese

reflecte o seu empenho para me proporcionar as condicoes para que eu a acabasse.

Em primeiro lugar ao meu orientador pela sua autoridade, linearidade e metodologia

delineadas no desenvolvimento desta tese mas acima de tudo agradeco-lhe ao Professor

Joao Gama (meu orientador) pela simplicidade e disponibilidade que mostrou como

pessoa. O meu outro agradecimento segue para o Professor Manuel Afonso Dias pela

amizade demonstrada que tanta paciencia teve, me dispensou tantas vezes do trabalho

e me ajudou tambem a delinear o caminho. Acima de tudo agradeco aos dois pelas

excelentes pessoas que sao, pois sem eles ja me teria ido embora e estaria provavelmente

a esta hora nas ilhas Komodo na praia a beber um refresco de coco e a ver um dragao

passar.

Agradeco tambem a Sonia que tantas noites sem dormir passou por causa de mim. A

minha mae e pai, que nao me ajudaram durante a tese mas terem-me criado ja foi

difıcil e por ultimo a Joana que me motivou para tirar o mestrado.

v

Page 6: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

Abstract

A desirable property of learning algorithms is the ability of incorporating new data

in an incremental way. Incremental algorithms have received attention on the last

few years. Particulary Bayesian networks, this is due to the hardness of the task.

In Bayesian networks one example can change the whole structure of the Bayesian

network. In this theses we focus on incremental induction of tree augmented naive

Bayes (TAN) algorithm. A incremental version of TAN saves computing time, is more

suite to data mining and concept drift. But, as usual in Bayesian learning TAN is

restricted to discrete attributes. Complementary to the incremental TAN, we propose

an incremental discretization algorithm, necessary to evaluate TAN in domains with

continuous attribute. Discretization is a fundamental pre-processing step for some well-

known algorithms, the topic of incremental discretization has received few attention

from the community.

This theses has two major contributions, the benefit of both proposals is incremental

learning, one for TAN and the other for discretization. We describe the benefits of the

two proposals separately, but we think one great step was to reunite the two and test

them together. We present and test a algorithm that rebuilds the network structure of

tree augmented naive Bayes (TAN) based on the weighted sum of vectors containing

the mutual information. We also present a new discretization method, this works in

two layers. This two-stage architecture is very flexible. It can be used as supervised

or unsupervised. For the second layer any base discretization method can be used:

vi

Page 7: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

equal width, equal frequency, recursive entropy discretization, chi-merge, etc. The most

relevant aspect is that the boundaries of the intervals of the second layer can change

when new data is available. We tested experimentally the incremental approach to

discretization with batch and incremental learners.

The experimental evaluation of incremental TAN shows a performance similar to

the batch version. Similar remarks apply to incremental discretization. This is a

relevant aspect, because few works in machine learning address the fundamental aspect

of incremental discretization. We believe that with Incremental discretization, the

evaluation of the incremental algorithms can become more realistic and accurate. We

evaluated two versions of incremental discretization: supervised and unsupervised. We

have seen that this feature can improve accuracy for the incremental learners and that

the preview of future algorithm performance can be more precise. This method of

discretization has another advantages, like, can be used with large data set’s or can be

used in dynamic environments with concept drift, areas where a batch discretization

can be difficult or is not adequate.

vii

Page 8: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

Resumo

Uma das propriedades desejadas nos algoritmos de aprendizagem automatica e a

capacidade de aprender incrementalmente. Este tipo de algoritmos tem recebido

atencao por parte da comunidade cientifica nos ultimos anos. As redes Bayesianas,

impoem uma dificuldade acrescida a esta tarefa, pois um exemplo pode alterar

toda a sua estrutura. Neste tese foca-se a incrementalidade para o algoritmo tree

augmented naive Bayes (TAN). A versao incremental deste algoritmo poupa recursos,

tempo e e mais adequada para areas como o data mining ou ambientes dinamicos.

Mas como e usual nas redes Bayesianas, este algoritmo esta limitado a lidar com

atributos discretos. Deste modo tambem faz parte desta tese o estudo de um metodo

incremental. Uma vez que estamos a lidar com uma rede Bayesiana incremental o mais

natural e a discretizacao tambem o ser. Deste modo e possıvel avaliar o algoritmo

incremental com conjuntos de dados que contem atributos contınuos. A discretizacao

e um pre-processamento fundamental para alguns algoritmos bem conhecidos, mas a

discretizacao incremental tem recebido muito pouca atencao por parte da comunidade

cientıfica.

Esta tese apresenta duas grandes contribuicoes para a area de aprendizagem incre-

mental, a primeira e um TAN incremental, a segunda um metodo de discretizacao

incremental. As propostas sao descritas na tese em capıtulos diferentes, mas uma das

grandes vantagens consiste em reuni-las. Apresenta-se e testa-se a versao incremental

do TAN, esta reconstroi a estrutura da rede baseada na soma pesada das informacoes

viii

Page 9: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

mutuas. Apresenta-se ainda o metodo de discretizacao incremental. O metodo e

composto por duas camada, cada uma das camadas contem uma discretizacao. Esta

arquitectura e bastante flexıvel. O metodo pode ser aplicado de modo supervisado

ou nao supervisado, dependendo da opcao tomada para a segunda camada. Na

segunda camada e possıvel aplicar a maior parte dos metodos de discretizacao. O

aspecto mais relevante deste metodo e que os limites dos intervalos da segunda

camada podem mudar quando o algoritmo tem acesso a mais conjuntos de exemplos.

Testou-se experimentalmente a discretizacao incremental com metodos supervisados

e nao supervisados. O metodo foi ainda testado com algoritmos incrementais e nao

incrementais.

A avaliacao experimental da versao incremental do TAN indica que o seu desempenho

e similar ao do TAN nao incremental. O mesmo resultado se aplica ao teste da

discretizacao incremental. A discretizacao incremental apesar de ter pouca atencao

por parte da comunidade cientifica, e fundamental para a avaliacao de algoritmos

incrementais. A avaliacao de algoritmos incrementais que usem conjuntos de dados

com atributos contınuos torna-se mais precisa e realista. Mas o metodo tem outras

vantagens, este pode ser aplicado a grandes conjuntos de dados, onde um metodo de

discretizacao nao incremental tem dificuldades em ser aplicado. Pode ainda ser usado

em ambientes dinamicos, area em que a discretizacao nao incremental e inadequada.

ix

Page 10: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

Notacoes usadas durante a tese

N - numero de exemplos observado

n - numero de atributos do conjunto de dados

Xj - atributo j do conjunto de dados

xj - instancia i do conjunto de dados

D - conjunto de dados

C - variavel classe do conjunto de dados

c - instancia da variavel da classe do conjunto de dados

I(Xj, Xi) - informacao mutua entre os atributos Xj e Xi

I(Xj, Xi; C) - informacao mutua entre os atributos Xj e Xi dada a classe

Vj - numero de possıveis valores do atributo

VC - numero de possıveis valores da classe

ID - vector com a informacao mutua entre todos os pares de atributos do conjunto de

dados

′ - significa o conjunto de dados que se pretende analisar, por exemplo, se N representa

numero de exemplos observado entao N’ representa o numero de exemplos com

que o algoritmo vai reavaliar o modelo.

x

Page 11: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

t - numero de intervalos

xi

Page 12: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

Conteudo

Abstract vi

Resumo viii

Notacoes usadas durante a tese x

Lista de Tabelas xvi

Lista de Figuras xviii

1 Introducao 2

1.1 Inteligencia Artificial, Aprendizagem automatica . . . . . . . 3

1.2 Classificacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

1.3 Motivacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

1.4 Contribuicoes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.5 Organizacao da tese . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2 Classificacao e aprendizagem no mundo real 10

xii

Page 13: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

2.1 Aprendizagem incremental . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.1.1 Algoritmos incrementais: definicao e objectivos . . . . . . . . . 11

2.1.2 Vantagens e desvantagens dos algoritmos incrementais . . . . . 13

2.2 Classificadores Bayesianos . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.2.1 Naive Bayes, o mais simples dos classificadores Bayesianos . . . 14

2.2.2 TAN: extensao ao naive Bayes . . . . . . . . . . . . . . . . . . . 16

2.2.2.1 Algoritmo de Chow and Liu . . . . . . . . . . . . . . . 18

2.2.3 Construcao da arvore de dependencias . . . . . . . . . . . . . . 20

2.2.4 Variantes do TAN . . . . . . . . . . . . . . . . . . . . . . . . . 21

2.2.5 Algoritmos incrementais para o TAN . . . . . . . . . . . . . . . 24

2.2.6 TAN-ACO de Roure . . . . . . . . . . . . . . . . . . . . . . . . 24

2.3 Discretizacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

2.3.1 Tipos de atributos . . . . . . . . . . . . . . . . . . . . . . . . . 26

2.3.2 Importancia da discretizacao . . . . . . . . . . . . . . . . . . . . 28

2.3.3 Topologia dos algoritmos de discretizacao . . . . . . . . . . . . . 29

2.3.4 Efectividade da discretizacao . . . . . . . . . . . . . . . . . . . . 31

2.3.5 A discretizacao e normalmente o metodo mais utilizado com o

TAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

2.3.6 Revisao de alguns metodos de discretizacao . . . . . . . . . . . 36

2.4 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

3 Estudo de um classificador TAN Incremental 42

xiii

Page 14: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

3.1 Descricao de um TAN incremental (TANi) . . . . . . . . . . . . . . . . 43

3.1.1 Actualizacao das particoes da estimativas das probabilidades . . 45

3.1.2 Actualizar a arvore de dependencias . . . . . . . . . . . . . . . . 46

3.1.3 Consideracoes sobre o algoritmo proposto . . . . . . . . . . . . . 48

3.2 Avaliacao e resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

3.2.1 Estudo das arvores geradas pelo TANi . . . . . . . . . . . . . . 54

3.2.2 Analise do desempenho do TANi . . . . . . . . . . . . . . . . . 56

3.2.3 Comparando a evolucao do TANi, TAN . . . . . . . . . . . . . 60

3.2.4 Analise da sensibilidade do algoritmo ao numero de instancias

apresentadas por pasta . . . . . . . . . . . . . . . . . . . . . . . 62

4 Abordagem incremental a discretizacao 66

4.1 Motivacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

4.2 Pre-processamento incremental de Discretizacao (PiD) . . . . . . . . . 71

4.3 Resultados experimentais . . . . . . . . . . . . . . . . . . . . . . . . . . 78

5 Conclusoes 86

5.1 Trabalho futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

Referencias 89

xiv

Page 15: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

Lista de Tabelas

3.1 Crescimento das estatısticas de primeira e segunda ordem . . . . . . . . 46

3.2 Taxa de acertos dos algoritmos naive Bayes, rede Bayesiana, arvore de classificacao,

TANi e TAN-ACO para trinta conjuntos de dados . . . . . . . . . . . . . . . . 57

3.3 Descricao da separacao do conjunto de dados em teste e treino para os

testes da figura 3.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

3.4 Descricao dos conjuntos de dados para o teste da sensibilidade incremental 62

3.5 Descricao da separacao do conjunto de dados em teste e treino para os

testes da figura 3.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

4.1 Discretizacao do preco de um computador ao longo do tempo . . . . . . 70

4.2 Descricao da discretizacao alcancada com o PiD (supervisado e nao

supervisado) para o conjunto de dados Iris . . . . . . . . . . . . . . . . 77

4.3 Descricao dos dados usados no teste . . . . . . . . . . . . . . . . . . . . 80

4.4 Resultados experimentais do TAN e TANi com o PiD, na sua versao

supervisada e nao supervisada comparada com alguns algoritmos do

WEKA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

xv

Page 16: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

4.5 Resultados xperimentais para o PiD com diversos tamanhos de pastas

comparada com a sua discretizacao inicial e com alguns algoritmos do

WEKA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

xvi

Page 17: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

Lista de Figuras

2.1 O modelo de dependencias para o naive Bayes. . . . . . . . . . . . . . . 15

2.2 O modelo de dependencias de um TAN como descrito por Friedman. . . 16

2.3 Arvore de dependencias encontrada pelo algoritmo de Chow and Liu. . 18

2.4 Fases da construcao da arvore que maximiza a informacao mutua. . . . 20

2.5 Processo de discretizacao. . . . . . . . . . . . . . . . . . . . . . . . . . 34

2.6 Processo de discretizacao hierarquico do topo para baixo. Discretizacao

de um atributo continuo com valores entre 0 e 100. Na figura pode-se

visualizar a arvore formada no decorrer do metodo. . . . . . . . . . . . 35

3.1 Esquema do TAN (a) e do TANi (b) . . . . . . . . . . . . . . . . . . . . 43

3.2 Esquema da validacao cruzada (com dez pastas). . . . . . . . . . . . . . 51

3.3 Esquema da segunda fase da validacao cruzada. . . . . . . . . . . . . . 52

3.4 Resultados da diferenca ente as ligacoes na rede encontrada pelo TAN

da encontrada pelo TANi. No eixo horizontal tem-se o numero do passo

( que dividindo o numero de exemplos do conjunto de dados pelo numero

do passo obtemos o numero de exemplos analisados) e no eixo vertical

tem-se a diferenca entre as arvores (em percentagem). . . . . . . . . . . 53

xvii

Page 18: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

3.5 Esquema da segunda fase das validacao cruzada para os algoritmos

incrementais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

3.6 Percentagem de acertos ao longo do treino do TAN e TANi com varios

conjuntos de dados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

3.7 Evolucao da taxa de acerto do TANi quando treinado com diversos

tamanhos de pastas para os conjuntos de dados ’Chess’ e ’Splice’ . . . . 64

4.1 Processo de discretizacao em modo nao incremental . . . . . . . . . . . 68

4.2 Processo de discretizacao em modo incremental . . . . . . . . . . . . . 69

4.3 Processo de discretizacao nao supervisionado . . . . . . . . . . . . . . . 72

xviii

Page 19: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

1

Dedico esta tese para os meus pais que tiveram muito trabalho comigo e

continuam a ter e ainda para todos os que acreditaram que este momento

era possıvel e para alguns que ainda nao acreditam :-)

Page 20: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

Capıtulo 1

Introducao

Durante os anos noventa, as redes Bayesianas, tambem denominadas por redes

probabilısticas, atraıram muita atencao, nao so na investigacao cientıfica mas tambem

na industria [Jen96]. Ao contrario de outros sistemas periciais e necessaria perspicacia e

experiencia pratica para explorar as capacidades deste tipo de redes Bayesianas[Jen96],

o que podera prejudicar a sua utilizacao a mais curto prazo. No entanto, depois de

se obter algum conhecimento sobre as mesmas, estas podem tornar-se num grande

instrumento[Mit97].

As redes Bayesianas sao representacoes graficas de conhecimento [Mit97, Hec97a] e

possuem diversas vantagens:

1. permitem expressar directamente as relacoes directas entre os atributos;

2. permitem explicar ao utilizador como o algoritmo chegou aquela conclusao e quais

as relacoes entre os atributos;

3. existencia de metodos matematicos para estimar o estado de crenca do atributo

dada alguma evidencia.

O mais simples dos classificadores Bayesianos e o naive Bayes [DHS01, DP97, Rou02],

2

Page 21: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 1. INTRODUCAO 3

pois este assume que todos os atributos sao independentes entre si quando o valor da

classe e conhecido. Este facto ocorre mesmo que existam fortes indıcios de que os

atributos nao sao independentes, o que e comum no mundo real. Apesar de esta ser

uma forte assuncao permite que o naive Bayes seja extremamente simples e robusto.

Num esforco de melhorar o naive Bayes, Friedman[FG96], introduziu o Tree Augmented

Naive Bayes (TAN). Este relaxa a independencia entre os atributos.

O classificador TAN, como descrito por Friedman e um algoritmo nao incremental, ou

seja, quando e necessario que o modelo receba novos dados e indispensavel ’deitar fora’

o modelo obtido e reavaliar novamente todos os dados. Este facto exige um esforco e

tempo desnecessario que outros algoritmos directamente concorrentes nao necessitam,

esta e uma das desvantagens do TAN em relacao aos seus concorrentes.

Para que seja possıvel dotar o TAN da capacidade de incorporar novos dados a partir

do modelo ja obtido, e essencial uma troca no seu desempenho, ou seja, o algoritmo

demora menos tempo a avaliar novos dados e e exigida menos memoria, podendo no

entanto a estrutura escolhida perder alguma qualidade diminuindo a sua taxa de acerto.

1.1 Inteligencia Artificial, Aprendizagem

automatica

Hoje em dia continuamos sem ter uma definicao conclusiva do que e inteligencia

[Coe95].

”E como e que se mede a inteligencia, afinal? Eu nem sequer sei o que e a

inteligencia.”

Gerald Edeman, no Publico, 1991.11.15

Page 22: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 1. INTRODUCAO 4

Actualmente existe uma proposta que diz que a inteligencia e a utilizacao habilidosa

do conhecimento. Se se seguir esta linha de pensamento um programa e inteligente se

conseguir reter conhecimento e o usar correctamente.

Desde que os primeiros computadores comecaram a ser projectados e construıdos, na

decada de 1950, tem surgido projectos ambiciosos na tentativa de transformar um

computador numa maquina que consiga processar cada vez mais informacoes e a mais

rapidamente. Muitos destes projectos foram-se transformando com o tempo ate que

surgiu uma nova ambicao, a denominada ”Inteligencia Artificial”.

A Inteligencia Artificial pode ser definida como um conjunto de tecnicas e metodologias

de programacao utilizadas na tentativa de resolucao dos problemas, de forma mais

eficiente do que a utilizacao de solucoes algorıtmicas[Coe95].

Assim, o primordial objectivo da Inteligencia Artificial e conseguir que um computador

(genericamente pode ser substituıdo por uma maquina) consiga processar informacoes

da mesma forma que um ser humano. A tentativa de compreensao e imitacao do

processo de aprendizagem dos seres humanos funcionou desta forma como motivacao

para este campo da informatica. Actualmente, existem ja algumas aplicacoes da

Inteligencia Artificial que permitem a resolucao de problemas que eram considerados

impossıveis de serem resolvidos por uma maquina.

Um dos objectivos da aprendizagem automatica e a obtencao de algoritmos que

melhorem o seu desempenho atraves da experiencia.

Mais recentemente surgiram grandes bases de dados que se tornaram habituais em

muitas areas, tais como na ciencia e negocios. Desta forma, surgiram novas aplicacoes

e motivacoes neste campo.

No momento, a aprendizagem automatica parece dividida em duas areas: Reconheci-

mento de padroes e ’Data Mining’. O principal objectivo do primeiro e a classificacao

de exemplos com base em padroes encontrados nos dados, enquanto que o objectivo do

Page 23: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 1. INTRODUCAO 5

segundo e encontrar modelos matematicos nos dados.

Alguns autores argumentam que os metodos heurısticos e simbolicos se fundem quando

associados a inteligencia artificial, enquanto que outros estao preocupados em associar

os metodos numericos com a aprendizagem estatıstica. Alem destas duas visoes existe

ainda uma terceira que afirma que todos os metodos referidos sao apenas pontos de

vista diferentes de uma mesma ciencia e que a aprendizagem automatica tem como

objectivo alcancar algoritmos que melhoram com a experiencia.

Nos ultimos anos, muitas aplicacoes desenvolvidas na area da aprendizagem automatica

tiveram sucesso. Estas quando alinhadas na area do data minning permitem detectar

operacoes fraudulentas dos cartoes de credito e conduzir um automovel de forma

autonoma numa auto-estrada publica. Simultaneamente ocorreram importantes

avancos nos algoritmos que sao a base deste campo [Mit97]. Assim, as potencialidades

deste campo sao enormes. Imagine-se, por exemplo, as consequencias que traria o

facto de um programa poder aprender com a experiencia: um computador poderia

aprender a partir de registos medicos quais os tratamentos mais efectivos para novas

doencas, as casas inteligentes aprenderiam a optimizar o custo de energia baseado no

comportamento das pessoas que nela habitassem ou o software poderia aprender os

gostos e comportamento do utilizador para automaticamente evidenciar uma notıcia

que possa potencialmente ser do interesse deste.

Uma correcta compreensao da forma de tornar possıvel que os computadores aprendam,

pode tornar possıvel o aparecimento de novas utilidades e novos nıveis de competencias

para estes. Contudo ainda nao se conhece a forma de tornar possıvel que um

computador aprenda como um humano. No entanto, existem ja algoritmos que sao

eficientes para aprender alguns tipos de tarefas especıficos. A compreensao teorica da

aprendizagem e assim um campo emergente.

Page 24: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 1. INTRODUCAO 6

1.2 Classificacao

A classificacao supervisionada e parte integrante da inteligencia artificial denominada

por reconhecimento de padroes, a qual se aplica a diversos campos cientıficos e

tecnologicos [Mug02].

O problema central da classificacao centra-se na obtencao automatica de um modelo

que consiga atribuir uma classe a um caso, que e composto por um vector de atributos.

Estes modelos sao normalmente obtidos atraves de um conjunto de treino constituıdo

por exemplos classificados, ou seja, para os quais e conhecido a classe a que pertencem.

Ao longo das ultimas decadas, na tentativa de resolucao deste problema, a estatıstica

e a inteligencia artificial comecaram a propor diferentes paradigmas classificatorios

nomeadamente, arvores de classificacao [Qui93], redes neuronais, analise do discrimi-

nante linear e maquinas de suporte vectorial.

Assim, na literatura existem diversas tentativas de comparacao dos diferentes paradig-

mas de classificacao, como por exemplo Michie [MST94], Heckerman [Hec97b] e Lim

[LLS00]

A decisao de escolher o paradigma adequado ou ideal (caso se possa utilizar este

termo) para fazer face ao problema e difıcil e esta normalmente condicionada aos

conhecimentos dos investigadores ou tecnicos. No entanto, existem algumas formas

e criterios para avaliar e comparar o desempenho dos diferentes paradigmas dos

classificadores, dos quais se deve salientar a taxa de erro, a complexidade algorıtmica,

a simplicidade de interpretacao dos resultados e a simplicidade do modelo obtido.

1.3 Motivacao

Apesar de existirem diversos algoritmos de classificacao, o naive Bayes [DHS01] e

considerado pela comunidade cientıfica, como competitivo com algoritmos bem mais

Page 25: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 1. INTRODUCAO 7

sofisticados [Mug02, FG96, Hec97a, Rou02], e tambem computacionalmente mais

complexos.

O naive Bayes e amplamente utilizado em tarefas de classificacao, nao so devido a

sua simplicidade mas tambem devido ao facto de ser um algoritmo incremental. No

entanto, o TAN supera o naive Bayes sem acrescentar uma complexidade proibitiva

mas perdendo a caracterıstica de algoritmo incremental. Desta forma acredita-se que

o TAN podera ser uma alternativa mais viavel se for dotado desta caracterıstica.

De notar que em alguns casos da literatura, por exemplo [Rou04], sao utilizadas

coleccoes de dados com atributos contınuos. De forma a ser possıvel testar o algoritmo

neste tipo de conjuntos de dados os autores efectuavam uma discretizacao previa. De

salientar que com o teste dos algoritmos se pretende analisar o seu desempenho, para

que seja possıvel deduzi-lo no futuro e numa situacao real.

No entanto, numa situacao real o algoritmo nao tera acesso a todos os dados

previamente, o que indica que os resultados obtidos podem ser enviesados. Este

facto ocorre porque se a discretizacao for efectuada a medida que o algoritmo tem

acesso aos dados a discretizacao resultante e diferente, logo, os seus resultados tambem.

Contudo, os respectivos autores apenas pretendem testar o algoritmo, ignorando este

aspecto. Assim, uma das motivacoes e a correcta avaliacao do algoritmo. Deste modo

torna-se relevante o desenvolvimento de um metodo de discretizacao incremental que

possibilita nao so uma aproximacao do desempenho do algoritmo em ’condicoes reais’,

mas tambem o melhoramento da discretizacao encontrada inicialmente.

De salientar, que os trabalhos sobre discretizacao incremental, sao escassos, o que se

acredita ser uma grande lacuna na area. Apesar de este ser um topico em foco nos

ultimos anos.

Por conseguinte os objectivos principais, desta tese, sao tres:

• desenvolver a caracterıstica de incrementalidade para o TAN;

Page 26: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 1. INTRODUCAO 8

• desenvolver um metodo de discretizacao incremental;

• melhorar o metodo de avaliacao de algoritmos incrementais.

1.4 Contribuicoes

Assim, como contribuicoes desta tese, temos:

• Estudo dos varios tipos de TAN desenvolvidos pela comunidade cientifica;

• Desenvolvimento e estudo de um classificador TAN incremental;

• Estudo da area da discretizacao, nomeadamente a sua aplicacao a metodos

incrementais;

• Desenvolvimento de um metodo de discretizacao incremental;

• Desenvolvimento de um metodo de discretizacao que acelera a discretizacao em

grandes conjuntos de dados;

• Desenvolvimento e teste de um classificador Bayesianos como algoritmo incre-

mental com discretizacao incremental.

1.5 Organizacao da tese

A tese encontra-se organizada do seguinte modo:

No capıtulo 2 descrevem-se as motivacoes para o desenvolvimento de algoritmos

incrementais. De seguida, efectua-se a revisao bibliografica sobre o TAN e uma revisao

dos metodos de discretizacao, sendo introduzida a definicao e os conceitos.

Page 27: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 1. INTRODUCAO 9

No capıtulo 3 e descrita a proposta de um novo algoritmo, o TANi (uma versao do

TAN incremental) e sao apresentados varios resultados de testes efectuados ao novo

algoritmo, nomeadamente, a comparacao de arvores e a analise da taxa de acerto.

No capıtulo 4 e descrita a motivacao para o desenvolvimento de um metodo de

discretizacao incremental, seguida de uma descricao de uma nova metodologia. Alem

disso, sao apresentados os resultados obtidos com o novo metodo proposto.

No capıtulo 5, apresentam-se as conclusoes da tese, resumem-se os pontos chave

da tese e discutem-se alguns pontos que se pensa, serem importantes para futuro

desenvolvimento.

Page 28: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

Capıtulo 2

Classificacao e aprendizagem no

mundo real

2.1 Aprendizagem incremental

Os agentes inteligentes, incluindo os humanos, estao em ambientes dinamicos, pois

estes alteram-se atraves do tempo. Apesar de este facto parecer natural, muitas vezes e

necessario ter em consideracao que o processo de aprendizagem ocorre durante o tempo

[Lan95]. Assim, a ideia de aprendizagem incremental nasce a partir da observacao

do comportamento humano, que pode ser visto como um processo gradual, no qual

o Homem tem a habilidade de incorporar novos conhecimentos a partir de novas

experiencias, em conceitos ja estruturados [Fis87].

A aprendizagem incremental foi, pela razao enunciada, inicialmente motivada pela

utilidade desta capacidade humana ser incorporada nos agentes inteligentes. Contudo,

actualmente existem outras aplicacoes praticas, nomeadamente aplicacoes industriais

[Rou04], software pessoal e jogos. Estas razoes aumentam os interesses em algoritmos

incrementais. A tıtulo meramente exemplificativo pode-se referir que os bancos

10

Page 29: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 11

armazenam milhoes de registos de transaccoes, os motores de busca da internet estao

constantemente a guardar milhoes de pesquisas. Deste modo, os algoritmos que

trabalham com esta quantidade de informacao, de modo contınuo, devem estar dotados

da capacidade de melhorar a sua base de conhecimento, incorporando nova informacao.

Assim, as principais razoes para o desenvolvimento de algoritmos incrementais

consistem no facto destes pouparem memoria e tempo de processamento. Alem disso,

com um algoritmo incremental e possıvel ter em consideracao o concept drift, ou seja, a

medida que o ambiente no qual o algoritmo esta inserido se altera o algoritmo detecta

essas alteracoes e integra-as na reformulacao do modelo. Para que isto seja possıvel e

indispensavel que o algoritmo seja incremental.

Durante a segunda metade dos anos oitenta diversos sistemas incrementais foram

propostos na area de clustering, sendo o Fisher’s COBWEB [Fis87] um dos mais

referidos presentemente. No domınio das arvores de decisao Utgoff [UBC97] estendeu

as arvores de Quinlan’s [Qui93] para os sistemas incrementais. Alem disso, a area de

Data Mining, que trabalha com grandes bases de dados, fomentou o surgimento de

novos interesses na area da aprendizagem incremental.

Na comunidade que estuda as redes Bayesianas, os metodos incrementais receberam

pouca atencao, apesar de o naive Bayes ser um algoritmo naturalmente incremental, no

entanto este, por vezes nao e o mais adequado para problemas com um grau maior de

complexidade. Na tentativa de estender as redes Bayesianas a algoritmos incrementais

existem quatro trabalhos, o trabalho de Buntine (1991), o de Lam e Bacchus (1994), o

de Fridman (1997) [FG97] e o de Roure (2003) [Rou04].

2.1.1 Algoritmos incrementais: definicao e objectivos

Os algoritmos devem possuir algumas propriedades para poderem ser considerados

incrementais.

Page 30: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 12

Na literatura existem diversas definicoes de algoritmo incremental mas a definicao mais

comum e aceite pela comunidade cientıfica e a definicao de Langley [Lan95]:

Um algoritmo L e incremental se L for capaz de introduzir na sua base de dados de

conhecimento um exemplo de cada vez, sem rever qualquer exemplo ja processado e

retiver em memoria apenas uma estrutura de conhecimento.

Segundo Langley existem diversos autores que consideram apenas uma ou duas das

restricoes impostas por esta definicao. No entanto, uma analise mais cuidada da

definicao permite verificar que esta impoe tres restricoes muito fortes. Uma primeira

regra impoe que o algoritmo possa interromper o processo de treino para responder

a qualquer questao. Deste modo, numa analise exterior podem existir algoritmos que

possam cumprir esta regra mas nao sejam incrementais. Os algoritmos que processam

os dados ja revistos com os novos dados, podem-se assemelhar a um incremental.

Uma segunda regra. Esta impoe que o tempo de processamento de cada novo caso

se mantenha constante, independentemente do numero de exemplos que o algoritmo

ja analisou. A terceira e ultima regra e destinada aos algoritmos que, apesar de nao

manterem os dados, mantem em memoria um resumo completo destes ou das possıveis

alternativas. Segundo Langley, a intencao desta terceira regra e limitar a um resumo

razoavel as estruturas mantidas em memoria.

Na literatura distingue-se aprendizagem incremental de aprendizagem online. O que

normalmente caracteriza cada uma e:

aprendizagem incremental o algoritmo e capaz de actualizar o modelo quando

existem mais dados disponıveis.

aprendizagem online o algoritmo e incremental e e capaz de receber um exemplo,

actuar e de seguida receber o feedback do ambiente para verificar se a sua accao

foi a correcta.

Page 31: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 13

2.1.2 Vantagens e desvantagens dos algoritmos incrementais

A principal vantagem de um algoritmo incremental e o facto de nao impor restricoes a

analise de novos dados, quer em tempo, quer em numero, estando sempre o algoritmo

disponıvel a qualquer momento. Alem disso, e possıvel obter modelos que processem

grandes quantidades de dados sem um gasto excessivo de recursos e de tempo,

caracterısticas que sao desejaveis [Lan95, Mal03, LG02].

Uma outra vantagem consiste em nao desaproveitar o tempo gasto no processamento do

algoritmo quando e necessario reavaliar a estrutura de conhecimento. Assim e possıvel

resumir as vantagens em cinco items fundamentais:

1. Poupa memoria do computador;

2. Nao desaproveita o tempo de processamento que foi gasto para a construcao do

modelo;

3. Maior rapidez de resposta;

4. Importante em alguns domınios como o data mining ;

5. Aproxima-se da forma de aprendizagem dos humanos.

Naturalmente os algoritmos incrementais tambem possuem desvantagens. Uma delas

e o facto de que quando um algoritmo gera um modelo, este normalmente segue

metodos, tais como o hill climbing, para tentar encontrar a solucao optima do problema.

O algoritmo tenta encontrar um maximo local, o que provocara uma tentativa de

encontrar um melhor maximo quando sao apresentados novos exemplos. No entanto,

os exemplos poderao nao ser suficientes para sair desse maximo local e encontrar um

melhor, basta esse maximo estar rodeado de grandes vales. Uma vez que um algoritmo

nao incremental volta a processar toda a informacao quando surgem novos dados, este

refaz o caminho para encontrar um maximo, desta vez melhor informado (com todos

Page 32: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 14

os exemplos disponıveis). O que lhe podera possibilitar seguir um outro caminho,

podendo encontrar um melhor maximo.

Associado a este problema surge um outro, que corresponde ao facto de os algoritmos

incrementais serem sensıveis a ordem pela qual os exemplos sao apresentados. Supondo

que temos duas amostras de ordens O1 e O2 num conjunto de dados D, um algoritmo

incremental pode originar dois modelos diferentes quando treinado pela O1 ou pela O2.

Uma forma de tentar resolver este problema e ordenar os dados de modo a apresentar

exemplos diferentes juntos, para deste modo tentar escapar a maximos locais.

2.2 Classificadores Bayesianos

2.2.1 Naive Bayes, o mais simples dos classificadores

Bayesianos

O naive Bayes e o mais simples dos classificadores Bayesianos [Mug02, YW03, Rou02,

KP99], sendo naturalmente incremental devido a sua simplicidade e aplicando-se a uma

grande variedade de areas e problemas. Este e descrito, por exemplo, por Duda e Hart

[DHS01] e por Langley [Lan92].

Suponha-se que se pretende classificar um exemplo e, descrito por um vector de

atributos (X1, X2, ..., Xn), num dos possıveis valores da classe C1, ..., Ck, mutuamente

exclusivas. O naive Bayes classifica o exemplo e na classe Ci que maximiza a

probabilidade a posteriori P (Ci|e). Assim, aplicando o teorema de Bayes obtem-se:

P (Ci|e) =P (Ci)P (e|Ci)

P (e), (2.1)

O termo P (e) pode ser ignorado por ser identico para todas as classes, nao alterando

a ordem relativa das probabilidades. O calculo do termo P (e|Ci) torna-se computa-

Page 33: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 15

Figura 2.1: O modelo de dependencias para o naive Bayes.

cionalmente possıvel uma vez que sao assumidos os princıpios de independencia, ou

seja todos os atributos Xi sao condicionalmente independentes dado o valor da classe

C. Todas as probabilidades requeridas sao estimadas a partir do conjunto de treino e a

aprendizagem da-se ao calcular a probabilidade P (C) e P (Xi|C) para todos os atributos

Xi dos dados de treino. A classificacao e executada calculando a P (C|X1, ..., Xn).

Uma vez que se assume que os atributos Xi sao independentes entre si dada a classe e

aplicando o principio de Bayes obtem-se a formula :

PT (Cj|X1, ..., Xn) = α.PT (C)∏x

i=1 PT (Xi|C) (2.2)

Considerando que existem quatro atributos (fig. 2.1) e que os valores possıveis da classe

seriam {+;-} ter-se-ia, argmax { P (C = + |x1, x2, x3, x4); P (C = −|x1, x2, x3, x4)},para o exemplo do modelo da figura 2.1, caso se pretendesse classificar um exemplo

aplicar-se-ia:

maxC

P (C = +|x1, x2, x3, x4); P (C = −|x1, x2, x3, x4) (2.3)

que seria:

P (C = +|x1, x2, x3, x4) = P (C = +).P (x1|C = +).P (x2|C = +).P (x3|C = +).P (x4|C = +)

P (C = -|x1, x2, x3, x4) = P (C = -).P (x1|C = -).P (x2|C = -).P (x3|C = -).P (x4|C = -)

Page 34: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 16

Figura 2.2: O modelo de dependencias de um TAN como descrito por Friedman.

Desvantagens do naive Bayes

O naive Bayes assume que os atributos sao independentes dada a classe, hipotese que

raramente se verifica no mundo real. Alem disso, apesar de se comportar muito bem

quando o numero de exemplos e escasso, o seu desempenho nao melhora muito quando

o numero de exemplos de treino aumenta.

A principal vantagem do algoritmo, a sua simplicidade, acaba assim por se transformar

numa desvantagem em problemas mais complexos.

2.2.2 TAN: extensao ao naive Bayes

O TAN foi introduzido por Friedman e Goldszmidt [FG96] com o intuito de melhorar o

naive Bayes [Rou02], possibilitando representar dependencias entre pares de atributos.

Este classificador denomina-se por tree augmented naive Bayes o que traduzido

textualmente significa arvore aumentada do naive Bayes. No entanto, evitar-se-a a

traducao, ficando apenas o esclarecimento.

Na figura 2.1 podemos observar o modelo para o naive Bayes e na figura 2.2 o

modelo para o TAN. Nestas figuras a classe encontra-se representada por C e em

Page 35: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 17

ambas as figuras se encontram representados quatro atributos (Xj ∀1≤ j ≤ 4). As setas

representam as dependencias entre as variaveis. Por exemplo, no caso da figura 2.1

podemos observar uma seta de C para X1, esta representa que o atributo X1 depende

da classe.

O TAN e semelhante ao naive Bayes, permitindo no entanto dependencias entre os

atributos. As restricoes sao as seguintes:

• cada atributo depende condicionalmente da classe (tal como ocorre no naive

Bayes);

• existem (n-1) atributos que dependem condicionalmente de um outro atributo

Esta ultima condicao implica que caso haja uma ligacao de Xi para Xj, estes dois

atributos nao sao independentes dada a classe. Em vez disso a influencia de Xj na

probabilidade da classe C depende do valor de Xi. A figura 2.2 mostra o exemplo de

uma rede Bayesiana com as condicoes descritas por Friedman para que seja considerada

um TAN.

Comparando a rede da figura 2.1 (Naive Bayes) com a rede da figura 2.2 (TAN) verifica-

se que foram acrescentadas algumas dependencias entre os atributos.

De notar que a estrutura das dependencias se encontra definida a partida para o naive

Bayes. Para o TAN tambem se define que todos os atributos dependem da classe, mas

e necessario encontrar as dependencias entre os atributos seguindo as regras descritas.

Para encontrar as dependencias entre os atributos Friedman usou o algoritmo reportado

por Chow e Lui [HKL02]. Uma vez que cada atributo pode ter no maximo um ”pai”,

e necessario encontrar aquele que possui maior probabilidade condicional dado o valor

de C. De uma forma mais simples, e necessario encontrar os dois atributos que

tenham maior correlacao. Ao escolher para cada atributo o que tem maior dependencia

condicional dado C, obter-se-a, teoricamente, a melhor representacao das dependencias

seguindo a regra do TAN.

Page 36: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 18

Figura 2.3: Arvore de dependencias encontrada pelo algoritmo de Chow and Liu.

A funcao 2.4 descreve o calculo do TAN, onde os parentes do atributo Xi sao

representados por ΠXie o atributo tem como parentes a classe e no maximo outro

atributo.

PB(X1, ..., Xn) = PB(Xi|∏

Xi) (2.4)

Considerando que existem quatro atributos (fig. 2.2) e que os valores possıveis da classe

{+ ; -}, para poder executar a classificacao tem-se de calcular:

argmax { P (C = +|x1, x2, x3, x4); P (C = -|x1, x2, x3, x4)} em que :

P (C = +|x1, x2, x3, x4) = P (C = +).P (x1|C = +).P (x2|x1, C = +).P (x3|x1, C =

+).P (x4|x3, C = +)

P (C = -|x1, x2, x3, x4) = P (C = -).P (x1|C = -).P (x2|x1, C = -).P (x3|x1, C =

-).P (x4|x3, C = -)

2.2.2.1 Algoritmo de Chow and Liu

Se a figura 2.2, retirarmos a classe e todas as ligacoes entre os atributos e a classe,

observa-se que as ligacoes entre os atributos formam uma arvore. Arvore essa que se

encontra representada na figura 2.3.

Page 37: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 19

O algoritmo reportado em 1965 por Chow e Liu [HKL02] e utilizado para a construcao

de arvores de dependencias que maximizam a informacao mutua entre as variaveis.

Assim, o algoritmo inicializa-se obtendo a informacao que X fornece sobre Y ,

recorrendo a seguinte formula:

IP (X; Y ) =∑x,y

P (x, y)P (x, y)

P (x)P (y)(2.5)

Onde IP (X; Y ) e a informacao que X fornece sobre Y ou o inverso, informacao esta

que e calculada para todos os pares de atributos. Com a informacao obtida entre todos

os pares de atributos esta-se em condicoes para construir um grafo completo.

A partir do grafo completo o objectivo e obter a arvore de dependencias que maximize

a informacao mutua entre os atributos. Para achar essa arvore que maximiza o peso da

informacao mutua entre os atributos, existem dois algoritmos conhecidos, o algoritmo

de Kruskal e o de Prim’s.

Friedman ao analisar o caso especıfico da construcao da arvore de dependencias para o

TAN verificou que, neste caso especifico, sabe-se a partida que todos os atributos sao

dependentes da classe. Assim, o necessario e conhecer a quantidade de informacao que

o atributo X fornece sobre o atributo Y dada a classe, utilizando uma formula que e

uma adaptacao da formula original (2.5) para o caso especıfico do TAN:

IP (X; Y |C) =∑x,y,c

P (x, y, c)P (x, y|c)

P (x|c)P (y|c) (2.6)

A diferenca entre a formula 2.5 e a formula 2.6 e que esta ultima assume que ambos

os atributos sao dependentes da classe, calculando deste modo a informacao que X

fornece sobre Y dado o valor da classe.

Page 38: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 20

Figura 2.4: Fases da construcao da arvore que maximiza a informacao mutua.

2.2.3 Construcao da arvore de dependencias

A construcao da arvore de dependencias e o que diferencia o TAN do naive Bayes. Esta

vai determinar o desempenho do TAN. Teoricamente, e devido a dependencia entre os

atributos que o TAN melhora o desempenho em relacao ao naive Bayes.

Para construir a arvore que maximiza a informacao mutua entre os atributos, seguem-se

os seguintes passos:

1. Obter a informacao mutua (equacao 2.6), IP (Xi, Xj|C) entre cada par de

atributos, i, j e construir um vector com essa informacao mutua, figura 2.4, passo

(a);

2. Desenhar um grafo completo nao orientado, tendo como nos os atributos e como

custo das ligacoes a informacao mutua entre os atributos, figura 2.4, passo (b);

3. Calcular a arvore que maximiza a informacao mutua, sem criar ciclos, figura 2.4,

passo (c);

Page 39: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 21

4. Transformar a arvore nao orientada em orientada, escolhendo como raiz a

informacao mutua mais alta, figura 2.4, passo (d);

5. Adicionar a classe como ”pai”de todos os atributos, figura 2.4, passo (e);

2.2.4 Variantes do TAN

Apos a sua apresentacao o TAN foi motivo de estudo por varios autores que

apresentaram algumas ideias no sentido de tentar melhorar o desempenho do TAN

de Friedman. As propostas mais relevantes sao as seguintes:

• smoothed TAN foi apresentado por Friedman no mesmo artigo em que

apresentou o TAN e este visa combater o problema de existirem poucos exemplos

em algumas particoes. Segundo Friedman [FG96] este problema nao afecta o

Naive Bayes pois este dispoe de um menor numero de particoes e estas sao

elaboradas, apenas de acordo com o numero de possıveis valores da classe que

normalmente sao bem representadas pelos dados de treino. Assim, para o calculo

do smoothed TAN sao estimados em todas as particoes θx|∏

xe sao enviesados

para a frequencia marginal observada, formalmente:

θs(x|∏x

) = α.PD(x|∏x

) + (1− α)PD(x) (2.7)

em que o α =N.PD(

∏x)

N.PD(∏

x)+s

, e s e o parametro ’suavizador’, que de acordo com

o conselho de Friedman devera ter o valor de 5. Na pratica o que acontece

e que quantos mais exemplos a particao tiver, menos enviesado e o seu valor.

A alteracao que o smoothed TAN propoe e apenas a alteracao dos valores das

particoes que contem as estimativas das probabilidades.

• super parent (SP), apresentado por Keogh e Pazzani [KP99], que propoem

um algoritmo ambicioso que vai adicionando ’arcos’ a estrutura do naive Bayes.

Em cada passo o algoritmo adiciona mais um ’arco’ mantendo a condicao de que

Page 40: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 22

cada atributo nao tenha mais de um pai. O algoritmo designa como orfaos os

que nao tem outro atributo como pai. No primeiro passo o SP inicializa a rede

com o naive Bayes, em que todos os atributos sao orfaos, assim a lista de orfaos

e inicializada com todos os atributos.

Em seguida o algoritmo avalia para cada atributo o desempenho como ”pai”para

cada um lista de orfaos, entendendo-se por desempenho a taxa de erro nos

exemplos de teste. O que obtiver melhor desempenho e escolhido como ”super

pai”. De seguida escolhe-se o ”filho favorito”, que corresponde ao que apresentou

melhor desempenho como ”filho”do ”super pai”escolhido. O ”filho”favorito e

retirado da lista de orfaos e volta-se a escolher o novo ”super pai”. Este ciclo

repete-se ate a lista de orfaos contenha apenas um elemento ou ate que se verifique

que o desempenho nao melhora. . De uma forma resumida sao estes os passos a

seguir:

1. Inicializar a estrutura com o naive Bayes

2. Avaliar o desempenho da estrutura

3. Considerar a hipotese de tornar cada atributo como ”super pai”, em que

ASP representa o atributo que apresenta o melhor desempenho como ”super

pai”.

4. Considerar as estruturas que acrescentam a actual um arco de ASP para os

orfaos.

Se a melhor das estruturas anteriores melhorar o desempenho, considera-se

essa estrutura e voltar-se ao passo 2. Caso contrario retornar-se a estrutura

actual.

Os autores do algoritmo, defendem que este metodo de procura da arvore melhora

o desempenho do classificador, mas este metodo e mais moroso e dispendioso

na procura da estrutura do TAN. Alem disso, existe ainda o problema de este

algoritmo encontrar a melhor estrutura para os dados de treino o que nao significa

Page 41: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 23

que seja a melhor estrutura para o problema.

Uma outra causa para que o algoritmo seja mais moroso e o facto de este

necessitar de avaliar a rede com os dados de treino em cada um dos passos.

Para alem de avaliar a rede obtida o algoritmo avalia ainda todas as possıveis

redes, o que vai prejudicar o tempo de obtencao do algoritmo, que e directamente

proporcional ao numero de exemplos de treino. Assim pode-se concluir que o

desempenho do algoritmo diminui apesar de a taxa de erro para os dados de

treino poder melhorar.

Deve-se no entanto salientar que este algoritmo trouxe uma importante con-

tribuicao que consiste na ideia de nao impor ao algoritmo crie uma arvore com

(n-1) ligacoes mas que pare de adicionar ligacoes quando atinge um criterio.

• TANC, apresentado por Fagiuoli e Zaffalon [FZ00] tenta estender o TAN a

uma ’credal network ’. Os autores apresentam na realidade dois algoritmos, o

TANC que baseado numa ’credal network ’ classifica os exemplos e o TANCs

que para os autores deve ser utilizado em domınios com grande complexidade.

Estes algoritmos utilizam intervalos de probabilidades em vez de valores precisos.

Os autores reclamam que o tempo de processamento e linear de acordo com o

numero de atributos.

• TBMATAN, apresentado por Cerquides e Lopes Mantaras em 2003 [Cer03],

no qual os autores demonstram como induzir distribuicoes decompostas sobre

o modelo TAN. Este algoritmo parte do princıpio que ao se assumirem as

probabilidades a priori como decompostas podemos e possıvel obter as proba-

bilidades a posteriori tambem decompostas, podendo estas ser completamente

determinadas analiticamente em tempo polinomial. No mesmo relatorio os

autores determinam que para grandes series de dados o TBMATAN tem

grandes inconvenientes, por isso propoem uma aproximacao ao TBMATAN que

denominam por SSTBMATAN. O TBMATAN e o SSTBMATAN apesar de

demonstrado empiricamente pelos autores que podem melhorar os resultados do

Page 42: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 24

TAN, acrescentam uma complexidade consideravel ao algoritmo, o que lhes retira

parte das vantagens.

2.2.5 Algoritmos incrementais para o TAN

A aproximacao Bayesiana a tarefa de classificacao e eficiente e foi aplicada de maneira

natural e com sucesso na area da aprendizagem off-line. No entanto, a utilizacao de

extensoes para a sua aplicacao de modo incremental, onde a informacao sobre exemplos

ja analisados nao sao guardados, tem sido muito limitadas ate ao momento [Saa98].

Como anteriormente mencionado, a mais simples das redes Bayesianas e o naive Bayes,

que e naturalmente incremental [Rou04]. Uma vez que nos problemas do mundo

real existem dependencias, quando estas sao representadas a rede perde a natureza

incremental pois, em redes Bayesianas, um novo exemplo pode afectar toda a estrutura

[FG97, Rou04, Hec97a]. Devido a esta natureza, a abordagem incremental das redes

Bayesianas e mais difıcil do que em algoritmos de outras areas [Rou04].

2.2.6 TAN-ACO de Roure

Roure na sua tese [Rou04] dedicou-se ao estudo de algoritmos incrementais na area

das redes Bayesianas. Roure descreve na tese uma heurıstica que, segundo Roure, se

aplica a qualquer algoritmo que siga o hill climbing. Esta baseia-se no princıpio de

que quando um algoritmo utiliza a procura em hill climbing, este segue um caminho,

que e definido por operacoes. A heurıstica de Roure guarda a informacao e a ordem

das operacoes que o algoritmo seguiu. Deste modo quando o algoritmo processa novos

dados, a heurıstica verifica se o caminho seguido continua valido, caso este nao seja

valido a heurıstica reconstroi o caminho a partir da operacao onde o caminho deixou

de ser valido.

Mas para a exemplificacao da sua heurıstica Roure escolheu a aplicacao ao TAN, a

Page 43: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 25

heurıstica aplicada ao TAN Roure chamou de Arches in Correct Order (TAN-ACO).

O algoritmo guarda a ordem das operacoes para chegar a arvore de dependencias.

A operacao e neste caso a adicao de um novo ramo a arvore de dependencias.

Considerando que temos uma serie de operacoes ordenadas para chegarmos a um

modelo (M),

M = opn(opn−1...(op1(M0, A1), A2)..., An−1), An) (2.8)

Para chegar-mos ao nosso modelo M, que neste caso e a nossa arvore de dependencias,

efectuamos uma serie de operacoes sobre os argumentos. O que Roure propoe e

que, quando chegam novos dados, se actualizem as particoes da distribuicao de

probabilidades de modo a actualizar os argumentos. De seguida percorre-se o mesmo

caminho para verificar se as operacoes continuam correctamente ordenadas. Assim que

o algoritmo detecta que houve uma alteracao na ordem das operacoes ( equacao 2.9),

activa o processo para recalcular o caminho a partir dessa operacao, o que faz com que

o algoritmo encontre uma nova arvore de dependencias.

opj(Mj−1, Aj) ∨ opi(Mi−1, Ai) ∨ i > j ∨ Ai < Aj (2.9)

ou seja, o argumento i passou a ser maior que o argumento j mas no entanto a operacao

i so foi efectuada depois da operacao j.

Simplificando, o algoritmo guarda a ordem pela qual os arcos foram escolhidos para

a arvore de dependencias, esta escolha foi efectuada ordenando de modo decrescente

o valor da informacao mutua (formula 2.6). Quando novos dados ficam disponıveis, o

algoritmo actualiza a informacao mutua e verifica se a ordem ainda e a mesma. Caso

o algoritmo encontre alguma alteracao, entao activa o processo para a actualizacao da

arvore na operacao onde a ordem dos argumentos se alterou.

Page 44: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 26

2.3 Discretizacao

A extraccao de conhecimento e geralmente feita com auxılio de algoritmos de

aprendizagem de maquina. A maioria desses algoritmos pode somente ser aplicada

a conjuntos de dados que contenham apenas atributos discretos ou nominais. Dessa

forma, a utilizacao de certas ferramentas de extraccao de conhecimento pressupoem a

discretizacao de atributos contınuos presentes nos dados em questao.

O processo de discretizacao consiste em transformar um atributo contınuo, em um

numero finito de intervalos e associar valores discretos a cada intervalo.

A discretizacao e comumente utilizada porque existem varios algoritmos que lidam

apenas com variaveis discretas, mas existem autores que defendem a discretizacao

como um pre-processamento mesmo para algoritmos que lidam com atributos contınuos

[DKS95, FR02].

2.3.1 Tipos de atributos

Na area da aprendizagem automatica sao utilizados conjuntos de dados para a avaliacao

do algoritmo. Os conjuntos de dados tem normalmente varios tipos de atributos, este

dividem-se em:

qualitativos ou categoricos, estes sao normalmente finitos e nao numericos.

quantitativos ou numericos , estes podem conter um numero infinito de valores.

Dentro de cada um destes tipos existem outros dois tipos. Dentro dos categoricos

existem dois tipos, os nominais e os ordinais. Os nominais sao aqueles que nao podem

ser ordenados, por exemplo.

• Tipo de sangue de uma pessoa: A, B, AB, O;

Page 45: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 27

• Sexo de uma pessoa: Masculino, feminino;

• Nacionalidade de uma pessoa: Portugues, Espanhol, Frances, etc..;

Os ordinais sao aqueles que apesar de serem categoricos tem uma ordem, por exemplo:

• humidade: Alta < Media < Baixa;

• Periodicidade de um Jornal: Diario, Semanal, Mensal, Anual;

Dentro dos numericos temos os contınuos ou discretos, em que os discretos sao aqueles

que apenas assumem valores numericos mas previsıveis, por exemplo:

• Numero de filhos de uma famılia;

• Numero de acidentes de um segurado;

os contınuos sao aqueles que assumem podem assumir um numero de valores infinitos

dentro de um intervalo, por exemplo:

• Peso;

• Temperatura;

Por razoes de simplicidade, vamos apenas chamar os atributos de categoricos e

contınuos, em que quando nos referimos contınuos estamos na realidade a referir-nos

a atributos numericos, estes sao os atributos que nos interessa discretizar. Contudo,

podem existir atributos contınuos, com um numero de valores finitos, se neste caso,

o numero de possıveis valores do atributo for inferior ao numero de intervalos achado

pelo metodo de discretizacao, nao vale a pena discretizar o atributo.

Page 46: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 28

2.3.2 Importancia da discretizacao

Muitos dos dados com que a area da aprendizagem automatica trabalha sao problemas

reais. Esta area tem como objectivo substituir e por que nao, melhorar o homem na

resolucao de problemas. Contudo, existem muitos casos em que os problemas envolvem

atributos contınuos. Nestes casos a discretizacao torna-se importante para algoritmos

que nao trabalham com atributos contınuos, como por exemplo, as redes Bayesianas.

A discretizacao tem como principais caracterısticas:

• Permitir que modelos que apenas lidam com atributos categoricos, possam

resolver problemas com atributos contınuos.

• Acelerar o processo de aprendizagem do modelo, pois normalmente o processa-

mento de atributos categoricos e mais rapido [FR02, Cat91].

• Nao efectuar assuncoes sobre a distribuicao de probabilidade.

• Os intervalos resultantes da discretizacao sao mais faceis de representar e

compreender em termos de representacao de conhecimento para o utilizador.

• Os atributos discretizados ocupam menos espaco em memoria.

• Reduzir o espaco de procura, o que reduz a chance de se criar regras muito

especıficas, aumentando por essa razao a probabilidade de encontra gerar um

modelo simples. A discretizacao agrupa num intervalo uma serie de valores,

ao efectuar esta operacao esta a diminuir o espaco de possıveis modelos que

o algoritmo pode investigar. Um dos problemas na area da aprendizagem

automatica, que por vezes acontece, e o modelo adaptar-se aos dados. Este

gera um modelo complexo, que obtem um desempenho elevado com os dados

de treino, mas um baixo desempenho com conjuntos de dados nao pertencentes

ao conjunto de treino. Com a discretizacao o risco de acontecer esta situacao

diminui, pois a discretizacao agrupa num intervalo um conjunto de valores,

Page 47: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 29

diminuindo consideravelmente a complexidade do conjunto de dados. Esta

reflecte-se normalmente no modelo gerado.

Estas sao algumas das caracterısticas que tornam a discretizacao dos atributos atraentes

mesmo para algoritmos que suportam atributos contınuos.

No entanto, existem muitos algoritmos da area de aprendizagem automatica que

estao orientados para lidar com atributos categoricos. [DKS95, KS96]. Este tipo de

algoritmos nao pode prescindir da discretizacao. As redes Bayesianas fazem parte deste

grupo.

2.3.3 Topologia dos algoritmos de discretizacao

Ao longo dos tempos foram propostos e testados varios tipos de algoritmos de

discretizacao com o intuito de provar a necessidade da discretizacao.

Os metodos de discretizacao foram surgindo com diferentes linhas de orientacao, deste

modo os metodos de discretizacao podem ser classificados de varias formas. Cada uma

das topologias realca o aspecto pela qual se classifica o metodo.

Os metodos de discretizacao classificam-se pelas seguintes caracterısticas:

1. Univariada e Multivariada [Bay00], metodos que efectuam a discretizacao de

um atributo de cada vez e sem ter em conta a relacao entre os atributos, sao

metodos univariados. No entanto, existem metodos que tem em consideracao

a relacao entre os atributos, estes metodos sao apelidados de multivariados.

Normalmente este tipo de metodos efectuam a discretizacao dos diversos atributos

em paralelo.

2. Supervisionado e Nao-supervisionado [DKS95], A discretizacao e chamada

supervisionada quando leva em consideracao a variavel classe (tipo univariado) ou

Page 48: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 30

os demais atributos (tipo multivariado). Os intervalos dos atributos discretizados

sao estipulados de acordo com a interaccao que se da entre as variaveis. Na

discretizacao nao-supervisionada, os atributos contınuos sao discretizados em

intervalos estipulados a priori, desprezando qualquer interaccao com as outras

variaveis.

3. Parametricos e Nao parametricos, os metodos parametricos sao aqueles que

requerem a intervencao do utilizador no processo. Esta intervencao pode ser por

exemplo a escolha do numero de intervalos. Os nao parametricos efectuam a

discretizacao do atributo sem requerer nenhuma intervencao do utilizador.

4. Hierarquicos e Nao hierarquicos[Yan03], a discretizacao hierarquica, inicia-se

com a escolha um ponto de corte como parte de um processo recursivo, o que

leva a uma hierarquia implıcita sobre a escolha dos pontos de corte. As operacoes

usadas pelo metodo hierarquico sao o corte e (ou) a juncao. O corte separa uma

das partes em duas, formando dois intervalos de discretizacao a partir do primeiro.

A juncao escolhe dois intervalos adjacentes e funde-os num so. Estes metodos

tem normalmente um criterio de paragem, o criterio pode ser um numero maximo

ou minimizo de intervalos ou ate deixar de ter um ganho significativo de acordo

com o criterio. Existem algoritmos que usam os dois metodos, por exemplo,

comecam por cortar o intervalo ate ser encontrado o criterio e de seguida usam a

juncao como um processo posterior de verificacao. Os metodos nao hierarquicos

escolhem os intervalos sem nenhuma hierarquia, por exemplo, os metodos que

ordenam os valores e escolhem os intervalos sequencialmente.

5. Global e Local [DKS95], A distincao entre discretizacao global e local depende

de quando ela e efectuada. Na dicretizacao global, todos os atributos contınuos

sao discretizados antes de serem submetidos ao algoritmo de aprendizagem,

esta discretiza o atributo para todo o espaco de treino e respeitante a todos

os outros atributos, apenas uma vez. Na local, os atributos contınuos sao

discretizados durante o processo de aprendizagem. Os metodos locais discretizam

Page 49: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 31

pequenas particoes, que por vezes, sao aplicados a regioes localizadas do espaco

de instancias. Por exemplo, existem metodos que discretizam o atributo varias

vezes, e aplicam uma das diferentes discreterizacoes efectuadas ao atributo, esta e

escolhida conforme o no de decisao da arvore de classificacao em que se encontre

[Qui93].

6. Dinamica e Estatica [FR02], esta classificacao da discretizacao refere-se ao

momento em que a discretizacao e efectuada, a discretizacao estatica efectua

a discretizacao antes de proceder ao treino do modelo. Existem algoritmos

que procedem a discretizacao do atributo durante a aprendizagem do modelo,

tentando tirar vantagens do modelo para efectuar a discretizacao do atributo,

este tipo de discretizacao e efectuada durante o processo de treino do algoritmo.

Este tipo de discretizacao e chamada de dinamica. No entanto, existem autores

que partilham a opiniao de que nao estao provadas as vantagens da discretizacao

durante o processo de aprendizagem [DKS95].

7. Disjunta ou Nao-Disjunta [Yan03], metodos disjuntos sao metodos que

escolhem intervalos adjacentes uns aos outros ocupando todo o espaco de valores

que o atributo pode ter, neste tipo de discretizacao os intervalos nao se sobrepoem,

qualquer que seja o valor do atributo, este apenas pertence a um intervalo.

Metodos nao-disjuntos formam intervalos que nao obedecem as regras anteriores:

os intervalos podem sofrer sobreposicoes e/ou os atributos podem pertencer a

mais de um intervalo. A vantagem deste tipo de metodos pode ser um melhor

aproveitamento dos exemplos, ja que o mesmo exemplo pode servir para a

confianca de mais de um intervalo.

2.3.4 Efectividade da discretizacao

Um ganho notavel com a discretizacao e a diminuicao do uso de memoria. Conjuntos

de dados que possuem atributos com muitos valores distintos podem, depois de

Page 50: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 32

discretizados, ser representados de forma muito mais compacta. Isso diminui os

problemas relacionados com a manutencao de memoria e acelera o processo de

aprendizagem de maquina.

Alguns autores, realizaram testes empıricos, em que defendem que a discretizacao torna

a aprendizagem mais rapida e melhora o desempenho do modelo [FR02, DKS95]. O

uso da discretizacao pode ainda simplificar e compactar o conjunto de dados, por

razoes ja enunciadas, levar a modelos mais pequenos, compactos, simples e com melhor

desempenho que os mesmos obtidos com os atributos contınuos.

Alguns autores efectuaram testes com algoritmos que trabalham com atributos

contınuos e discretos [FR02, DKS95, MR95, FW99, Cat91]. Apos estas experiencias, os

autores chegaram as conclusoes de que a discretizacao e vantajosa em varios aspectos,

pois a discretizacao melhorou quer o desempenho quer a rapidez dos algoritmos.

Para poder avaliar a eficacia de um metodo de discretizacao temos de ter em conta

varios aspectos:

simplicidade, intuitivamente um classificador simples tem vantagens quer na sua

aplicacao, quer na interpretacao mais tarde dos resultados. Existem na opiniao

de muitos autores metodos de discretizacao excessivamente complexos [Yan03].

numero de intervalos gerados, intuitivamente um classificador que gere um

numero de intervalos baixo obtera um melhor resultado de discretizacao, claro

que existe um limite mınimo imposto pelo conjunto de dados.

rapidez, um metodo de discretizacao e um pre-processamento dos dados, claro que se

este for excessivamente complexo e moroso perde parte das vantagens enunciadas

anteriormente e podera nao sera uma boa escolha. Existem muitos metodos de

discretizacao que na opiniao de muitos autores sao excessivamente complexos e

lentos [Yan03].

representacao simplificada, um dos objectivos dos metodos de discretizacao e

Page 51: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 33

simplificar o conjunto de dados pois deste modo este torna-se mais simples,

compacto e de melhor compreensao quer para o utilizador quer para o algoritmo

que vai gerar um modelo a partir dos dados.

eficacia da aprendizagem, este e um dos principais objectivos da discretizacao,

que o algoritmo tenha eficacia na aprendizagem, por esta razao os metodos

de discretizacao sao criados num contexto. Existindo metodos de discretizacao

especıficos para alguns algoritmos.

melhoria do desempenho, numa ultima analise, este e o principal argumento para

o uso da discretizacao. A melhoria de desempenho para o algoritmo.

Assim, um metodo de discretizacao, pode ser avaliado por qualquer destes aspectos.

Um classificador optimo sera entao rapido, simples, com um numero mınimo de

intervalos melhorando a representacao do conjunto de dados, a aprendizagem e o

desempenho do algoritmo.

2.3.5 A discretizacao e normalmente o metodo mais utilizado

com o TAN

O TAN efectua uma estimativa das probabilidades, para efectuar esta estimativa o

TAN guarda a frequencia de valores em particoes, as particoes podem ser do tipo

Ai|C (se o atributo apenas depende da classe) ou Ai|Aj, C (se o atributo depende de

outro atributo). Quando os valores sao categoricos, a estimativa e tirada a partir da

frequencia nas particoes. Para valores contınuos, poderia-se calcular as probabilidades,

caso se soubesse a sua distribuicao de probabilidades. Infelizmente para casos reais, a

distribuicao e desconhecida [FGL98]. Por esta razao, para lidar com atributos contınuos

existem duas abordagens possıveis:

1. A primeira e estimar a distribuicao de probabilidades para o atributo contınuo.

Page 52: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 34

Figura 2.5: Processo de discretizacao.

Para efectuar esta abordagem tem-se de tomar algumas suposicoes. Pode-se

assumir que o atributo tem uma distribuicao normal. Esta assuncao e feita

porque a distribuicao normal e uma aproximacao razoavel a muitos casos reais

[JL95], ou porque a distribuicao normal e provavelmente a melhor estudada na

area da estatıstica [Mit97].

2. A segunda aproximacao e a discretizacao dos atributos. Na discretizacao, um

atributo contınuo e pre-processado e convertido num atributo discreto. O atributo

e separado em varios intervalos. Os intervalos sao rotulados com um nome

(figura 2.5) .Para cada instancia verifica-se a que intervalo corresponde. O que e

dado ao algoritmo e o atributo discretizado, ou seja, o nome do intervalo a que

cada instancia pertence. Como a partir de atributos discretos a distribuicao de

probabilidades pode ser calculada com base na frequencia em cada particao ja

nao e necessario assumir que o atributo e contınuo. Na figura 2.5 podemos ver

um exemplo da discretizacao. Os pontos foram escolhidos aleatoriamente entre

um e nove, estes foram separados em tres intervalos A, B, C.

Para o TAN, a segunda abordagem e mais popular. A principal razao e que a

discretizacao atinge normalmente um erro mais baixo que o calculo das densidades

de probabilidades [DKS95].

Page 53: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 35

Figura 2.6: Processo de discretizacao hierarquico do topo para baixo. Discretizacao de

um atributo continuo com valores entre 0 e 100. Na figura pode-se visualizar a arvore

formada no decorrer do metodo.

Page 54: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 36

2.3.6 Revisao de alguns metodos de discretizacao

Ao longo dos anos, muitos algoritmos da discretizacao foram propostos e testados com

o intuito de mostrar que as vantagens da discretizacao em diversas areas. Estes sao

alguns dos metodos apresentados a comunidade cientifica:

Equal-with Binning Este e um metodo nao supervisado. Este e o metodo mais

simples de discretizacao [DKS95]. Apenas divide o espaco dos valores observados

em k intervalos de igual tamanho. Este e um metodo parametrico, pois o utilizador

tem de dar o numero de intervalos em que deseja dividir o atributo. Este metodo e

extremamente sensıvel a valores discrepantes, pois pode bastar um destes valores para

surgirem intervalos enviesados.

Equal-frequency Binning Neste metodo o utilizador escolhe o k, mas desta vez o k

e a frequencia dos valores por intervalos, assim o algoritmo cria os intervalos de modo

a que cada um contenha aproximadamente N/k instancias. Os limites dos intervalos

sao adjacentes. De notar que instancias com valores iguais sao colocadas no mesmo

intervalo, nao sendo por isso possıvel gerar sempre intervalos com k frequencia de

valores, mas sim intervalos com frequencias aproximadas. Este e tambem um metodo

nao supervisado e parametrico.

K-means custering Este e um metodo que surge na literatura como um metodo

mais sofisticado do metodo equal frequency intervals. O K-means e um metodo que

normalmente se inicializa com o equal with discretization. Num segundo passo o metodo

tenta minimizar as distancias dentro de cada intervalo em ralacao ao seu centro e

maximizar as distancias entra cada um dos intervalos. O metodo e iterativo e para

quando nenhuma instancia mudou de intervalo.

1R Este e tambem um metodo de binning. Este metodo comeca por ordenar os

valores do atributo, de seguida divide em intervalos adjacentes, em que cada intervalo

tem de conter no mınimo seis instancias com a excepcao do ultimo. Como os valores

Page 55: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 37

do atributo se encontram ordenados, o metodo selecciona seis valores, caso o valor a

seguir tenha um valor da classe diferente, o metodo encerra o intervalo e inicia um

novo intervalo, caso o valor da classe para o proximo valor seja igual o metodo alarga

o intervalo ate que o valor da classe seja diferente. Por defeito o valor mınimo de

frequencia em cada intervalo e seis, mas acredita-se que para conjuntos de dados com

milhares de exemplos, seis seja um valor desadequado.

ENT-MDL Este foi um metodo apresentado por Fayyad [FI93] em 1993. O metodo

de discretizacao ENT-MDL e baseado numa heurıstica de entropia mınima. Este, nao

requer nenhum parametro, a discretizacao ocorre automaticamente sem intervencao

humana.

H(X) =∑

x∈X

P (x) log2

1

P (x)(2.10)

O metodo comeca por considerar toda a amplitude do valor do atributo. De seguida

avalia todos os possıveis valores de corte em que o valor de corte e o meio entre dois

valores consecutivos. Para avaliar os valores de corte o metodo calcula o valor da

entropia, equacao 2.11.

H(Y |X) =∑

x∈X

|Yx||Y |H(Yx) (2.11)

como ja foi descrito, este e um metodo supervisado, por esta razao e calculado em

todos os possiveis valores de corte a entropia condicional em relacao a classe, equacao

2.12

tmin = arg mint∈T

( |C1||C| H(C1) +

|C2||C| H(C2)

)(2.12)

onde:

- C1 e C2 sao os subconjuntos do conjunto C, fraccionado de acordo com a particao do

Page 56: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 38

atributo Xi no ponto t, ou seja,

- |C1| e |C2| e o numero de instancias em cada conjunto, C1 e C2, respectivamente.

Entre todos os candidatos o metodo escolhe o que apresenta o valor de menor entropia.

O metodo aplica esta heurıstica recursivamente ate chegar a um criterio de paragem. O

minimum description length(MDL) e aplicado como criterio de paragem. O metodo e

recursivo e em cada um os subconjuntos o algoritmo para quando se verifica a seguinte

condicao:

Ganho(C|X) <log2(|C| − 1)

|C| +4(C, X)

|C| (2.13)

onde:

- 4(C,X) = log2(3k − 2)− [k.Ent(C)− k1.Ent(C1)− k2.Ent(C2)]

- k e a quantidade de classes existente no conjunto C

- k1 e a quantidade de classes existente no conjunto C1

- k2 e a quantidade de classes existente no conjunto C2

Este e um metodo bastante usado na literatura. Um metodo supervisionado, global e

estatico. Univariado, pois discretiza uma variavel contınua em relacao a somente uma

outra variavel. Supervisionado, ja que a variavel e discretizada em relacao a variavel

da classe. Global, uma vez que todas as instancias sao relevantes a discretizacao. Este

e ainda um metodo hierarquico que efectua uma discretizacao do topo para baixo, por

esta razao o metodo descreve uma arvore durante sua aplicacao (figura 2.6).

Iterative-improvement discretization Este metodo foi apresentado por Pazzani

[Paz95], este cria inicialmente um conjunto de intervalos usando o Equal-interval

Binning ou o recursive entropy minimization. Apos a criacao destes intervalos o metodo

tenta melhorar a discretizacao iterativamente. Para tentar efectuar este melhoramento

o metodo define dois operadores: juntar dois intervalos adjacentes e separar um

Page 57: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 39

intervalo em outros dois introduzindo um ponto de corte no meio de cada um dos

valores do intervalo. Em cada ciclo da iteracao o metodo avalia as operacoes possıveis

no conjunto de dados recorrendo a taxa de erro por validacao cruzada no conjunto de

treino. O metodo para quando nao existe nenhuma operacao que melhore a taxa de

erro.

Este e um metodo que pode obter bons resultados, no entanto para grandes conjuntos

de dados, este metodo e excessivamente demorado, pois este testa todas as opcoes o

que significa que para grandes conjuntos de dados o metodo se torna excessivamente

lento e complexo.

D2 Catlett [Cat91] explorou o uso da entropia para a discretizacao baseado nas arvores

de decisao de Quilan [Qui93]. Este metodo escolhe o primeiro ponto de corte da mesma

forma que ID3, usando a formula pela qual calcula o ganho de informacao em todos

os possıveis pontos de corte. Os seguintes pontos de corte sao achados recursivamente

baseados nos intervalos que surgiram pelos pontos de conte anteriores. Ao contrario

do ID3 o D2 e um metodo global que dispoe de condicoes para parar[DKS95].

ChiMerge apresentado por Kerber [Ker92] em 1992. Este e um metodo de bottom-up,

pois comeca por colocar cada valor em intervalos separados. De seguida o ChiMerge

considera as relacoes entre atributos e classes com o uso da medida estatıstica χ2

. A ideia basica e: se a concatenacao de dois valores contınuos (ou intervalos) nao

afecta a diferenciacao dos valores da classe, entao ela deve ser feita. Caso os considere

similares junta-os num mesmo intervalo. Este repete o teste em ciclo para os intervalos

adjacentes e para quando e atingido um criterio. Normalmente aconselha-se que alem

que por o χ2 − threshold tambem se imponha um numero maximo de intervalos, para

prevenir um numero excessivo. Este e um metodo supervisado, parametrico, global,

hierarquico.

1-R discretization apresentado por Holte [R.C93], este e um metodo supervisado que

tenta dividir os intervalos em intervalos puros (intervalos que apenas contem instancias

Page 58: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 40

com um valor da classe). Para que nao exista um excesso de intervalos o algoritmo

segue ainda a regra de cada intervalo ter um numero mınimo de instancias, este numero

.

StatDisc discretization Este metodo [MR95], usa testes estatısticos, tal como o

ChiMerge, para determinar a discretizacao. Este e um metodo hierarquico que se

separa em tres fases:

1. Inicializacao dos intervalos, como e um metodo que segue o bottom-up, inicializa-

se o metodo com cada valor distinto num intervalo.

2. Cria uma hierarquia com as discretizacoes, para calcular essa hierarquia o metodo

efectua o teste φ para todos os intervalos adjacentes. De seguida junta os

adjacentes de menor valor φ e junta dois conjuntos, criando deste modo outro

nıvel, este ciclo repete-se ate que se obtenha apenas uma particao.

3. O ultimo passo consiste na escolha do nıvel da hierarquia obtida. Esta pode ser

escolhida pelo utilizador ou o metodo procura a que melhor se adequa.

Este metodo e semelhante ao ChiMerge, mas o teste estatıstico que usa e outro. Para

alem disto o ChiMerge apenas consegue juntar dois intervalos adjacentes, enquanto que

o StaDisc consegue juntar N intervalos adjacentes num passo.

2.4 Resumo

Neste capıtulo efectua-se uma revisao bibliografica sobre tres areas: classificadores

Bayesianos, aprendizagem incremental e metodos de discretizacao. Estes sao os

conceitos de base das propostas dos capıtulos seguintes.

Assim inicia-se introduzindo alguns conceitos base dos classificadores Bayesianos.

De seguida analisa-se o mais simples dos classificadores Bayesianos, o naive Bayes.

Page 59: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 2. CLASSIFICACAO E APRENDIZAGEM NO MUNDO REAL 41

Mostra-se como se pode passar do naive Bayes para o TAN calculando uma arvore de

dependencias em que n − 1 atributos sao dependentes da classe e de outro atributo

[FGL98]. Efectua-se uma breve referencia a alguns trabalhos existentes sobre variantes

do TAN. De seguida aborda-se a area da aprendizagem incremental. Define-se a

aprendizagem incremental e analisa-se as suas vantagens e desvantagens. Sao ainda

revistos e analisados os trabalhos com o TAN na area da aprendizagem incremental.

Passa-se de seguida ao tema da discretizacao, onde se define quais os tipos de variaveis

existentes. Evidencia-se porque o TAN como apresentado por Friedman nao aceita

variaveis continuas. Analisa-se a importancia de um algoritmo lidar com variaveis

continuas. E descrita a importancia da discretizacao e suas possıveis topologias.

Efectua-se uma revisao de alguns dos metodos de discretizacao existentes.

Deste modo, tenta-se apresentar resumidamente os conceitos que sao utilizados nos

proximos capıtulos. No Capıtulo 3 e apresentado um novo algoritmo que seguindo os

conceitos e topologia do TAN, implementa o algoritmo de modo incremental. No

Capıtulo 4 e sugerido que com a implementacao de algoritmos incrementais tem

vantagens o uso de metodos de discretizacao incrementais. Para que o algoritmo

aproveite os novos exemplos nao so para melhorar o modelo mas tambem para melhorar

a discretizacao encontrada inicialmente.

Page 60: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

Capıtulo 3

Estudo de um classificador TAN

Incremental

Os algoritmos incrementais sao igualmente denominados por algoritmos actualizaveis

[Saa98]. A aprendizagem de modo naturalmente incremental e um dos objectivos

da area de aprendizagem automatica. Neste capıtulo e abordado um algoritmo que,

seguindo a metodologia do TAN, se comporta de modo incremental. Este mantem

diversas estatısticas de forma a manter as estimativas de probabilidades e efectuar

uma actualizacao a arvore de dependencias quando chegam novos dados.

Neste capıtulo descreve-se como obter o algoritmo e prova-se empiricamente que este

apresenta um desempenho muito semelhante ao TAN de Friedman [FG96].

O capıtulo esta organizado do seguinte modo:

1. descricao do TANi, algoritmo que implementa o TAN de forma incremental.

2. consideracoes sobre o TANi, suas vantagens e limitacoes.

3. resultados experimentais do TANi, ao qual sao efectuados diversos de testes:

(a) comparacao do desempenho em termos da taxa de acerto;

42

Page 61: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 43

Figura 3.1: Esquema do TAN (a) e do TANi (b)

(b) comparacao das arvores de dependencias encontradas pelo TAN e pelo TANi;

(c) analise da evolucao do desempenho ao longo do treino em termos da taxa

de acerto;

(d) analise da sensibilidade do algoritmo ao numero de instancias dos conjuntos

de exemplos apresentados em cada passo.

3.1 Descricao de um TAN incremental (TANi)

O TANi tem por base o estudo do Roure [Rou04]. Denominou-se o algoritmo por

Incremental Version of Tree Augmented Naive Bayes (TANi). Na primeira vez que

constroi o modelo, o TANi processa-se como o TAN (figura 3.1 - (a)), no primeiro

passo o TANi obtem a mesma estrutura que o TAN. No entanto o TANi pode receber

mais conjuntos de dados apos encontrar a estrutura que melhor se adapta ao conjunto

de exemplos ja analisado. Para que o algoritmo possa receber mais conjuntos de dados,

Page 62: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 44

este contem duas estruturas fundamentais:

1. guarda a a frequencia dos valores por classe e por cada dois atributos, estas sao

chamadas na literatura de estatısticas de segunda ordem [Hec97a];

2. A informacao mutua entre todos os pares de atributos.

Assim o algoritmo fica preparado para nos proximos passos actualizar o modelo com

base nas estatısticas guardadas (figura 3.1 - (b)), ou seja, sempre que surgem novos

dados o algoritmo actualiza as estatısticas de segunda ordem e a arvore de dependencias

que melhor que se adapta a nova distribuicao de probabilidades.

A segunda fase do algoritmo pode ser separada em duas partes distintas:

1. Actualizacao das particoes com as estimativas das probabilidades;

2. Obtencao da arvore de dependencias que melhor se adapta a nova distribuicao

de probabilidades.

Na fase seguinte assume-se que quando o algoritmo analisa mais exemplos de treino,

estes alteraram a distribuicao de probabilidades. Este facto nao implica que a arvore

de dependencias se altere. A analise da figura 3.1 permite uma melhor compreensao

do algoritmo pois, esta esquematiza o seu processo.

Na figura 3.1 pode-se observar do lado esquerdo a metodologia do TAN, este a partir

de um conjunto de dados inicia a construcao de um modelo. Modelo esse que gera

uma arvore de dependencias e um grupo de particoes que contem a distribuicao de

probabilidades do conjunto de dados. Para o caso do TANi, este segue num primeiro

passo o lado esquerdo da figura 3.1-(a), seguindo depois o esquema do lado direito da

figura 3.1-(b). Quando chegam novos dados, o algoritmo da inıcio a reavaliacao do

modelo. Esta reavaliacao do modelo consiste na actualizacao do grupo de particoes

que guardam a distribuicao de probabilidades e na geracao de uma nova arvore

Page 63: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 45

de dependencias entre os atributos, que melhor represente a nova distribuicao de

probabilidades.

Descreve-se de seguida cada um destes dois passos em pormenor, analisando primeiro

a actualizacao das particoes e de seguida a actualizacao da arvore de dependencias.

3.1.1 Actualizacao das particoes da estimativas das probabil-

idades

A manutencao de uma estimativa das probabilidades correcta implica manter conta-

dores em cada uma das particoes, ou seja, o algoritmo guarda a distribuicao de valores

de dois atributos por classe, entre todas as combinacoes de atributos. Estas estatısticas

podem ser apelidadas de estatısticas de segunda ordem.

Como ja descrito, o naive Bayes e um algoritmo incremental devido a sua natureza.

Assim, a comparacao dos custos da implementacao da incrementalidade do TAN

com um algoritmo da mesma area e naturalmente incremental permite uma melhor

compreensao do custo que esta operacao representa.

A analise da quantidade de informacao que e necessario manter torna necessaria a

introducao de algumas notacoes.

Sendo Xj o atributo, xj um possıvel valor do atributo e D o conjunto de exemplos,

a notacao NDxn,xj ,c(xn, xj, c) representa o numero de instancias em D, onde Xi = xi,

Xj = xj e C = c. Assim NDxi,xj ,c representa o vector ND

xn,xj ,c(xn, xj, c) para todos os

possıveis valores das variaveis Xi, Xj e C. Considerando Vi como o numero de possıveis

valores do atributo e VC o numero de classes, se n for o numero de atributos, para se

obter o numero de particoes(np) que e necessario guardar temos:

naive Bayes: Vc +∑n

i=1 Vi × VC

TANi: VC +∑n

i=i Vi × VC +∑n

i=1

∑nj=1 Vi + Vj + VC

Page 64: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 46

Estatısticas

Vi, Vj e VC n 1a ordem 2a ordem

3 3 30 273

3 6 57 1029

5 9 230 10355

5 10 255 12755

10 100 10010 10010010

10 200 20010 40020010

10 1000 100010 1000100010

10 5000 500010 25000500010

Tabela 3.1: Crescimento das estatısticas de primeira e segunda ordem

Na tabela 3.1 podemos analisar o crescimento das estatısticas de primeira e segunda

ordem a medida que o numero de atributos e valores por atributo aumentam.

Se se comparar o numero de contadores necessarios para o naive Bayes com os

necessarios para o TAN verifica-se que o TAN necessita de guardar um maior numero de

particoes. No entanto este numero nao torna proibitiva a sua utilizacao. Na literatura

pesquisada existem solucoes propostas que diminuem o tamanho ocupado por tais

estatısticas e aceleram a pesquisa das mesmas. Para mais informacao sobre o assunto

consultar [ML98]. De notar que esta foi a mesma solucao por que Roure optou no seu

algoritmo.

3.1.2 Actualizar a arvore de dependencias

A conclusao da actualizacao depende agora, apenas da obtencao da nova arvore de

dependencias entre os atributos. Uma vez que se trata de um algoritmo incremental,

este e capaz de calcular a nova arvore de dependencias sem recorrer aos exemplos ja

analisados pelo modelo. Por essa razao quando se calcula pela primeira vez o TAN o

Page 65: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 47

procedimento e o seguinte:

1. Calculo da informacao mutua entre todos os pares Xi, Xj, seguindo a formula

2.6;

2. Construcao da arvore de dependencias (figura 2.4).

Apos a construcao da arvore a informacao mutua entre todos os pares de variaveis Xi,

Xj e guardada num vector que se ira denominar por ID.

I ′′D(Xi; Xj|C) = ID(Xi; Xj|C)× N

N + N ′ + I ′D(Xi; Xj|C)× N ′

N + N ′ ,∀i,j,i6=j (3.1)

Quando novos dados chegam seguem-se os seguintes passos:

1. Calculo da informacao mutua, apenas para os novo conjunto de dados, recorrendo

novamente a formula 2.6.

2. Guardar a informacao mutua calculada no passo anterior num vector, denomi-

nado por I ′D.

3. Somar o vector da informacao mutua (IP ) com o calculado no passo anterior (I ′D)

atraves da formula (3.1).

4. Calcular a nova arvore de dependencias com o novo vector de informacao mutua

obtido no passo anterior (I ′′D).

De salientar que se ira denominar por N o numero de exemplos e N ′ como o numero de

exemplos que se pretende adicionar a nossa base de conhecimento. A formula seguinte

permite o calculo do novo vector de informacao mutua:

Uma vez que I ′′D e uma soma ponderada, a influencia de cada um dos vectores de

informacao mutua e directamente proporcional ao numero de casos que representa. O

Page 66: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 48

ultimo passo e o recalcular da arvore de dependencias com base no novo vector de

dependencias I ′′D.

De notar que o TANi segue a mesma metodologia que o TAN-ACO de Roure, ou seja,

este e baseado na soma das informacoes mutuas entre cada par de atributos. As duas

diferencas entre o TANi e o algoritmo descrito por Roure sao:

1. O TANi efectua uma soma ponderada das informacoes mutuas, enquanto que

o TAN-ACO apenas efectua a soma das informacoes mutuas. Em ambientes

dinamicos a soma simples tem vantagens sobre a soma ponderada pois com a

soma simples da informacao mutua o algoritmo reflecte mais rapidamente as

alteracoes do ambiente, uma vez que os novos exemplos tem o mesmo peso na

estrutura que os ja processados. A soma pesasa das informacoes mutuas tem

como vantagem uma aproximacao a versao nao incremental do TAN.

2. O TANi reconstroi sempre toda a arvore de dependencias, enquanto que o TAN-

ACO apenas reconstroi no ponto em que detecta uma alteracao na ordem com

que cada ramo da arvore de dependencias foi introduzido. Reconstruir a arvore

da raiz, apresenta a vantagem de esta teoricamente aproximar-se mais a arvore

do algoritmo nao incremental. A desvantagem e que este processo pode demorar

mais tempo. Mas mais a frente vamos analisar com este facto com maior detalhe.

3.1.3 Consideracoes sobre o algoritmo proposto

O algoritmo proposto segue a definicao de incrementalidade proposta por Langley

[Lan95].

Num estudo sobre o custo associado a incorporacao de novos exemplos na base de

conhecimento, verifica-se que a segunda fase do TANi se divide em dois grandes

calculos (processamento): calculo da informacao mutua e construcao da nova arvore

de dependencias.

Page 67: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 49

o calculo da informacao mutua tem um custo associado de O(n2.N) [FG96], em

que n e o numero de atributos e N o numero de instancias, que e exponencial. No

TANi o tempo de processamento gasto no calculo do novo vector de informacao

mutua e apenas para os novos dados. Uma vez que este e directamente

proporcional ao numero de novos exemplos que se quer incorporar ao novo

algoritmo, o tempo gasto para incorporar dois ou tres exemplos e fixo e

computacionalmente aceitavel, tal como a definicao de Langley sugere.

Uma questao podera surgir: Uma vez que se mantem as estatısticas de segunda

ordem, porque nao se recalcula a informacao mutua para todos os exemplos?

No entanto esta pode nao ser uma opcao viavel computacionalmente. Um

computador dispoe de memoria primaria e secundaria. Considerando a memoria

primaria a memoria cache e RAM. Como memoria secundaria considera-se o disco

rıgido.

As estatısticas de segunda ordem podem atingir valores na ordem dos megas

ou mesmo gigas. Caso se calculasse a informacao mutua para todos os casos

terıa-se de recorrer as estatısticas de segunda ordem, o que poderia tornar o

processo de incorporacao de poucos exemplos demasiado moroso, tornando-o

incomportavel. Contudo, com este algoritmo apenas e necessario manter em

memoria o resumo da informacao mutua, o que e admissıvel para a memoria

primaria. Recorrendo pontualmente as estatısticas de segunda ordem, podendo

estas estarem localizadas na memoria secundaria. Estas apenas sao necessarias

quando a arvore de dependencias se altera. E por cada ramo que se altera da

arvore apenas e necessaria a tabela de probabilidades entre os dois atributos e a

classe. O que tambem e admissıvel computacionalmente.

construcao da nova arvore de dependencias o custo associado a construcao da

arvore e O(n2. log n) [FG96] (onde n representa o numero de atributos). Sendo

o calculo da arvore linear e independente do numero de exemplos representados

pelo modelo, o seu custo esta relacionado com o numero de atributos existentes,

Page 68: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 50

o que significa que e o mesmo quer se adicione um ou um milhao de exemplos

ao modelo. Por esta razao a opcao de recalcular a arvore e admissıvel quer em

termos de tempo, quer em termos de peso computacional. De notar que o custo

da construcao da arvore depende apenas do numero de atributos do conjunto de

dados e o seu crescimento e linear.

Para a actualizacao da distribuicao da probabilidade e necessario manter as estatısticas

de segunda ordem e esta actualizacao pode-se revelar o maior requisito em termos de

memoria. No caso de conjuntos de dados com centenas ou milhares de atributos, este

tipo de estatısticas pode necessitar de valores na ordem dos gigabytes, fazendo por isso

sentido, apenas guarda-las em memoria secundaria.

O modelo TAN foi estendido para um modelo incremental (TANi), que reavalia o TAN

quando chegam novos dados. No entanto, dada a sua natureza, o modelo apenas

reavalia a arvore de dependencias quando recebe um conjunto de dados com mais de

um exemplo. Ou seja, uma vez que a informacao mutua e calculada com base nos novos

exemplos, se o novo conjunto de dados apenas apresentar um exemplo, cada atributo

identifica o outro univocamente. Desta forma, a informacao mutua entre os atributos e

maxima, o que significa que nao vai modificar o vector da informacao mutua. Todavia,

existem formas de contornar este problema. E possıvel estabelecer um numero mınimo

para proceder a actualizacao da arvore de dependencias. Os efeitos deste tipo de buffer

no desempenho do algoritmo e estudado ainda neste capıtulo.

3.2 Avaliacao e resultados

Esta seccao tem por objectivo avaliar o desempenho do TANi. Para tal foram efectu-

ados varios tipos de testes, utilizando conjuntos de dados do repositorio de dados da

Universidade da California, Irvine [BM98], que e um repositorio de dados para a area de

aprendizagem automatica bastante usado na literatura. Os conjuntos de dados usados

Page 69: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 51

Figura 3.2: Esquema da validacao cruzada (com dez pastas).

podem ser encontrados no site http://www.ics.uci.edu/ mlearn/MLRepository.html.

Nas experiencias foi utilizada a validacao cruzada, de acordo com a descrita por Kohavi

[Koh95]. A validacao cruzada pode ser estratificada ou nao estratificada. A primeira

cria pastas com um numero de instancias por pasta aproximado. A segunda escolhe

aleatoriamente o numero de instancias por pasta.

Os dados (D) foram separados de forma aleatoria em k pastas mutualmente exclusivas

de tamanho aproximado, isto e, foi utilizada uma validacao cruzada estratificada, da

qual se pode ver um exemplo na figura 3.2.

O classificador foi treinado e testado k vezes. De cada vez que se corre o modelo este

e testado com Dt, t ∈ 1, 2, ..., k, e o treino foi o conjunto de dados D − Dt. A figura

3.3 representa um exemplo desta segunda fase.

A estimacao do erro foi calculada com base no total de instancias mal classificadas em

Dt a dividir pelo numero de instancias.

Page 70: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 52

Repetir k vezes:

Figura 3.3: Esquema da segunda fase da validacao cruzada.

Uma vez que os algoritmos testados (TANi e TAN-ACO) sao incrementais, estes sao

afectados pela ordem com que se apresentam os dados. Para contornar este problema,

para os testes, os dados foram ordenados aleatoriamente.

Devera ainda referir-se que as instancias dos conjuntos de dados que continham valores

em falta foram retiradas.

Na tabela 3.2 pode-se analisar algumas caracterısticas dos conjuntos de dados, como

o numero de atributos, numero de possıveis valores da classe e numero de instancias

do conjunto. Na seccao 3.2.1 compara-se as estruturas das arvores gerada pelo TANi

com as das arvores geradas pelo TAN. Na seccao seguinte o desempenho do TANi e

comparado com os algoritmos: naive Bayes, TAN, TAN-ACO, Bayes Network e uma

implementacao de uma arvore de classificacao. De seguida procede-se a um estudo

da evolucao do desempenho do TANi a medida que este tem acesso a mais casos. As

experiencias terminam testando o impacto que tem na aprendizagem incremental a

variacao do numero de exemplos por pasta.

Page 71: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 53

Figura 3.4: Resultados da diferenca ente as ligacoes na rede encontrada pelo TAN da

encontrada pelo TANi. No eixo horizontal tem-se o numero do passo ( que dividindo

o numero de exemplos do conjunto de dados pelo numero do passo obtemos o numero

de exemplos analisados) e no eixo vertical tem-se a diferenca entre as arvores (em

percentagem).

Page 72: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 54

3.2.1 Estudo das arvores geradas pelo TANi

Como ja foi referido, a diferenca entre o naive Bayes e o TAN reside no facto de no

naive Bayes partir do principio que os atributos sao condicionalmente independentes

entre si. Enquanto que o TAN encontra uma arvore de dependencias em que (n-1)

atributos dependem de outro, para o naive Bayes todas os atributos sao independentes

entre si.

A construcao do modelo TAN permite encontrar a arvore de dependencias que

representa as dependencias entre atributos no conjunto dos dados pois, como descrito

pela revisao bibliografica, o TAN encontra de modo eficiente a arvore de dependencias.

Nesta seccao, compara-se a arvore de dependencias encontrada pelo TANi, com a

encontrada pelo TAN. Ambos os algoritmos tentam encontrar a arvore de dependencias

que melhor representa o conjunto de dados. O TANi efectua a procura num modo

incremental e o TAN efectua o mesmo processo tendo acesso a todo o conjunto de dados.

Este teste evidencia a diferenca que existe entre a arvore encontrada incrementalmente

e a encontrada tendo acesso a todo o conjunto de dados.

Este teste foi apenas efectuado para conjuntos de dados com mais de quinze atributos.

Com este numero de atributos o numero de possıveis arvores e sempre superior a

13×1011. Este e um espaco de procura suficiente grande para que ambos os algoritmos

encontrem arvores diferentes.

Para efectuar o teste os conjuntos de dados foram separados em dez partes (k1,k2,...,k10)

e o processo separado igualmente em dez partes ( iε1, ..., 10). Para cada um dos dez

passos, foi usada a seguinte metodologia:

TAN Em cada um dos passos o algoritmo era treinado com o conjunto de dados kj,

em que este conjunto e igual ao conjunto do passo anterior (kj−1) mais o conjunto

de dados desse passo (ki).

Page 73: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 55

TANi No caso do TANi, apenas se gerou uma vez o modelo, para o primeiro conjunto

de dados. O modelo era em seguida reavaliado, adicionando ao modelo o conjunto

de dados ki.

Em cada um dos passos a arvore gerada pelo modelo era guardada. De notar que no

primeiro passo a arvore e igual para o TAN e para o TANi, logo a diferenca entre as

arvores e sempre zero no primeiro passo. A este passo seguem-se mais nove.

Na figura 3.4 e possıvel observar para os conjuntos de dados seleccionados, as diferencas

em percentagem entre as arvores que foram sendo geradas por cada um dos modelos.

De salientar que na tabela 3.2 se observa o numero de atributos que cada conjunto

de dados contem. O eixo do x contem o numero de passos e o eixo dos y a diferenca

em percentagem. Por exemplo, se se considerar a diferenca de 50% e o conjunto de

dados tiver 21 atributos significa que existem dez ramos iguais e dez ramos da arvore

de dependencias diferentes.

Tomando como exemplo o conjunto de dados do ’Chess’, a diferenca maxima encontrada

entre os atributos foi de 23%, o que significa que existem oito ramos da arvore de

dependencias diferentes. Deve-se no entanto ter em atencao que o universo de escolha

de possıveis arvores e de 35! = 103337.

A analise da figura 3.4 permite ainda verificar que na maior parte dos conjuntos de

dados a diferenca entre as arvores se mantem constantes ao longo das diversas etapas.

Este facto apenas nao se verifica para o conjunto de dados ’Audiology’ em que a

diferenca vai sempre aumentando. Enquanto que, para o restante conjunto de dados

a diferenca mantem-se constante a partir de uma determinada etapa. Mesmo no caso

do conjunto de dados ’Audiology’ a curva parece querer estabilizar a partir da quinta

etapa. De notar que o conjunto de dados ’Audiology’ dispoe de 69 atributos e apenas

226 exemplos. O que significa que por pasta existiam aproximadamente 23 exemplos.

Tendo em conta este facto, a diferenca entre as arvores e atenuada.

Page 74: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 56

De notar que existem conjuntos de dados, nomeadamente o ’Chess’ e o ’Mushroom’

nos quais a diferenca entre as arvores e muito baixa. Este facto pode indicar que as

dependencias entre os atributos sao claras e que por essa razao ambos os algoritmos

encontram praticamente a mesma arvore de dependencias.

Em conjuntos de dados como o ’BackupLarge’ ou o ’Primary Tumor’ as diferencas

tomam valores mais altos, sugerindo que as dependencias entre os atributos podem

nao ser tao claras.

Analisando os graficos como um todo, estes indicam que as diferencas nao sao

substanciais. Assim, pode-se chegar a conclusao que no espaco de procura que existe,

ambos os algoritmos tem um comportamento semelhante.

3.2.2 Analise do desempenho do TANi

Nesta seccao pretende-se avaliar o desempenho do algoritmo proposto em termos da

taxa de acerto.

Para podermos ter alguma referencia, o algoritmo foi comparado com o desempenho do

naive Bayes (implementacao do WEKA), rede Bayesiana (implementacao do WEKA

com as opcoes que vem por defeito), arvore de classificacao ( implementacao do

algoritmo J48 do WEKA com as opcoes que vem por defeito), TAN e TAN-ACO

(implementacao do autor). Infelizmente o programa do Roure (implementacao do TAN-

ACO) nao permite correr um conjunto de dados de treino e de seguida testar o modelo

com um conjunto de teste. O programa apenas permite dar um conjunto de dados e

o proprio programa escolhe o conjunto de teste e o conjunto de treino, apresentando o

resultado final. Assim, os resultados apresentados na tabela 3.2 representam o resultado

obtido pelo programa do autor dando o total do conjunto de dados.

De notar que a metodologia para a avaliacao da taxa de acerto foi ja descrita. Os

conjuntos de dados seguidos com o sinal ′∗′, sao conjuntos de dados que contem

Page 75: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 57

WEK

AW

EK

AW

EK

A

Conju

nto

de

dados

Atr

ibuto

sIn

stancia

sC

lass

es

naiv

eB

ayes

J48

Bayes

Net.

TA

N-A

CO

TA

NTA

Ni

Hepati

tis

*19

80

287.5

0+

/-

8.3

385.0

0+

/-

11.5

90.0

0+

/-

9.8

669.2

387.5

0+

/-

10.2

90.0

0+

/-

7.9

1

Hayes-

roth

data

4133

382.6

4+

/-

9.4

567.4

7+

/-

11.8

82.6

4+

/-

9.4

575.0

067.9

1+

/-

6.1

773.3

5+

/-

10.6

lym

phogra

phy

19

148

446.6

7+

/-

11.2

50.6

7+

/-

14.8

47.3

3+

/-

11.8

36.7

343.8

1+

/-

11.1

42.3

3+

/-

14.7

Iris

*4

150

395.3

3+

/-

7.0

694.6

7+

/-

5.2

695.3

3+

/-

7.0

696.0

094.0

0+

/-

4.9

294.6

7+

/-

5.2

6

Win

e*

13

178

398.8

9+

/-

2.3

493.3

0+

/-

5.1

097.7

1+

/-

4.0

579.6

696.6

3+

/-

4.7

097.1

9+

/-

3.9

6

Gla

ss*

9214

674.2

9+

/-

5.9

875.6

7+

/-

8.2

273.8

1+

/-

6.4

117.2

576.5

6+

/-

7.1

877.0

1+

/-

7.3

7

Audio

logy

69

226

24

70.4

3+

/-

6.4

776.5

2+

/-

6.4

075.7

1+

/-

6.2

080.0

064.7

8+

/-

13.7

66.5

2+

/-

12.9

Heart

*13

270

283.3

3+

/-

8.9

582.9

6+

/-

7.8

583.3

3+

/-

8.9

582.2

282.9

6+

/-

8.9

482.2

2+

/-

9.6

9

Cle

ve

*13

296

283.1

7+

/-

5.5

579.0

7+

/-

4.6

283.1

7+

/-

5.5

577.5

680.0

9+

/-

3.5

880.4

5+

/-

4.4

9

Sola

r12

323

662.2

1+

/-

5.7

570.2

7+

/-

7.6

872.1

0+

/-

11.2

59.8

172.1

4+

/-

5.8

472.4

5+

/-

5.9

0

Liv

er-

dis

ord

er

*6

345

263.3

9+

/-

6.0

759.6

0+

/-

10.1

63.6

7+

/-

6.3

055.3

162.9

7+

/-

6.7

062.6

9+

/-

6.2

0

Cars

*8

393

386.4

9+

/-

7.0

997.4

5+

/-

1.6

988.5

3+

/-

6.9

367.9

496.9

6+

/-

3.7

298.7

4+

/-

1.7

8

Soybean-larg

e35

562

15

91.6

4+

/-

4.1

091.4

7+

/-

3.7

292.0

0+

/-

4.2

882.3

591.6

5+

/-

4.2

490.7

6+

/-

4.4

0

Bre

ast

Loss

*32

569

297.5

1+

/-

2.0

895.7

6+

/-

2.3

297.5

1+

/-

2.0

899.1

196.6

3+

/-

2.6

096.7

8+

/-

2.6

7

Pim

a*

9768

278.1

2+

/-

2.9

277.3

4+

/-

3.2

378.1

2+

/-

2.9

280.4

778.1

2+

/-

3.3

478.1

2+

/-

3.4

5

Dia

bete

s*

8768

277.9

9+

/-

3.9

377.2

1+

/-

5.5

977.9

9+

/-

3.9

379.6

979.1

6+

/-

3.1

277.7

3+

/-

4.0

0

Tic

-tac-t

oo

9958

269.9

4+

/-

4.1

386.0

1+

/-

3.1

369.9

4+

/-

4.1

361.8

876.3

1+

/-

4.3

376.7

2+

/-

3.8

5

Tokyo

*44

959

291.9

7+

/-

2.2

593.3

2+

/-

2.1

092.1

8+

/-

1.9

893.1

092.4

9+

/-

2.9

092.3

9+

/-

2.9

1

Germ

an

*20

1000

274.7

0+

/-

3.7

773.0

0+

/-

2.8

774.6

0+

/-

3.8

475.1

472.6

0+

/-

4.0

173.3

0+

/-

3.2

0

Car

61727

485.4

2+

/-

1.6

791.8

4+

/-

2.1

085.4

7+

/-

1.8

162.1

594.2

7+

/-

2.2

392.2

4+

/-

2.7

3

Splice

60

3190

395.3

6+

/-

0.7

294.5

5+

/-

1.3

395.4

2+

/-

0.7

493.5

195.3

3+

/-

1.0

795.3

0+

/-

1.1

0

Chess

36

3198

288.0

5+

/-

1.7

599.4

7+

/-

0.4

488.0

8+

/-

1.7

384.7

792.3

4+

/-

0.6

093.0

0+

/-

1.0

4

Wavefo

rm*

41

5000

380.7

2+

/-

1.2

076.2

8+

/-

1.1

880.7

2+

/-

1.2

182.9

580.2

8+

/-

1.5

481.9

8+

/-

1.3

6

Churn

*20

5000

287.9

2+

/-

1.1

393.5

4+

/-

0.6

087.9

4+

/-

1.0

876.4

390.9

8+

/-

1.6

587.5

4+

/-

1.2

9

Sate

lite

Image

*36

6435

282.4

4+

/-

1.3

285.3

3+

/-

1.2

282.5

2+

/-

1.4

380.7

487.8

3+

/-

1.1

087.8

8+

/-

1.6

8

Mush

room

22

8124

764.4

4+

/-

1.2

162.2

3+

/-

1.8

164.7

6+

/-

1.2

130.6

965.6

6+

/-

1.6

866.1

5+

/-

1.4

5

Nurs

ey

812961

590.2

4+

/-

0.6

897.1

9+

/-

0.2

790.2

5+

/-

0.6

662.6

493.4

6+

/-

0.6

992.4

5+

/-

0.8

8

Adult

*14

45222

283.7

2+

/-

0.4

586.2

9+

/-

0.3

883.7

6+

/-

0.4

585.2

385.8

5+

/-

0.5

385.6

8+

/-

0.4

8

Shutt

le*

958000

799.4

5+

/-

0.1

599.9

1+

/-

0.0

499.4

6+

/-

0.1

499.9

199.9

4+

/-

0.0

499.9

3+

/-

0.0

4

Sle

ep

13

105908

568.2

2+

/-

0.3

072.3

5+

/-

0.5

668.2

2+

/-

0.3

067.6

873.1

7+

/-

0.3

773.2

5+

/-

0.3

2

Media

da

taxa

de

acert

o81.4

182.8

682.0

873.1

782.4

182.6

3

Rankin

g5

14

63

2

Media

do

rankin

g3.4

33.5

32.8

74.4

3.1

2.9

7

Tab

ela

3.2:

Tax

ade

acer

tos

dos

algo

ritm

osna

ive

Bay

es,re

deB

ayes

iana

,ar

vore

decl

assi

ficac

ao,TA

Nie

TA

N-A

CO

para

trin

taco

njun

tos

deda

dos

Page 76: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 58

Repetir 10 vezes:

Figura 3.5: Esquema da segunda fase das validacao cruzada para os algoritmos

incrementais .

Page 77: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 59

atributos contınuos. Como nesta capıtulo apenas se pretende testar o TANi, os

atributos contınuos destes conjuntos de dados foram discretizados com a aplicacao

categorize do MLC++ [KSD96].

Com excepcao do TAN-ACO, todos os algoritmos correram as mesmas pastas

mutualmente estratificadas e em particular os conjuntos de teste foram os mesmos

para todos os passos da validacao cruzada.

Para o TANi, que reavalia o modelo, em cada passo da validacao cruzada a metodologia

utilizada foi a seguinte (figura 3.5 ):

1. Os conjunto de treino foi divididos em dez pastas mutualmente exclusivas de

tamanho aproximado (estratificadas);

2. Com a primeira pasta dos dados (escolhida aleatoriamente), foi construıdo o TAN

com o algoritmo de Friedman;

3. As outras nove foram incrementadas, por ordem aleatoria, ao primeiro modelo

em nove passos;

Atraves da analise da tabela 3.2 verifica-se o naive Bayes consegue um melhor

desempenho quando os conjuntos de dados que contem menor numero de exemplos.

Este facto foi reportado por Friedman [FG96]. Nomeadamente, o naive Bayes tem o

melhor desempenho em quatro conjuntos de dados, todos eles fazem parte dos dez com

menos instancias.

A arvore de classificacao do WEKA e o que melhor desempenho apresenta, podendo-se

observar este facto na media da taxa de erro nos conjuntos de dados. Este algoritmo

foi melhor em sete dos trinta conjuntos de dados.

O algoritmo que apresenta melhor media de ranking e a rede Bayesiana.

Surpreendente e o facto de o TANi, apesar de ser incremental, melhorar os resultados

do TAN em dezoito conjuntos de dados, sendo o melhor em sete destes. Alem disso, e

Page 78: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 60

Conjunto de dados Instancias de treino Instancias de teste

Tic-tac-toe 480 468

Car 1150 577

Splice 2126 1064

Chess 2132 1066

Mushroom 5416 2708

Nursery 8640 4321

Tabela 3.3: Descricao da separacao do conjunto de dados em teste e treino para os

testes da figura 3.6

possıvel concluir que o TANi, em termos de desempenho, nao se afasta muito do TAN,

sendo este o objectivo principal. Gostaria no entanto de se realcar que para todos os

testes de validacao cruzada foi efectuado o teste de wilcox para verificar a diferenca

entre as medias da taxa de acerto, o teste Wilcoxon signed-ranks test / two-tailed test

nao encontrou diferencas significativas para nenhum conjunto de dados. Este teste vem

apenas comprovar que nao existem diferencas significativas entre o TAN e a sua versao

nao incremental (TANi), nao sendo por essa razao significativo o facto de o TANi ter

obtido melhor taxa de desempenho. Mas o que realmente e um bom indicador e o facto

de o teste de Wilcoxon nao ter encontrado diferencas significativas.

3.2.3 Comparando a evolucao do TANi, TAN

Nesta seccao pretende-se avaliar a evolucao do desempenho dos algoritmos a medida

estes tem acesso a mais instancias dos dados. Os algoritmos testados foram o TAN e

o TANi.

Os conjuntos de dados seleccionados (Tic-tac-toe, Car, Slice, Chess, Mushroom,

Nursery ) encontram-se descritos na Tabela 3.2. Apos a seleccao do conjunto de dados,

estes foram separados em dois conjuntos, treino e teste ( Tabela 3.3).

Page 79: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 61

Figura 3.6: Percentagem de acertos ao longo do treino do TAN e TANi com varios

conjuntos de dados.

Page 80: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 62

exemplos por pasta

Num pastas Chess Splice

1 2131 2127

10 ' 213 ' 212

100 ' 21 ' 21

500 ' 4 ' 4

1000 ' 2 ' 2

Tabela 3.4: Descricao dos conjuntos de dados para o teste da sensibilidade incremental

Para o teste, as instancias de treino foram separadas em dez pastas de tamanho

aproximado e mutuamente exclusivas. Ao algoritmo incremental foram adicionadas

as pastas. O algoritmo nao incremental era reiniciado cada vez que se acrescentava

uma pasta ao conjunto de pastas ja observada pelo algoritmo.

Os resultados (figura 3.6) indicam que ambos os algoritmos tem curvas de aprendizagem

bastante semelhantes. Estes tendem a subir a sua taxa de acerto a medida que tem

acesso a mais exemplos.

De salientar que a medida que os algoritmos tem acesso a mais exemplos estes tendem

a descrever curvas semelhantes, mesmo em conjuntos de dados em que o algoritmo de

nao incremental baixa a taxa de acerto o mesmo ocorre no algoritmo incremental. O

que indica confirmar a hipotese de a arvore de dependencias encontrada ser semelhante.

3.2.4 Analise da sensibilidade do algoritmo ao numero de

instancias apresentadas por pasta

Esta seccao, tem por objectivo estudar o desempenho do algoritmo quando este analisa

poucos exemplos de cada vez. Deste modo estuda-se a viabilidade de implementar o

TANi como algoritmo on-line.

Page 81: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 63

Conjunto de Dados Treino Teste

Splice 2131 1065

Chess 2127 1063

Tabela 3.5: Descricao da separacao do conjunto de dados em teste e treino para os

testes da figura 3.7

Para os testes escolheram-se dois conjuntos de dados, o ’Splice’ e o ’Chess’.

Na figura 3.7 pode-se observar a evolucao da taxa de acerto do TANi a medida que

este recebia mais instancias de treino. Na figura 3.7 pode-se observar a evolucao da

taxa de acerto para o TANi quando este recebia k instancias.

Na tabela 3.4 pode-se observar a relacao entre numero de instancias por pasta.

Gostaria-se de salientar que em cada uma das figuras 3.7 encontra-se ainda o resultado

obtido para o TAN e para o naive Bayes (WEKA) em modo nao incremental, estes

algoritmos foram adicionados apenas para servirem como referencia da taxa de acerto.

Os resultados do teste de sensibilidade incremental para os dois conjuntos de dados

escolhidos tem diferentes comportamentos. No caso do conjunto de dados ’Splice’:

• este indica que nao tem impacto no desempenho o facto de as pastas conterem

poucos exemplos;

• todos convergem para a mesma taxa de erro;

• o algoritmo nao incremental fica com uma taxa de erro superior aos modelos

incrementais, mesmo quando este tem mil pastas.

No caso do conjunto da dados ’chess’:

• o desempenho do algoritmo vai-se degradando a medida que o numero de

exemplos por pasta diminui;

Page 82: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 64

Figura 3.7: Evolucao da taxa de acerto do TANi quando treinado com diversos

tamanhos de pastas para os conjuntos de dados ’Chess’ e ’Splice’

Page 83: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 3. ESTUDO DE UM CLASSIFICADOR TAN INCREMENTAL 65

• os diversos tamanhos de pastas obtem taxas de acerto diferentes;

• A curva de aprendizagem acaba com uma taxa de acerto maior quando o numero

de instancias por pasta e maior.

Denota-se que para o conjunto de dados ’Splice’ o modelo final nao apresentou

diferencas significativas com diferentes tamanhos de pastas, o que nao acontece no

conjunto de dados ’chess’, onde os resultados finais revelaram que existe uma diferenca.

No conjunto de dados ’chess’, o desempenho, apesar de se degradar por existirem

poucos exemplos por pasta, nos casos em que o numero de exemplos por pasta eram

superiores a 20, o desempenho foi superior ao algoritmo nao incremental. Este facto

pode indicar alguma vantagem para o algoritmo incremental.

De notar no entanto na experiencia efectuada com mil pastas o modelo inicializou-

se com dois exemplos. Estas sao condicoes extremamente difıceis para uma rede

Bayesiana. No entanto em qualquer um dos casos o algoritmo melhora o seu

desempenho.

Page 84: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

Capıtulo 4

Abordagem incremental a

discretizacao

A discretizacao fornece uma alternativa a estimativa da densidade da probabilidade. No

calculo desta estimativa e assumida um tipo de densidade, que se sabe a partida que nao

e a real mas sim aproximada [DKS95], o que pode tender a degradar o desempenho dos

algoritmos. No entanto, alguns autores [DKS95, YW03] sugerem que a discretizacao

em classificadores, tal como o naive Bayes, obtem taxas de erro inferiores a estimativa

da funcao de probabilidades.

Por outro lado Catlett efectuou um estudo que lhe permitiu concluir que, para grandes

conjuntos de dados, a discretizacao reduz significativamente o tempo de aprendizagem

do modelo [Cat91].

Neste capıtulo e apresentada uma nova abordagem ao metodo de discretizacao.

Esta nova abordagem sugere uma metodologia que aborda a discretizacao de modo

incremental, desta forma esta e reformulada a medida que mais conjuntos de exemplos

sao disponibilizados. Este novo tipo de abordagem a discretizacao salienta duas das

questoes centrais para a area de aprendizagem automatica: a aprendizagem incre-

mental e a discretizacao como metodo de pre-processamento para alguns algoritmos

66

Page 85: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 4. ABORDAGEM INCREMENTAL A DISCRETIZACAO 67

incrementais.

O primeiro ponto foi focado nos capıtulos anteriores, nomeadamente no capıtulo 2 onde

foram revistas as caracterısticas do TAN. No capıtulo anterior (capıtulo 3) desenvolveu-

se uma versao incremental do TAN que se demonstrou obter resultados identicos ao

TAN mas de modo incremental.

O segundo ponto nao e muito focado na literatura analisada.

Assim, neste capıtulo aponta-se a motivacao para o desenvolvimento de uma dis-

cretizacao incremental. De seguida introduz-se uma nova abordagem a discretizacao, o

Pre-processamento incremental de Discretizacao (PiD), que consiste numa metodologia

que pode ser utilizada quer como discretizacao supervisionada, quer como discretizacao

nao supervisionada. O capıtulo prossegue com a avaliacao experimental do metodo,

terminando com algumas consideracoes aos resultados e ao metodo proposto.

4.1 Motivacao

Os humanos procedem a uma discretizacao que e facilmente comprovavel pois, quando

uma pessoa descreve uma outra, tende a discretizar certos atributos da pessoa,

nomeadamente a altura, a idade e o peso. Se se disser, por exemplo, que o Joao e

alto, novo e magro esta-se a proceder a discretizacao dos tres atributos mencionados.

No entanto, e possıvel chegar mais longe e afirmar que esta discretizacao se altera ao

longo do tempo de vida da pessoa. Assim e possıvel afirmar que os humanos dispoem

de uma discretizacao incremental. Se se pedir a um rapaz de quinze anos, por exemplo,

para definir o que e para ele um jovem, o rapaz certamente respondera que considera

um jovem uma pessoa com menos de vinte e cinco e um velho uma pessoa com mais de

cinquenta. No entanto, verifica-se que a sua percepcao de jovem ou velho se alterara

com a sua experiencia e idade. Caso se pergunte a mesma pessoa dez anos mais

tarde o seu conceito da idade ter-se-a provavelmente alterado, uma vez que o seu

Page 86: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 4. ABORDAGEM INCREMENTAL A DISCRETIZACAO 68

Figura 4.1: Processo de discretizacao em modo nao incremental

limite de juventude e velhice se alteraram. Quer-se com este exemplo ilustrar que a

sua discretizacao da idade se altera ao longo da vida, na medida em que as pessoas

ajustam a discretizacao as suas vivencias e experiencia de vida. Outros atributos

tambem sofrem alteracao pois, se perguntar-mos a um jovem se uma botija de gas

e pesada, este respondera provavelmente ”muito”. No entanto, se este na sua fase

adulta se tornar num culturista e lhe for colocada a mesma questao ele respondera

provavelmente ”nem por isso”.

Desta forma, uma das motivacoes e novamente a observacao dos humanos e a

incorporacao das suas capacidades em algoritmos da aprendizagem automatica.

A literatura conhecida refere-se aos algoritmos incrementais como uma evolucao natural

na area da aprendizagem automatica. No entanto, na maioria dos trabalhos quando

se procede a avaliacao de um algoritmo incremental, que nao trabalhe com atributos

contınuos, os autores optam por discretizar previamente o conjunto de dados [Rou04].

Tal como e possıvel visualizar na figura 4.1, o processo de discretizacao utilizado na

literatura com algoritmos incrementais, divide-se em quatro fases:

1. Discretizacao do conjunto de dados com o metodo escolhido;

2. Obtencao dos dados discretizados;

Page 87: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 4. ABORDAGEM INCREMENTAL A DISCRETIZACAO 69

Figura 4.2: Processo de discretizacao em modo incremental

3. Separacao do conjunto de dados em k pastas para o algoritmo incremental;

4. Teste ao algoritmo incremental em k passos.

Deve-se salientar que com o teste dos algoritmos se pretende analisar o seu desempenho,

para seja possıvel deduzi-lo no futuro e numa situacao real. No entanto, numa situacao

real o algoritmo nao tera acesso previo a todos os dados, o que indica que os resultados

obtidos podem ser enviesados. Assim, se a discretizacao for efectuada a medida que

o algoritmo tenha acesso aos dados, a discretizacao resultante seria diferente logo, os

seus resultados tambem seriam diferentes. Contudo, os respectivos autores apenas

pretendem testar o algoritmo, ignorando este aspecto.

Actualmente a discretizacao e encarada como um pre-processamento mas a verdade

e que esta tem um papel fundamental para o bom desempenho do algoritmo. Da

sua escolha depende a obtencao dos resultados, quer seja incremental ou nao. Assim

pretende-se obter um algoritmo que proporcione uma discretizacao incremental, ou

seja, que caso seja necessario acompanhe a alteracao dos dados. Na figura 4.2 e possıvel

observar o esquema do processamento da discretizacao de modo incremental.

Como referido no capıtulo dois, existem diversas motivacoes para o uso de algoritmos

incrementais, sendo uma delas a existencia de ambientes dinamicos. Nestes ambientes

Page 88: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 4. ABORDAGEM INCREMENTAL A DISCRETIZACAO 70

Preco 1990 1997 2004

500 e barato barato barato

1000 e barato normal normal

1500 e barato normal caro

2000 e normal caro caro

2500 e caro caro caro

Tabela 4.1: Discretizacao do preco de um computador ao longo do tempo

sobressaem as vantagens da utilizacao de uma discretizacao incremental, pois esta

pode evidenciar as alteracoes do ambiente, facilitando assim a interpretacao por parte

do algoritmo para a reformulacao do modelo.

Actualmente a discretizacao incremental em ambientes dinamicos possui uma elevada

importancia. Imagine-se, por exemplo, as aplicacoes que presentemente existem para

a extraccao de conhecimento a partir de grandes bases de dados. Estas bases de dados

podem conter as preferencias dos consumidores de supermercados possuindo assim

milhoes de registos. A tıtulo exemplificativo pode-se mencionar empresas tais como a

Sonae ou a Jeronimo Martins que detem bases de dados deste tipo. No entanto, os

precos dos produtos sao um atributo contınuo, devendo-se proceder a discretizacao do

mesmo.

Se se assumir que as ferramentas para a extraccao do conhecimento procedem a uma

discretizacao do atributo, quando esta e actualizada, e necessario proceder a um novo

processamento dos dados. Esta situacao implica um novo gasto de recursos e tempo.

Com a utilizacao de um metodo de discretizacao incremental, este novo gasto de

recursos e tempo nao existe.

Com a discretizacao incremental espera-se ainda obter uma melhor interpretacao

dos dados para o algoritmo pois, como ja mencionado um dos argumentos para a

utilizacao da discretizacao e a simplificacao dos dados e a obtencao de melhores modelos

de classificacao. Com uma discretizacao incremental e possıvel obter uma correcta

Page 89: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 4. ABORDAGEM INCREMENTAL A DISCRETIZACAO 71

interpretacao dos dados que variam ao longo do tempo, o que pode implicar que os

valores do atributo, em alturas diferentes, possam pertencer a diferentes intervalos.

Se se tomar por exemplo uma aplicacao que pretenda extrair o habito de compra

de computadores por extractos da populacao e supondo a discretizacao do preco

dos computadores da tabela 4.1, apesar de para o mesmo valor obtermos diferentes

discretizacoes, a analise assentaria em bases correctas. Caso se aplicasse a mesma

discretizacao ao longo do tempo estar-se-ia a induzir o algoritmo a resultados errados.

No entanto, no caso de se ter implementado uma discretizacao incremental em 1990,

esta poderia ter obtido os resultados descritos na tabela.

Logo, uma das grandes vantagens da discretizacao como metodo incremental e o

facto de esta reflectir a mudanca no ambiente, enquanto que uma discretizacao nao

incremental pode induzir a resultados errados. Deve-se no entanto realcar que no caso

de nao ocorrerem mudancas no ambiente, a discretizacao incremental continua a obter

resultados correctos. A discretizacao incremental adapta-se assim as duas situacoes,

enquanto que a discretizacao nao incremental se restringe a primeira.

4.2 Pre-processamento incremental de Dis-

cretizacao (PiD)

A discretizacao e um pre-processamento utilizada como preparacao dos dados, existindo

vantagens numa abordagem simples, rapida e ’leve’ computacionalmente. Estas

vantagens acentuam-se se se considerar uma discretizacao incremental, pois o metodo

de discretizacao e chamado sempre que o algoritmo tiver acesso a mais dados, enquanto

que uma discretizacao nao incremental apenas e efectuada uma vez.

O PiD e composto por duas camadas, em que cada uma delas tem uma funcao diferente.

O metodo pode ser aplicado de modo supervisado e nao supervisado. O ultilizador deve

definir o modo como deseja correr o metodo antes de inicializar a primeira camada.

Page 90: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 4. ABORDAGEM INCREMENTAL A DISCRETIZACAO 72

Figura 4.3: Processo de discretizacao nao supervisionado

Cada uma das camadas e composta por:

1. A primeira camada contem uma discretizacao dos dados muito fina. Esta camada

e composta pelos limites dos intervalos achados para a discretizacao. Caso se

aplique o metodo como nao supervisado esta camada guarda a frequencia de

valores por intervalo, caso se tenha aplicado como supervisado entao a camada

guarda a frequencia de valores por classe.

2. A segunda camada tambem contem uma discretizacao, esta e calculada com

base nas estatisticas guardadas na primeira camada. Esta discretizacao e a

discretizacao final que fornece ao algoritmo o exemplos do conjunto de dados

discretizados.

Inicializacao de cada uma das camadas

1. A primeira camada tem duas possibilidades de ser inicializada, esta pode ser

inicializada sem nunca ter visto os dados ou esta pode ser inicializada com o

primeiro conjunto de dados. No primeiro caso, deve ser dados deve ser dado

Page 91: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 4. ABORDAGEM INCREMENTAL A DISCRETIZACAO 73

o limite de cada um dos atributos e o numero de intervalos desejado, e entao

aplicado o EWB (descrito no capıtulo 2) a cada um dos atributos. Deste modo

efectua-se a discretizacao desta camada.

No segundo caso, deve ser dado qual o metodo de discretizacao a utilizar e o

primeiro conjunto de dados. No caso de o metodo ser nao parametrico (chi-

merge, ENT-MDL, ...), deve-se parametrizar o metodo de modo a criar mais

intervalos que os necessarios numa discretizacao final.

Deve-se ter em atencao que esta camada deve criar mais intervalos que a

discretizacao final. Segue o conselho de se criar no mınimo 100 intervalos.

2. A segunda camada e inicializada a primeira vez que se corre o metodo. Deve ser

dado pelo utilizador qual o metodo a utilizar para a discretizacao dos dados. Caso

este seja parametrico o utilizador deve ainda fornecer o numero de intervalos a

criar, caso o metodo seja nao parametrico o utilizador deve fornecer o numero

mınimo de intervalos a criar. O metodo e inicializado a primeira vez que recebe

os dados da primeira camada.

Actualizacao de cada uma das camadas

1. Quando a primeira camada tem acesso a novos dados esta actualiza a frequencia

dos intervalos, ou seja, caso o metodo tenha sido aplicado de modo nao

supervisionado apenas necessita de actualizar os valores do atributo por intervalo.

Caso o metodo tenha sido aplicado de modo supervisionado actualiza os valores

dos intervalos por classe.

2. A segunda camada e processada depois da primeira camada. Como a primeira

camada actualizou a frequencia de valores foi gerada uma nova distribuicao de

valores, podendo deste modo originar uma alteracao dos limites dos intervalos

nesta segunda camada. Para actualizar os limites dos intervalos pode-se proceder

de dois modos:

Page 92: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 4. ABORDAGEM INCREMENTAL A DISCRETIZACAO 74

(a) Reinicializa a segunda camada, correndo novamente o metodo de dis-

cretizacao, com a condicao de originar o mesmo numero de intervalos.

(b) Aplicar uma heurıstica para a reformulacao dos limites dos intervalos com

base na nova distribuicao de valores.

Simplificando, o metodo divide-se em duas camadas, cada uma das camadas contem

uma discretizacao. A primeira camada tem como funcao simplificar os dados e guardar

as estatısticas da distribuicao de frequencia de valores. A segunda camada tem como

funcao aplicar a discretizacao aos dados.

O numero de intervalos para cada uma das camadas e definido na sua inicializacao.

Como e descrito, caso se opte por um metodo de discretizacao nao supervisionado

na segunda camada, entao a primeira guarda a frequencia do atributo por intervalo.

No caso de o metodo de discretizacao da segunda camada ser supervisado, a primeira

guarda a frequencia de valores do atributo por classe em cada intervalo. No entanto,

existem metodos de discretizacao que necessitam de mais do que a frequencias dos

valores. Neste estudo vamo-nos restringir a metodos nao supervisados e metodos

supervisados univariados (que apenas necessitam da frequencia do atributo por classe).

De notar que o metodo reavalia os intervalos gerados para a discretizacao. Para efectuar

esta reavaliacao o metodo precisa de guardar a frequencia de valores por intervalo (no

caso nao supervisado) ou a frequencia de valores em cada intervalo por classe (no caso

supervisado). No primeiro caso, as estatısticas a guardar sao irrelevantes, no segundo

caso as estatısticas a guardar crescem linearmente, por essa razao cumpre as definicoes

de Langley.

O metodo de discretizacao encontra-se representado na figura 4.3 onde e possıvel

observar uma discretizacao nao supervisionada efectuada em dois passos: uma primeira

discretizacao muito ’fina’, com bastantes intervalos, e uma segunda discretizacao com

os intervalos necessarios para o algoritmo.

Page 93: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 4. ABORDAGEM INCREMENTAL A DISCRETIZACAO 75

O passo intermedio da figura 4.3 (primeira camada) serve como plataforma para que

seja possıvel ao metodo reformular a discretizacao quando surgem novos dados o

metodo actualiza a frequencia de valores da primeira camada, gerando deste modo

uma nova distribuicao de frequencias. Tendo como base esta nova distribuicao de

frequencias o PiD actualiza os limites dos intervalos da segunda camada, reformulando

a discretizacao gerada anteriormente ou gerando uma nova discretizacao. O novo

conjunto de dados e entao discretizado e disponibilizado ao algoritmo pela nova

discretizacao gerada para a segunda camada.

De salientar que o PiD converge para qualquer metodo de discretizacao nao incremental.

A verificacao desta convergencia pode ser realizada utilizando o Equal-with Binning

na primeira camada e o metodo desejado na segunda e corre-se o algoritmo nao

incremental. Para obter o mesmo resultado com o PiD basta ir aumentando o numero

de intervalos da primeira camada, o que provoca uma diminuicao do numero de valores

diferentes por intervalo. No pior cenario a convergencia da-se quando houver um

numero de intervalos tal que permita que cada intervalo da primeira camada contenha

o maximo de um valor diferente do atributo. Deste modo, e equivalente efectuar a

discretizacao nao incremental sobre os dados ou correr essa mesma discretizacao na

segunda camada. No entanto, o mais natural e que a convergencia se de antes. Isto

implica que o PiD pode convergir para a discretizacao nao incremental a medida que

a frequencia de valores por intervalo da primeira camada diminui.

O grande ganho do PiD reside no facto de encontrar o numero de intervalos para a

primeira camada que permite simplificar os dados, sem prejudicar a discretizacao da

segunda camada.

Pode-se ainda concluir que o PiD simplifica os dados com a primeira camada,

encontrando em seguida a discretizacao que melhor se adapta a estatıstica dos dados.

Uma discretizacao como o ENT-MDL ou o Chi-Merge apresentam algum peso de

processamento se estivermos a falar de milhoes de registos. Com o PiD a discretizacao

dos dados pode ser acelerada em relacao a qualquer um destes metodos, pois a primeira

Page 94: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 4. ABORDAGEM INCREMENTAL A DISCRETIZACAO 76

camada simplifica os dados com um metodo simples tal como o Equal-with Binning e

o Equal-frequency Binning, acelerando deste modo a discretizacao da segunda camada

(ENT-MDL ou o Chi-Merge).

Por conseguinte o PiD possui quatro principais vantagens:

simples, este nao necessita de grandes requisitos de memoria pois, mesmo quando

aplicado a grandes bases de dados os seus requisitos de memoria sao bastante

modestos.

leve, este nao requer grandes custos a nıvel computacional, dependendo no entanto

dos metodos escolhidos para cada uma das camadas.

incremental, esta e a principal novidade no metodo de discretizacao. O metodo

divide-se em dois passos precisamente para alcancar este requisito.

adaptavel, o metodo adapta-se a qualquer algoritmo, pois este serve apenas como

pre-processamento dos dados.

Com um exemplo ilustra-se os resultados obtidos utilizando o PiD com uma dis-

cretizacao nao supervisada a e com uma discretizacao supervisada. Escolheu-se o

conjunto de dados Iris por este ser bastante utilizado na literatura como exemplo para

a discretizacao.

Escolheu-se o conjunto de dados Iris, que contem aproximadamente 150 instancias, por

este ser bastante utilizado na literatura como exemplo para a discretizacao. Aplicou-

se o PiD de modo incremental com 5 pastas de 30 instancias cada. Para a primeira

camada aplicou-se o EFW com treze pontos de corte, quer no metodo supervisado,

quer no metodo nao supervisado. De seguida, para o metodo nao supervisado, aplicou-

se novamente o EFW na segunda camada apenas com um ponto de corte, o que

tornou bastante leve a aplicacao do PiD. Para o metodo supervisado aplicou-se o ENT-

MDL, descrito no capıtulo 2, na segunda camada. As discretizacoes encontradas estao

descritas na Tabela 4.2.

Page 95: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 4. ABORDAGEM INCREMENTAL A DISCRETIZACAO 77

Primeira camada com equal frequency discretization

Atributo Pontos de corte Num. de intervalos

At1 4.95; 5.15; 5.35; 5.45; 5.55; 5.65; 5.75; 5.86; 5.95; 6.25; 6.40; 6.80 13

At2 2.35; 2.45; 2.60; 2.75; 2.95; 3.05; 3.15; 3.25; 3.35; 3.45; 3.60; 3.75 13

At3 1.35; 1.45; 1.55; 2.60; 3.80; 4.10; 4.30; 4.55; 4.80; 5.05; 5.45; 5.65 13

At4 0.25; 0.70; 1.05; 1.15; 1.20; 1.25; 1.35; 1.45; 1.60; 1.75; 1.95; 2.15 13

Segunda camada com equal frequency discretization (Discretizacao nao supervisada)

Atributo Pontos de corte apos ... Num. de int.

30 instanc. 60 instanc. 90 instanc. 120 instanc. 150 instanc.

At1 5.55 5.65 5.65 5.75 5.75 2

At2 2.95 2.95 2.95 2.95 2.95 2

At3 4.30 4.10 4.10 4.10 4.30 2

At4 1.25 1.25 1.25 1.25 1.25 2

Segunda camada com recursive entropy discretization (Discretizacao supervisada)

Atributo Pontos de corte apos ... Num. de int.

30 instanc. 60 instanc. 90 instanc. 120 instanc. 150 instanc.

At1 5.45 5.55 5.85 5.45 5.55 2

At2 2.75 3.25 3.25 3.25 3.05 2

At3 2.60; 5.05 2.60; 5.05 2.60; 5.05 2.60; 4.80 2.60; 4.80 3

At4 0.75; 1.65 0.75; 1.65 0.75; 1.65 0.75; 1.75 0.75; 1.75 3

Tabela 4.2: Descricao da discretizacao alcancada com o PiD (supervisado e nao

supervisado) para o conjunto de dados Iris

Page 96: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 4. ABORDAGEM INCREMENTAL A DISCRETIZACAO 78

Na Tabela 4.2 podemos observar que os limites dos intervalos sao flexıveis, podendo

alterar-se a medida que surgem novos exemplos. Observa-se igualmente que o metodo

mantem o numero de intervalos definido na primeira vez que se observa os dados.

4.3 Resultados experimentais

Segundo Kohavi, os metodos mais comummente utilizados para avaliacao de um

algoritmo e a validacao cruzada e o bootstrap [DKS95]. Ainda segundo Kohavi a

validacao cruzada e importante nao so para prever o futuro desempenho do algoritmo

mas tambem para a escolha do algoritmo [DKS95], existindo varios estudos em que

se utiliza esta validacao para prever o futuro desempenho de algoritmos incrementais.

Por essa razao, neste capıtulo ira ser focada a avaliacao do algoritmo em termos da

taxa de erro. Kohavi aconselha ainda a utilizacao da validacao cruzada com dez pastas

para a avaliacao do algoritmo.

Como anteriormente mencionado (capıtulo tres), o TANi apresenta um desempenho

muito proximo do TAN, que sendo um algoritmo incremental e deste modo um bom

algoritmo para o teste ao PiD.

Para os testes do TAN e TANi com o PiD seguiu-se a seguinte metodologia:

Primeira fase da discretizacao Para a discretizacao inicial aplicaram-se os

metodos mais simples: o Equal-with Binning e o Equal-frequency Binning. Para

que o metodo fosse nao necessitasse da intervencao do utilizador, na escolha do

numero de intervalos, recorreu-se a seguinte formula: t = N4√

N. Esta e uma

formula totalmente empırica, mas que demonstrou obter bons resultados.

Segunda fase da discretizacao Na segunda fase da discretizacao testaram-se dois

tipos de discretizacao, uma nao supervisionada e uma supervisionada. Para os

testes da discretizacao nao supervisionada, foi seleccionado o metodo Equal-

Page 97: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 4. ABORDAGEM INCREMENTAL A DISCRETIZACAO 79

frequency Binning. Dada a simplicidade do metodo, esta segunda parte da

discretizacao e facilmente obtida a partir da primeira fase da discretizacao. Assim

o metodo, e reiniciado sempre que chegam novos dados. Para que o metodo nao

necessitasse da intervencao do utilizador, para definir o numero de intervalos

criados, usa-se a seguinte formula: t = 4√

N , onde N e o numero de exemplos

observados e t o numero de intervalos.

O metodo supervisionado escolhido foi o ENT-MDL [FI93], onde o criterio de

paragem e o minimum description length (este metodo encontra-se descrito no

capıtulo 2). Para a actualizacao da segunda camada usa-se a heurıstica de manter

a arvore de discretizacao achada inicialmente (Capıtulo 2).

A tabela 4.3 apresenta a descricao dos dados. As tabelas 4.4 e 4.5 apresentam os

resultados dos testes a varios conjuntos de dados, todos os dados contem atributos

contınuos.

As tabelas descrevem a taxa de erro para conjuntos de dados do repositorio de dados

da Universidade da California, Irvine [BM98]. Nas diversas tabelas sao apresentadas

as taxas de acerto para os algoritmos:

NB , o naive Bayes do WEKA

NB Cont. , o naive Bayes que lida com atributos contınuos.

Bayes Net. , uma versao de rede Bayesiana do WEKA.

J48 , uma versao de arvore de classificacao do WEKA.

TAN , o TAN de Friedman

TANi , o algoritmo incremental apresentado no capıtulo 2.

Em todos os conjuntos de dados foi usada a validacao cruzada com dez pastas. A

tabela mostra a taxa de erro e o desvio padrao apresentados para cada um dos testes.

Page 98: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 4. ABORDAGEM INCREMENTAL A DISCRETIZACAO 80

num

ero

de

exem

plo

spor

past

a

Nom

edos

dados

Inst

ancia

sA

trib

uto

sA

trib

uto

sconti

nuos

Cla

sses

10Past

as(

10%

)20Past

as(

5%

)50Past

as(

2%

)100Past

as(

1%

)

Hepati

tis

80

19

62

8

Iris

150

44

315

Win

e178

13

13

317

CR

X194

33

33

219

Gla

ss214

99

621

Heart

270

13

62

27

Cle

ve

296

13

42

29

Liv

er-

dis

ord

er

345

66

229

Ionosp

here

351

35

34

234

Cars

393

87

339

Bre

ast

Loss

569

32

31

256

Aust

ralian

690

14

82

69

34

13

6

Pim

a768

98

276

38

15

7

Dia

bete

s768

88

276

38

15

7

Tokyo

959

44

44

295

47

19

9

Germ

an

1000

20

13

2100

50

20

10

Segm

enta

tion

2310

20

19

7231

115

46

23

Wavefo

rm5000

41

40

3500

250

100

50

Churn

5000

20

16

2500

250

100

50

Sate

lite

Image

6435

36

36

2643

321

128

64

Adult

45222

14

62

4522

2261

904

452

Shutt

le58000

99

75800

2900

1160

580

Tab

ela

4.3:

Des

cric

aodos

dad

osusa

dos

no

test

e

Page 99: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 4. ABORDAGEM INCREMENTAL A DISCRETIZACAO 81D

iscre

tizacao

nenhum

asu

perv

isada

superv

isada

superv

isada

nao

superv

isada

superv

isada

superv

isada

nao

superv

isada

superv

isada

superv

isada

nao

incre

m.

nao

incre

m.

nao

incre

m.

nao

incre

m.

nao

incre

m.

nao

incre

m.

nao

incre

m.

incre

menta

lin

cre

menta

lin

cre

menta

l

NB

(Cont.

)N

BB

ayes

Net

J48

TA

N(E

FW

)TA

N(E

NT

)TA

Ni(

EN

T)

TA

N(P

iD-E

FW

)TA

N(P

iD-E

NT

)TA

Ni(

PiD

-EN

T)

Conj.

dados

past

as

de

10%

past

as

de

10%

past

as

de

10%

Iris

95.3

3+

/-5

.49

95.3

3+

/-5

.49

93.3

3+

/-5

.44

94.6

7+

/-6

.89

92.6

7+

/-6

.63

92.0

0+

/-6

.13

93.3

3+

/-4

.44

78.0

0+

/-7

.73

83.3

3+

/-1

1.0

84.0

0+

/-1

1.0

Win

e97.2

2+

/-5

.40

97.2

2+

/-5

.40

97.7

8+

/-3

.88

93.8

9+

/-7

.61

91.0

5+

/-8

.39

92.7

5+

/-7

.87

94.4

1+

/-7

.41

89.3

5+

/-7

.25

90.9

8+

/-6

.03

92.6

8+

/-5

.32

CR

X77.3

5+

/-4

.87

77.0

4+

/-4

.48

86.0

7+

/-3

.67

85.1

5+

/-2

.45

83.6

2+

/-4

.37

82.6

9+

/-2

.99

83.0

0+

/-2

.63

83.1

7+

/-3

.83

82.0

8+

/-4

.41

82.0

9+

/-3

.93

Gla

ss48.5

7+

/-5

.12

68.1

8+

/-7

.46

69.1

1+

/-7

.93

65.8

7+

/-1

0.8

464.4

4+

/-9

.44

64.3

7+

/-9

.31

64.3

7+

/-9

.58

64.3

9+

/-7

.82

55.5

8+

/-8

.69

52.8

4+

/-1

0.5

Heart

84.0

7+

/-8

.56

84.0

7+

/-8

.38

83.7

0+

/-7

.45

74.4

4+

/-7

.08

82.2

2+

/-6

.49

78.8

9+

/-6

.54

77.0

4+

/-7

.77

79.2

6+

/-7

.45

80.0

0+

/-9

.27

79.6

3+

/-9

.11

Cle

ve

82.8

2+

/-3

.85

83.1

5+

/-3

.72

82.4

7+

/-4

.58

78.0

7+

/-6

.72

78.4

1+

/-6

.03

78.3

8+

/-4

.83

78.0

6+

/-4

.19

82.0

9+

/-4

.26

80.4

4+

/-5

.33

80.0

7+

/-5

.60

Liv

er-

dis

ord

er

54.7

6+

/-6

.05

55.6

4+

/-5

.34

57.9

7+

/-5

.00

67.2

4+

/-7

.30

66.1

0+

/-4

.63

67.1

9+

/-8

.75

70.0

9+

/-8

.34

67.8

1+

/-8

.23

67.2

3+

/-4

.82

66.0

6+

/-5

.90

Ionosp

here

80.6

5+

/-4

.85

90.0

3+

/-2

.76

90.0

3+

/-2

.76

91.1

7+

/-3

.89

90.6

0+

/-3

.83

90.8

9+

/-3

.74

88.9

0+

/-5

.09

85.2

0+

/-5

.30

90.8

7+

/-4

.23

90.3

0+

/-3

.09

Cars

80.6

0+

/-4

.89

80.6

0+

/-4

.89

88.7

8+

/-3

.84

96.4

2+

/-3

.46

96.1

6+

/-2

.18

95.6

5+

/-3

.21

97.1

8+

/-3

.30

98.7

2+

/-1

.81

97.9

6+

/-2

.02

91.5

6+

/-6

.18

Bre

ast

Loss

96.3

3+

/-2

.43

96.1

8+

/-2

.52

97.3

7+

/-2

.17

95.9

0+

/-2

.38

95.9

0+

/-2

.05

96.6

3+

/-2

.41

96.4

9+

/-2

.10

88.8

8+

/-4

.06

97.2

2+

/-1

.76

97.5

1+

/-2

.30

Aust

ralian

77.5

4+

/-2

.92

77.5

4+

/-3

.00

85.8

0+

/-2

.80

84.6

4+

/-4

.05

86.9

6+

/-2

.56

87.1

0+

/-4

.12

86.2

3+

/-4

.11

85.6

5+

/-4

.40

86.5

2+

/-3

.62

85.8

0+

/-4

.47

Pim

a75.3

9+

/-4

.17

74.8

7+

/-4

.24

75.6

5+

/-3

.72

73.6

9+

/-5

.25

75.7

8+

/-1

.78

76.4

4+

/-4

.25

75.2

6+

/-4

.09

72.2

6+

/-4

.71

74.5

9+

/-5

.79

74.9

8+

/-6

.38

Dia

bete

s75.5

2+

/-3

.30

75.7

8+

/-2

.84

74.8

7+

/-3

.21

75.1

3+

/-4

.75

76.0

5+

/-4

.33

75.0

1+

/-2

.65

75.1

3+

/-3

.23

72.0

0+

/-3

.48

73.7

0+

/-4

.81

73.8

3+

/-3

.86

Tokyo

90.3

0+

/-2

.15

90.4

0+

/-2

.60

90.4

0+

/-2

.60

91.6

6+

/-2

.77

91.3

5+

/-2

.25

91.5

5+

/-2

.43

92.2

8+

/-1

.50

91.1

3+

/-2

.62

91.4

5+

/-1

.84

91.3

4+

/-2

.16

Germ

an

74.1

0+

/-4

.86

74.2

0+

/-4

.78

73.6

0+

/-3

.78

70.9

0+

/-3

.67

72.4

0+

/-4

.01

70.7

0+

/-3

.59

71.5

0+

/-3

.81

73.1

0+

/-5

.26

72.2

7+

/-5

.56

71.8

8+

/-4

.98

Segm

enta

tion

80.7

4+

/-1

.54

91.2

6+

/-1

.32

91.6

9+

/-1

.30

96.9

7+

/-1

.08

93.6

8+

/-2

.35

94.9

8+

/-1

.45

94.6

8+

/-1

.37

90.3

5+

/-2

.56

94.2

0+

/-1

.86

93.9

0+

/-1

.56

Wavefo

rm79.9

0+

/-1

.02

79.8

8+

/-1

.06

80.1

2+

/-1

.51

75.7

4+

/-1

.37

80.2

8+

/-1

.54

80.6

8+

/-1

.41

80.8

0+

/-2

.02

81.3

0+

/-1

.15

80.5

8+

/-1

.56

80.0

4+

/-1

.34

Churn

88.6

0+

/-1

.85

88.6

2+

/-1

.78

87.4

4+

/-1

.56

94.3

8+

/-0

.61

84.7

8+

/-1

.44

89.0

2+

/-1

.92

87.0

4+

/-1

.44

84.0

4+

/-1

.45

87.5

4+

/-1

.44

86.8

4+

/-1

.73

Sat.

Image

79.5

6+

/-1

.23

82.0

2+

/-1

.20

81.9

9+

/-1

.30

86.5

7+

/-1

.13

86.9

9+

/-1

.28

87.6

5+

/-1

.30

87.8

9+

/-1

.24

86.1

1+

/-1

.35

86.0

8+

/-1

.46

85.8

6+

/-1

.67

Adult

82.7

0+

/-0

.60

82.5

9+

/-0

.65

83.7

8+

/-0

.48

85.5

7+

/-0

.50

83.5

1+

/-0

.62

83.3

7+

/-0

.56

85.6

6+

/-0

.54

83.3

7+

/-0

.56

84.8

4+

/-0

.47

84.7

2+

/-0

.42

Shutt

le93.0

1+

/-0

.58

99.4

4+

/-0

.14

99.4

4+

/-0

.14

99.9

7+

/-0

.03

99.6

8+

/-0

.06

99.9

3+

/-0

.04

99.8

6+

/-0

.08

98.7

9+

/-0

.06

99.8

0+

/-0

.07

99.7

8+

/-0

.08

%de

acert

o80.7

283.0

584.3

584.6

784.4

184.5

384.6

882.6

283.6

883.1

3

rank

10

85

24

31

96

7

media

do

rank

6.6

25.7

14.9

4.7

15

4.5

74.4

86.7

15.3

36.2

4

Tab

ela

4.4:

Res

ult

ados

exper

imen

tais

do

TA

Ne

TA

Nico

mo

PiD

,na

sua

vers

aosu

per

vis

ada

enao

super

vis

ada

com

par

ada

com

algu

ns

algo

ritm

osdo

WE

KA

Page 100: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 4. ABORDAGEM INCREMENTAL A DISCRETIZACAO 82

Dis

cre

tizacao

nenhum

asu

perv

isado

superv

isado

superv

isado

superv

isado

superv

isado

superv

isado

superv

isado

superv

isado

superv

isado

nao

incre

menta

lnao

incre

menta

lnao

incre

menta

lnao

incre

menta

lnao

incre

menta

lin

icia

lin

cre

menta

lin

cre

menta

lin

cre

menta

lin

cre

menta

l

Conj.

dados

NB

(Cont.

)N

BJ48

Bayes

Net

TA

Ni

TA

Ni

TA

Ni

TA

Ni

TA

Ni

TA

Ni

past

as

de

10%

past

as

de

10%

past

as

de

5%

past

as

de

2%

past

as

de

1%

Aust

ralian

77.5

4+

/-2

.92

77.5

4+

/-3

.00

84.6

4+

/-4

.05

85.8

0+

/-2

.80

86.2

3+

/-4

.11

85.9

4+

/-3

.81

85.8

0+

/-4

.47

85.6

5+

/-2

.69

85.3

6+

/-4

.85

82.1

7+

/-8

.14

Pim

a75.3

9+

/-4

.17

74.8

7+

/-4

.24

73.6

9+

/-5

.25

75.6

5+

/-3

.72

75.2

6+

/-4

.09

71.9

9+

/-4

.17

74.9

8+

/-6

.38

72.5

2+

/-3

.45

74.0

8+

/-4

.36

73.1

8+

/-5

.84

Dia

bete

s75.5

2+

/-3

.30

75.7

8+

/-2

.84

75.1

3+

/-4

.75

74.8

7+

/-3

.21

75.1

3+

/-3

.23

73.0

5+

/-5

.06

73.8

3+

/-3

.86

73.7

+/-4

.58

73.4

4+

/-4

.87

73.5

7+

/-3

.57

Tokyo

90.3

0+

/-2

.15

90.4

0+

/-2

.60

91.6

6+

/-2

.77

90.4

0+

/-2

.60

92.2

8+

/-1

.50

90.0

9+

/-2

.62

91.3

4+

/-2

.16

92.3

9+

/-2

.31

88.1

1+

/-4

.09

89.0

5+

/-3

.87

Germ

an

74.1

0+

/-4

.86

74.2

0+

/-4

.78

70.9

+/-3

.67

73.6

0+

/-3

.78

71.5

+/-3

.81

72.3

0+

/-4

.14

71.8

8+

/-4

.98

72.1

0+

/-3

.75

71.4

+/-3

.672.9

0+

/-4

.86

Segm

enta

tion

80.7

4+

/-1

.54

91.2

6+

/-1

.32

96.9

7+

/-1

.08

91.6

9+

/-1

.30

94.6

8+

/-1

.37

77.4

9+

/-1

.80

93.9

+/-1

.56

92.3

8+

/-2

.69

91.3

9+

/-2

.01

91.7

3+

/-1

.36

Wavefo

rm79.9

0+

/-1

.02

79.8

8+

/-1

.06

75.7

4+

/-1

.37

80.1

2+

/-1

.51

80.8

+/-2

.02

79.6

8+

/-1

.91

80.0

4+

/-1

.34

77.9

2+

/-1

.99

77.4

+/-1

.51

77.4

2+

/-1

.42

Churn

88.6

0+

/-1

.85

88.6

2+

/-1

.78

94.3

8+

/-0

.61

87.4

4+

/-1

.56

87.0

4+

/-1

.44

86.6

0+

/-1

.35

86.8

4+

/-1

.73

86.0

2+

/-1

.21

86.3

6+

/-1

.49

86.2

8+

/-1

.23

Sat.

Image

79.5

6+

/-1

.23

82.0

2+

/-1

.286.5

7+

/-1

.13

81.9

9+

/-1

.30

87.8

9+

/-1

.24

86.7

3+

/-1

.60

85.8

6+

/-1

.67

86.2

2+

/-0

.96

85.7

7+

/-1

.43

84.0

4+

/-1

.53

Adult

82.7

0+

/-0

.60

82.5

9+

/-0

.65

85.5

7+

/-0

.583.7

8+

/-0

.48

85.6

6+

/-0

.54

84.7

4+

/-0

.43

84.7

2+

/-0

.42

84.2

9+

/-0

.49

84.3

1+

/-0

.52

84.2

3+

/-0

.57

Shutt

le93.0

1+

/-0

.58

99.4

4+

/-0

.14

99.9

7+

/-0

.03

99.4

4+

/-0

.14

99.8

6+

/-0

.07

99.8

0+

/-0

.05

99.7

8+

/-0

.08

99.7

7+

/-0

.07

99.6

9+

/-0

.07

99.6

3+

/-0

.12

%acert

o81.5

883.3

385.0

284.0

785.0

582.5

884.4

583.9

183.3

983.1

1

rank

10

72

41

93

56

8

media

do

rank

6.0

95.6

44.3

64.9

12.6

46

4.4

55.8

27.3

67.2

7

Tab

ela

4.5:

Res

ult

ados

xper

imen

tais

par

ao

PiD

com

div

erso

sta

man

hos

de

pas

tas

com

par

ada

com

asu

adis

cret

izac

aoin

icia

le

com

algu

ns

algo

ritm

osdo

WE

KA

Page 101: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 4. ABORDAGEM INCREMENTAL A DISCRETIZACAO 83

De notar que todos os algoritmos correram as mesmas pastas mutualmente estratifi-

cadas e em particular os conjuntos de teste foram os mesmos para todos os passos da

validacao cruzada.

Deixa-se apenas a nota de que foram testados como metodo de discretizacao inicial

o Equal Frequency Binning e o Equal With Binning. Por questoes de espaco e

objectividade, sao apenas apresentados os resultados para os que foram considerados

mais representativos. Gostaria no entanto de se salientar que os resultados com o

Equal With Binning e o Equal Frequency Binning apresentam desempenhos muito

semelhantes.

A tabela 4.4 apresenta o desempenho dos diversos algoritmos para vinte e um conjuntos

de dados, a tabela 4.5 contem os resultados para onze conjuntos de dados.

No fim de cada uma das tabelas encontra-se a media do desempenho para todos os

conjuntos de dados, na linha seguinte encontra-se a posicao do resultado anterior. Na

linha seguinte pode-se visualizar a media das posicoes alcancadas em cada um dos

conjuntos de dados.

Atraves da analise da tabela 4.4 verifica-se que:

• Os resultados dos algoritmos incrementais se aproximam dos algoritmos nao

incrementais;

• Uma analise mais exaustiva permite concluir que os resultados da discretizacao;

incremental obtem um melhor desempenho nos conjuntos de dados com mais

exemplos;

• Na discretizacao supervisada o TANi com discretizacao incremental obtem uma

taxa de acerto mais alta que o TAN com discretizacao nao incremental em cinco

conjuntos de dados;

• A discretizacao supervisada indica obter melhores resultados que a discretizacao

Page 102: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 4. ABORDAGEM INCREMENTAL A DISCRETIZACAO 84

nao supervisada incremental;

• O pior resultado e obtido pelo naive Bayes sem discretizacao;

• A discretizacao nao supervisada incremental obtem um media da taxa de acerto

mais baixa que o naive Bayes Com discretizacao supervisada. De salientar no

entanto que o naive bayes consegue essa vantagens nos conjuntos de dados com

menos exemplos.

Nos resultados da tabela 4.4 verifica-se que a discretizacao incremental obtem melhores

resultados com conjuntos de dados com maior numero de exemplos. Separa-se entao

os onze conjuntos de dados com mais exemplos para relizar uma analise mais exaustiva

dos resultados.

Analisando a tabela 4.5 observa-se que:

• A melhor media e obtida pelo TANi com discretizacao nao incremental;

• O TAN com a discretizacao inicial, obtida com a primeira pasta dos dados, obtem

a penultima melhor taxa de acerto;

• Todas as discretizacoes incrementais obtem melhor media da taxa de acerto que

a discretizacao inicial;

• A discretizacao incremental obtem taxas de acerto proximas da discretizacao nao

incremental;

• A diferenca entre a melhor media de acerto obtida e a discretizacao incremental,

com pastas de 1%, e de 1.94, O que e um bom indicador. Ao analisar com

mais detalhe podemos verificar que, por exemplo, no caso do conjunto de dados

Australian a discretizacao inicial foi efectuada com cerca de 7 instancias e foi

reformulada 99 vezes. Tendo em consideracao este facto, a troca no desempenho

entre taxa de acerto e condicoes tao duras de incrementalidade foi satisfatoria.

Page 103: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 4. ABORDAGEM INCREMENTAL A DISCRETIZACAO 85

Um dos objectivos das Tabelas 4.4 e 4.5 e verificar se a discretizacao tem um papel

preponderante no desempenho do algoritmo e pode-se verificar que tal acontece, pois o

mesmo algoritmo com o mesmo metodo de discretizacao, mas obtido quer inicialmente,

quer incrementalmente torna-se decisivo no desempenho do algoritmo.

Analisando as duas tabelas verifica-se que a discretizacao incremental melhora os seus

resultados para conjuntos de dados com mais exemplos. Na Tabela 4.5 a diferenca da

media da taxa de acerto entre o TANi-PiD e o TANi com discretizacao nao incremental,

diminuiu. Deste modo pode-se concluir que o PiD obtem melhor desempenho em

conjuntos com maior numero de exemplos, podendo por essa razao indicar o PiD como

um bom metodo para areas como o Datamining.

Verifica-se ainda que a discretizacao incremental indica obter um desempenho melhor

que o naive Bayes com discretizacao nao incremental.

Page 104: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

Capıtulo 5

Conclusoes

Esta tese tinha como objectivo o estudo de uma rede Bayesiana (TAN) incremental.

Durante o decorrer desta verificou-se a lacuna na area de uma discretizacao incre-

mental para a avaliacao de um algoritmo incremental. Assim procurou-se dar como

contribuicao para a area nao so um classificar Bayesiano incremental mas tambem um

modo de avaliacao correcto do classificador. Resumindo a tese, podemos encontrar:

Capıtulo 2 Uma breve introducao na area da inteligencia artificial, mais precisamente

em aprendizagem automatica.

Um breve resumo com as motivacoes para o desenvolvimento de algoritmos

incrementais, algoritmos de discretizacao e classificadores Bayesianos.

Apontam-se as motivacoes para o uso da discretizacao como pre-processamento

dos conjuntos de dados com atributos contınuos e efectua-se uma breve revisao

dos metodos existentes.

Capıtulo 3 Apos estas introducoes, e apresentado o algoritmo proposto, TANi, que

demonstra cumprir a definicao de incrementalidade e manter o desempenho o

TAN.

Uma avaliacao experimental do algoritmo, em que se comparam as arvores

86

Page 105: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 5. CONCLUSOES 87

geradas entre o TAN e o TANi. Avalia-se o desempenho do algoritmo a medida

que este tem acesso a mais dados. Analisa-se o desempenho do algoritmo

variando o numero de instancias dos conjuntos de exemplos apresentados em cada

passo. Finalmente compara-se o desempenho do algoritmo com outros algoritmos

incrementais e nao incrementais.

Capıtulo 4 De seguida, descreve-se as motivacoes para o desenvolvimento de um

metodo de discretizacao incremental. Apresentando de seguida uma proposta

de um metodo de discretizacao incremental. Avalia-se o desempenho do PiD

na sua versao supervisada e nao supervisada) com o TANi e comparado com

algoritmos nao incrementais.

Capıtulo 5

Como principais contribuicoes para a area aponta-se:

• Um classificador Bayesiano incremental;

• Um metodo de discretizacao incremental;

• Uma correcta avaliacao de algoritmos incrementais;

• Metodo de discretizacao capaz de acelerar a discretizacao para grandes conjuntos

de dados sem degradar o desempenho do algoritmo.

5.1 Trabalho futuro

Na area do desenvolvimento de algoritmos ou metodos incrementais existe ainda

bastante a estudar, o trabalho de juntar um algoritmo incremental com um metodo

de discretizacao incremental foi apenas um inıcio. Assim, deixa-se aqui algumas das

propostas:

Page 106: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

CAPITULO 5. CONCLUSOES 88

1. avaliar o TANi como algoritmo online;

2. Um dos testes que se pretende efectuar ao TANi e programar um TAN, para que

este gere exemplos. Esses exemplos tem como objectivo gerar um conjunto de

dados para treinar o TANi. Com este teste pretende-se atingir dois objectivos:

(a) verificar se o TANi adopta a mesma rede que o algoritmo que gerou os

exemplos;

(b) verificar a que velocidade o TANi adapta a estrutura correcta.

3. Igualmente importante seria o estudo do impacto da ordenacao dos dados na

construcao do TANi, ja que este e afectado pela maneira como os dados sao

ordenados;

4. Um bom desafio sera ainda o desenvolvimento do K-means incremental para

poder comparar o seu desempenho em termos de custo computacional, velocidade

e taxa de acerto com o do PiD;

5. Outro desafio que podera demonstrar a emergencia do uso da discretizacao

incremental e o teste desta em ambientes dinamicos.

Page 107: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

89

Page 108: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

Referencias

[Bay00] Stephen D. Bay. Multivariate discretization of continuous variablesfor set mining. In Knowledge Discovery and Data Mining, pages315–319, 2000.

[BM98] C.L. Blake and C.J. Merz. UCI repository of machine learningdatabases, 1998.

[Cat91] J. Catlett. On changing continuous attributes into ordered discreteattributes. In European Working Session on Learning, pages 164–178, 1991.

[Cer03] Jesus Cerquides Cerquide. Tan classifiers based on decompos-able distributions. Technical report, Institut d’Investigacio enIntel.ligencia Artificial, January 2003.

[Coe95] Helder Coelho. Inteligencia Artificial em 25 licoes. FundacaoCaloust Gulbenkian, 1995.

[DHS01] R. O. Duda, P. E. Hart, and D. G. Stork. Pattern Classification.John Wiley and Sons, New York, 2nd edition, 2001.

[DKS95] James Dougherty, Ron Kohavi, and Mehran Sahami. Supervisedand unsupervised discretization of continuous features. In Interna-tional Conference on Machine Learning, pages 194–202, 1995.

[DP97] Pedro Domingos and Michael J. Pazzani. On the optimality of thesimple bayesian classifier under zero-one loss. Machine Learning,29(2-3):103–130, 1997.

[FG96] Nir Friedman and Moises Goldszmidt. Building classifiers usingbayesian networks. In AAAI/IAAI, Vol. 2, pages 1277–1284, 1996.

[FG97] Nir Friedman and Moises Goldszmidt. Sequential update of Bayesiannetwork structure. In Proc. 13th Conf. on Uncertainty in ArtificialIntelligence, pages 165–174, 1997.

90

Page 109: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

[FGL98] Nir Friedman, Moises Goldszmidt, and Thomas J. Lee. Bayesiannetwork classification with continuous attributes: getting the bestof both discretization and parametric fitting. In Proc. 15th Interna-tional Conf. on Machine Learning, pages 179–187, 1998.

[FI93] U. M. Fayyad and K. B Irani. Multi-interval discretization ofcontinuous valued attributes for classification learning. In 13 In-ternational Joint Conference on Artificial Intelligence, pages 1022–1027. Morgan Kaufmann, 1993.

[Fis87] D. H. Fisher. Knowledge acquisition via incremental conceptualclustering. Machine Learning, 2:139–172, 1987.

[FR02] Mannila Fayyad and Rarnakrishnan, editors. Data Mining andKnowledge Discovery. Kluwer Academis Publishers, 2002.

[FW99] Eibe Frank and Ian H. Witten. Making better use of globaldiscretization. In Proc. 16th International Conf. on MachineLearning, pages 115–123. Morgan Kaufmann, San Francisco, CA,1999.

[FZ00] E. Fagiuoli and M. Zaffalon. Tree-augmented naive credal classifiers.In Proceedings of the 8th Information Processing and Management ofUncertainty in Knowledge-Based Systems Conference, pages 1320–1327, 2000.

[Hec97a] D. Heckerman. A tutorial on learning with bayesian networks.Technical report, Microsoft research, Advanced Technology Dision,February 1997.

[Hec97b] David Heckerman. Bayesian networks for data mining. Data Miningand Knowledge Discovery, 1(1):79–119, 1997.

[HKL02] K. Huang, I. King, and M. Lyu. Constructing a large node chow-liutree based on frequent itemsets. In Proceedings of the InternationalConference on Neural Information Processing (ICONIP2002., 2002.

[Jen96] Finn V. Jensen. An introduction to Bayesian networks. UCL Press,1996.

[JL95] George H. John and Pat Langley. Estimating continuous distribu-tions in Bayesian classifiers. In Eleventh Conference on Uncertaintyin Artificial Intelligence, pages 338–345, 1995.

[Ker92] R. Kerber. Chimerge: Discretization of numeric attributes. In Proc.Ninth Int’l Conf. Artificial Intelligence (AAAI-91), pages 123–128,1992.

91

Page 110: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

[Koh95] Ron Kohavi. A study of cross-validation and bootstrap for accuracyestimation and model selection. In IJCAI, pages 1137–1145, 1995.

[KP99] E. Keogh and M. Pazzani. Learning augmented bayesian classi-fiers: A comparison of distribution-based and classification-basedapproaches, 1999.

[KS96] Ron Kohavi and Mehran Sahami. Error-based and entropy-baseddiscretization of continuous features. In Proceedings of the SecondInternational Conference on Knowledge Discovery and Data Mining,pages 114–119, 1996.

[KSD96] Ron Kohavi, Dan Sommerfield, and James Dougherty. Data miningusing MLC++: A machine learning library in C++. In Tools withArtificial Intelligence, page To Appear. IEEE Computer SocietyPress, 1996. http://www.sgi.com/tech/mlc.

[Lan92] Langley, P., Iba, W., Thompson, K. An analysis of bayesianclassifiers. In Tenth National Conference on Artificial Intelligence,pages 223–228, 1992.

[Lan95] P. Langley. Learning in humans and machines: Towards an inter-disciplinary learning science, chapter Order Effects in IncrementalLearning. Oxford, 1995.

[LG02] S. Lange and G. Grieser. On the power of incremental learning.Theoretical Computer Science, 288(2):277–307, September 2002.

[LLS00] Tjen-Sien Lim, Wei-Yin Loh, and Yu-Shan Shih. A comparison ofprediction accuracy, complexity, and training time of thirty-three oldand new classification algorithms. Machine Learning, 40(3):203–228,2000.

[Mal03] M. Maloof. Incremental rule learning with partial instance memoryfor changing concepts. In Proceedings of the International JointConference on Neural Networks (IJCNN ’03), 2003.

[Mug02] Pedro Marıa Larranaga Mugia. Classificacion supervisada via mod-elos graficos probabilısticos. prova de habilitacao para catedratico,November 2002.

[Mit97] Tom M. Mitchell. Machine Learning. McGraw-Hill, 1997.

[ML98] A. Moore and M.S. Lee. Cached sufficient statistics for efficient ma-chine learning with large datasets. Journal of Artificial InteligenceResearch, 8:67–91, 1998.

92

Page 111: Carlos Manuel Silva Pinto - w3.ualg.ptw3.ualg.pt/~cpinto/tese.pdf · As propostas s~ao descritas na tese em cap¶‡tulos diferentes, mas uma das ... aspecto mais relevante deste

[MR95] Richeldi M. and M. Rossotto. Class-driven statistical discretizationof continuous attributes. In European Conference on MachineLearning, pages 335–338, 1995.

[MST94] Donald Michie, D. J. Spiegelhalter, and C. C. Taylor. MachineLearning, Neural and Statistical Classification. Ellis Horwood, 1994.

[Paz95] M. J. Pazzani. An iterative improvement approach for the discretiza-tion of numeric attributes in bayesian classifiers. In Proceedingsof the First International Conference on Knowledge Discovery andData Mining, 1995.

[Qui93] R. Quinlan. C4.5: Programs for Machine Learning. MorganKaufmann Publishers, Inc. San Mateo, CA, 1993.

[R.C93] Holt R.C. Very simple classification rules perform well on mostcommonly used datasets. In Machine Learning 11, pages 63–90,1993.

[Rou02] Josep Roure. An incremental algorithm for tree-shaped bayesiannetwork learning. In F. Van Harmelen, editor, Proceedings of thefteenth European Conference of Articial Intelligence (ECAI 2002),page 350. IOS Press, July 2002.

[Rou04] Josep Roure. Incremental Methods for Bayesian Network StructureLearning. PhD thesis, Universidad Politecnica de Cataluna, 2004.

[Saa98] David Saad. On-line Learning In Neural Networks. CambridgeUniversity Press, 1998.

[UBC97] Paul E. Utgoff, Neil C. Berkman, and Jeffery A. Clouse. Decisiontree induction based on efficient tree restructuring. MachineLearning, 29(1):5–44, 1997.

[Yan03] Ying Yang. Discretization for Naive-Bayes Learning. PhD thesis,School of Computer Science and Software Engineering of MonashUniversity, July 2003.

[YW03] Ying Yang and Geoff I. Webb. Weighted proportional k-interval dis-cretization for naive-bayes classifiers. In 7th Pacific-Asia Conferenceon Knowledge Discovery and Data Mining. Morgan Kaufman, 2003.

93