• Nenhum resultado encontrado

O principal objetivo desta fase ´e transformar a representa¸c˜ao dos dados a fim de superar quaisquer limita¸c˜oes existentes nos algoritmos que ser˜ao empregados para a extra¸c˜ao de padr˜oes. De uma forma geral, a decis˜ao de quais transforma¸c˜oes s˜ao necess´arias depende do algoritmo que ser´a utilizado na fase de MD. Algumas das transforma¸c˜oes mais comuns s˜ao:

4

Os termos aprendizado construtivo ou transforma¸c˜ao de atributostamb´em s˜ao utilizados na literatura.

5

Atributos pertencentes ao conjunto de dados original.

6

Seção 3.5: Transformação de Dados 47

Normaliza¸c˜ao

Consiste em transformar os valores dos atributos de seus intervalos originais para um intervalo espec´ıfico, como, por exemplo, [−1, 1] ou [0, 1]. Esse tipo de trans- forma¸c˜ao ´e especialmente valiosa para os m´etodos que calculam distˆancias entre atributos. Por exemplo, um m´etodo como o k-vizinhos mais pr´oximos tende a dar mais importˆancia para os atributos que possuem um intervalo maior de valores. Outros m´etodos como redes neurais s˜ao reconhecidamente melhor treinadas quando os valores dos atributos s˜ao pequenos. Entretanto, normaliza¸c˜ao n˜ao ´e de grande utilidade para a maioria dos m´etodos que induzem representa¸c˜oes simb´olicas, tais como ´arvores de decis˜ao e regras de decis˜ao, uma vez que a normaliza¸c˜ao tende a diminuir a compreensibilidade do modelo gerado por tais algoritmos.

Discretiza¸c˜ao de atributos quantitativos

Muitos algoritmos possuem a limita¸c˜ao de trabalhar somente com atributos qua- litativos. Entretanto, muitos conjuntos de dados possuem atributos quantitativos, e para que esses algoritmos possam ser aplicados ´e necess´ario utilizar algum m´e- todo que transforma um atributo quantitativo em um atributo qualitativo, ou seja, em faixas de valores. Diversos m´etodos de discretiza¸c˜ao de atributos foram pro- postos pela comunidade. Uma descri¸c˜ao geral desses m´etodos pode ser encontrada em (Dougherty, Kohavi & Sahami,1995; Kohavi & Sahami, 1996).

Transforma¸c˜ao de atributos qualitativos em quantitativos

Alguns algoritmos n˜ao s˜ao capazes de manipular atributos qualitativos. Dessa forma, ´e necess´ario converter os atributos qualitativos em atributos quantitativos. Existem diversas abordagens para realizar essa transforma¸c˜ao dependendo das carac- ter´ısticas e limita¸c˜oes de cada algoritmo. De uma forma geral, atributos qualitativos sem ordem inerente, tal como verde, amarelo e vermelho, podem ser mapeados ar- bitrariamente para n´umeros. Entretanto, esse mapeamento acaba por criar uma ordem nos valores do atributo que n˜ao ´e real. Atributos qualitativos com ordem, tal como pequeno, m´edio e grande, podem ser mapeados para valores num´ericos de forma a manter a ordem dos valores, por exemplo pequeno = 1, m´edio = 2 e grande = 3.

Alguns especialistas em redes neurais aconselham criar um n´o de entrada para cada valor de um atributo qualitativo, ou seja, um atributo qualitativo com p valores di- ferentes deve ser desmembrado em p atributos bin´arios. Cada novo atributo bin´ario representa um ´unico valor do atributo original. Esse mapeamento ´e feito sempre que o valor de p n˜ao seja muito grande, tipicamente 2 < p < 5. Caso p = 2, ent˜ao

´e feito um mapeamento de tal forma que um dos valores do atributo quantitativo represente um valor baixo (tipicamente 0) e o outro valor represente um valor alto (tipicamente 1).

Atributos de tipos de dado complexos

A maioria dos algoritmos utilizados para extrair padr˜oes n˜ao consegue trabalhar com tipos de dado mais complexos. Por exemplo, como j´a mencionado, atributos do tipo data e hora n˜ao s˜ao normalmente analisados pela maioria dos algoritmos utilizados na fase de MD. Dessa forma, ´e necess´ario converter esses atributos para algum outro tipo de dado com o qual esses algoritmos possam trabalhar. No caso espec´ıfico dos tipos de dado data e hora, a escolha mais simples ´e pela convers˜ao para o tipo inteiro. Isso pode ser feito calculando-se a diferen¸ca em dias, meses, ou qualquer outra unidade de tempo, entre os valores das datas do atributo em quest˜ao e uma data fixa. Por exemplo, um atributo data de nascimento pode ser convertido para idade calculando-se a diferen¸ca em anos entre os valores do atributo data de nascimento e a data atual.

3.6

Considera¸c˜oes Finais

Pr´e-processamento de dados ´e tido como uma das tarefas mais trabalhosas e demoradas de KDD. ´E considerado que aproximadamente 80% do tempo despendido no processo de KDD seja utilizado para pr´e-processar os dados (Pyle, 1999). Isso se deve, em parte, `a existˆencia de um grupo de problemas que s˜ao espec´ıficos para cada aplica¸c˜ao e que, dessa forma, precisam ser resolvidos com solu¸c˜oes espec´ıficas. Quanto ao outro grupo de tarefas independentes de dom´ınio, existe ainda uma falta de ferramentas que englobem uma gama de solu¸c˜oes de pr´e-processamento que possam ser testadas pelo analista de dados.

No pr´oximo cap´ıtulo ´e apresentado o projeto do ambiente Discover Learning Environment — DLE. O ambiente DLE visa dar suporte a implementa¸c˜ao de m´etodos de pr´e-processamento de dados. Nos cap´ıtulos seguintes, o ambiente DLE ´e utilizado para analisar dois problemas de pr´e-processamento fracamente dependentes de conhecimento de dom´ınio: o tratamento de valores desconhecidos, e de conjuntos de dados com classes desbalanceadas.

Cap´ıtulo 4

O Ambiente Discover Learning

Environment — DLE

4.1

Considera¸c˜oes Iniciais

Neste cap´ıtulo ´e apresentada uma descri¸c˜ao do ambiente computacional Discover Le- arning Environment — DLE, o qual ´e integrado ao projeto Discover. O ambiente computacional DLE tem como principal objetivo prover um framework para que novos m´etodos de pr´e-processamento de dados possam ser rapidamente implementados e avali- ados experimentalmente.

Este cap´ıtulo est´a organizado da seguinte forma: na Se¸c˜ao 4.2´e apresentada a bibli- oteca de classes Discover Object Library — DOL e o ambiente para gerenciamento de experimentos Sniffer, os quais integram o ambiente DLE; na Se¸c˜ao 4.3 ´e explicada a arquitetura, o projeto e os principais m´odulos da biblioteca DOL; na Se¸c˜ao 4.4 ´e dis- cutido o funcionamento do ambiente computacional Sniffer, al´em do seu projeto e sua arquitetura interna; por fim, na Se¸c˜ao 4.5 s˜ao apresentadas as considera¸c˜oes finais deste cap´ıtulo.