ID3 - Método de Classificação Baseado em Árvore de
Decisão
Michel Alves dos Santos ∗
Dezembro de 2011
Resumo
Um dos maiores...
ções simples do conhecimento, e um meio efi-
ciente de construir classificadores que predizem
ou revelam classes ou informaç...
tema. Na teoria da informação, este termo tem
uma significado semelhante, ele mede o grau de
desordem de um conjunto de dad...
3.4 Mineração de Dados
Além de classificação de dados, árvores de de-
cisão são úteis para inferir padrões a partir dos
dad...
Próximos SlideShares
Carregando em…5
×

ID3 Algorithm

314 visualizações

Publicada em

One of the biggest dilemmas faced by decision-making systems is to determine an efficient means to produce classifiers from data base regarding the processing time and the form of simple symbolic representation understandable that facilitates the analysis of the problem in question. In this brief report we will discuss a very popular tool in knowledge discovery in databases process and thus aid in making decisions: the Decision Trees.

Publicada em: Educação
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
314
No SlideShare
0
A partir de incorporações
0
Número de incorporações
5
Ações
Compartilhamentos
0
Downloads
5
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

ID3 Algorithm

  1. 1. ID3 - Método de Classificação Baseado em Árvore de Decisão Michel Alves dos Santos ∗ Dezembro de 2011 Resumo Um dos maiores dilemas enfrentados pelos sis- temas de tomada de decisão é determinar um meio eficiente para produzir classificadores a partir de base de dados em relação ao tempo de processamento e à forma de representação simbólica simples e compreensível que facilite a análise do problema em questão. Neste sucinto artigo iremos debater sobre uma ferramenta bas- tante popular no processo de descoberta de co- nhecimento em bases de dados e consequente- mente no auxílio da tomada de decisões: as Ár- vores de Decisão. 1 Introdução Classificadores baseados em árvores de deci- são, redes neurais, redes bayesianas, são caracte- rizados pelo fato de utilizarem os dados de trei- namento para construírem um modelo de clas- sificação, que uma vez encontrado e testado, es- tará pronto para ser utilizado na categorização de qualquer novo objeto. O processo de encon- trar o modelo é lento, mas uma vez encontrado, o ato de classificar um novo objeto é realizado de forma rápida. Tais classificadores são chama- dos de Classificadores Apressados (Eager Clas- sifiers). Existem diversos métodos de classificação, amplamente utilizados na prática, que diferem dos métodos anteriormente citados pelo fato de não utilizarem os dados de treinamento para produzirem um modelo de classificação. O processo de classificação utilizado por estes classificadores, ditos preguiçosos (Lazy Classi- fiers) , pode ser descrito suscintamente da se- guinte forma: a cada novo objeto que se quer ∗Bacharelando em Ciência da Computação, Universi- dade Federal do Estado de Alagoas (UFAL). E-mail: mi- chel.mas@gmail.com. Disciplina: Inteligência Artificial II. Docente Responsável: Aydano Pamponet Machado. classificar, utiliza-se os dados de treinamento para verificar quais são os objetos nesta base de dados que mais se assemelham ao novo objeto que se quer classificar. O objeto será classifi- cado dentro da classe mais comum a que per- tencem os objetos mais similares a ele. Assim, a classificação é feita por analogia. Nenhum mo- delo de classificação é criado. Ao invés disto, a cada novo objeto a ser classificado, os dados de treinamento são escaneados. Obviamente, classificadores preguiçosos são computacionalmente dispendiosos. Eles reque- rem técnicas eficientes de armazenamento e são adequados para implementação em ambientes de computação paralela. Uma qualidade de tais classificadores é que suportam aprendizado in- cremental. Dois exemplos de classificadores pre- guiçosos são o k-Nearest Neighbor (k vizinhos mais próximos) e o Case-based Reasoning (raci- ocínio baseado em casos). Neste artigo iremos abordar os conceitos ini- ciais sobre árvores de decisão e como elas podem auxiliar no processo de tomada de decisões, além disso usaremos uma das heurísticas mais conhe- cidas durante o processo de aprendizagem para construção de árvores de decisão mais eficientes: a entropia. 2 Árvores de Decisão Classificadores baseados em árvore de decisão são um dos ramos da área de inteligência arti- ficial, mais especificamente, eles pertencem ao sub-campo de aprendizagem de máquina. Isto se deve à sua habilidade de aprender através de exemplos com o objetivo de classificar registros em uma base de dados. 2.1 Utilização Amplamente utilizadas em algoritmos de clas- sificação, as árvores de decisão são representa- 1
  2. 2. ções simples do conhecimento, e um meio efi- ciente de construir classificadores que predizem ou revelam classes ou informações úteis basea- das nos valores de atributos de um conjunto de dados. Eles são muito úteis em atividades de mineração de dados, isto é, o processo de extra- ção de informações previamente desconhecida, a partir de grandes bases de dados. Aplicações desta técnica podem ser vista em diversas áreas, desde cenários de negócios até sistemas de piloto automático de aeronaves e diagnósticos médicos. 2.2 Descrição Uma árvore de decisão é essencialmente uma série de declarações if-elses, que quando aplica- dos a um registro de uma base de dados , re- sultam na classificação daquele registro. O mais interessante sobre o programa de árvores de de- cisão não é a sua construção a partir de classi- ficação de um conjunto de treinamento, e sim a sua habilidade de aprendizado. Quando o trei- namento é finalizado, é possível alimentar sua árvore de decisão construída a partir de exem- plos com novos casos a fim de classífica-los. Figura 1: Exemplo de árvore de decisão. Observe que a estrutura realmente é na forma de árvore. Dessa maneira, é possível utilizar técnicas recursivas para criar e percorrer essa estrutura. A árvore de decisão apresentada acima é uma de várias árvores que poderiam ser construídas para solucionar o problema. A tarefa de achar a melhor árvore de decisão é um problema NP- completo, isto é, que o tempo de processamento necessário para achar a ‘melhor’ árvore de deci- são pode ser exponencial a medida que o número de de dados usados no treinamento da rede. Em- bora, pareça ser impossível encontrar a menor árvore de decisão em um tempo considerável, é possível encontrar uma que seja ‘pequena sufici- ente’, satisfatória a partir do uso de heurísticas especiais. A tarefa da heurística é realizar esta tarefa escolhendo o ‘melhor próximo’ atributo que divida o conjunto de dados baseado em um critério pré-definido. 2.3 Algoritmos Há vários algoritmos de construção de árvore de decisão (C4.5,CART,CHAID, entre outros). Entretanto, para este artigo escolhemos o mais popular deles: a heurística ID3, para a escolha dos "melhores próximos"atributos baseados em conceitos encontrados em teoria da informação. 3 O Algoritmo ID3 O algoritmo ID3, Iterative Dichotomizer 3, foi desenvolvido por Ross Quinlan (QUILAN, 1986). Esse algoritmo consiste em um processo de indução de árvores de decisão e tem como finalidade avaliar a informação contida nos atri- butos segundo a sua entropia, que mede quanto esse espaço é homogêneo, ou por outro lado, quanto maior for a entropia maior será a desor- dem. O atributo mais importante é colocado na raiz e, de forma top-down, a árvore é construída recursivamente, com o objetivo de sempre esco- lher o melhor atributo para determinado nó. Uma das grandes vantagens do ID3 é a sua simplicidade, o seu processo de construção torna relativamente simples a compreensão do seu fun- cionamento. A maior desvantagem desse algo- ritmo é que a árvore de decisão produzida por ele é praticamente imutável, o que implica que não se pode eficientemente reutilizar a árvore sem reconstruí-la. O algoritmo ID3 usa o conceito de entropia para calcular qual o melhor atributo será utili- zado para dividir os dados em sub-grupos. Após a construção de uma árvore de decisão é impor- tante avaliá-la. Esta avaliação é realizada atra- vés da utilização de dados que não tenham sido usados no treinamento. Esta estratégia permite estimar como a árvore generaliza os dados e se adapta a novas situações, podendo, também, se estimar a proporção de erros e acertos ocorridos na construção da árvore . 3.1 A Heurística ID3 A física usa o termo entropia para descrever a quantidade de desordem associada a um sis- 2
  3. 3. tema. Na teoria da informação, este termo tem uma significado semelhante, ele mede o grau de desordem de um conjunto de dados. A heu- rística ID3 usa este conceito para encontrar o próximo melhor atributo de um dado para ser utilizado como nó de uma árvore de decisão. Logo , a idéia por trás do algoritmo ID3 é achar um atributo que reduza em maior valor a entro- pia de um conjunto de dados, assim reduzindo a aleatoriedade - dificuldade de previsão - da variável que define classes. Seguindo esta heu- rística, você estará essencialmente encontrando o melhor atributo para classificar os registros (de acordo com a redução da quantia de infor- mação necessária para descrever a partição dos dados que foram divididos ) a fim de que os mes- mos tenham utilidade máxima (exemplos são da mesma classe). O algoritmo ID3 segue os se- guintes passos: 1. Começar com todos os exemplos do treina- mento; 2. Escolher o atributo que melhor divide os exemplos, ou seja agrupar os exemplos da mesma classe ou exemplos semelhantes; 3. Para o atributo escolhido, criar um nó filho para cada valor possível do atributo ; 4. Transportar os exemplos para cada filho tendo em conta o valor do filho; 5. Repetir o procedimento para cada filho não "puro". Um filho é puro quando cada atri- buto X tem o mesmo valor para todos os exemplos. 3.2 Entropia A Entropia é a medida da impureza do con- junto de treino. Assumindo o valor máximo (1) quando existem tantos elementos positivos como negativos, e o valor mínimo (0) quando todos os elementos são da mesma classe. Na etapa 2 do algoritmo, para achar o me- lhor atributo é necessário encontrar a entropia para cada atributo possível naquele nó. Para isto usamos a fórmula da entropia. Dado um conjunto de entrada S que pode ter C classes distintas, a entropia de S será dada por: Entropy(S) = − C i=1 pi · log2(pi) (1) Figura 2: Gráfico que exibe o comportamento da função de entropia. Função entropia relativa a uma classificação booleana, como a proporção, p+ de exemplos positivos variando entre 0 e 1. onde pi é a proporção de dados em S que perten- cem à classe i. Onde calculamos a proporção do número de exemplos positivos e o mesmo para o número de exemplos negativos para aquele atributo em questão multiplicado pelo logaritmo destas proporções. 3.3 Ganho de Informação O ganho de informação é a redução esperada no valor da Entropia, devido à ordenação do conjunto de treino segundo os valores do atri- buto A (ver equação 2). O próximo passo na heurística ID3 é calcular o ganho de informação para cada atributo que pode ser selecionado como nó na árvore. Essen- cialmente é apenas calcular a entropia de todo o conjunto de dados e diminuir este da entropia do sub-conjunto particionado para tal atributo. Este processo é feito para cada atributo do con- junto de dados, e o atributo com o maior ganho de informação será o selecionado para o próximo nó da árvore. Gain(S, A) = Ent(S) − v∈A |Sv| |S| · Ent(Sv) (2) Onde a função Ent(S) significa a entropia de S e Ent(Sv) a entropia de Sv. O raciocínio por trás do ganho de informação é semelhante ao cálculo de entropia demonstrado acima, porém agora considerando os sub-conjuntos particiona- dos de acordo com o valor do atributo em ques- tão. 3
  4. 4. 3.4 Mineração de Dados Além de classificação de dados, árvores de de- cisão são úteis para inferir padrões a partir dos dados, também referenciado como mineração de dados. Observando sucintamente a árvore exi- bida na figura [1] podemos inferir algumas ten- dências a partir do conjunto de dados. A mais óbvia tendência nos dados é que jovens (idades entre 18 e 35) e idosos (> 55) não compram seus produtos. 4 Conclusão O ponto mais importante verificado é que uma inspeção superficial do conjunto de dados, mesmo com poucos registros, não nos fornece, facilmente, tendências ou padrões. Quando esse número aumenta para centenas, milhares ou até milhões de registros, achar essas tendências pode ser impossível. Usando árvores de deci- são, podemos, não apenas prever padrões, como também podemos apontar tendências importan- tes no conjunto de dados de teste a fim de auxi- liar na melhora de práticas (de marketing, por exemplo), e consequentemente atingir novas me- tas. Referências BATISTA, G. E. A. P. A. (2003), Pré- Processamento de Dados em Aprendizado de Máquina Supervisionado., PhD thesis, Insti- tuto de Ciências Matemáticas e de Computa- ção, Universidade de São Paulo, São Carlos. BERRY, M. J. A. & LINOFF, G. (1997), Data Mining Tehniques – for marketing, sales, and customer support, United States: Wiley Com- puter Publishing. Colin, A. (1996), ‘Building decision trees with the id3 algorithm’, Dr. Dobbs Journal. GOEBEL, M. & GRUENWALD, L. (1999), ‘A survey of data mining and knowledge disco- very software tools’, ACM SIGKDD 1, 20–33. KOCK, N. F., MCQUEEN, R. J. & BAKER, M. (1996), ‘Learning and process improvement in knowledge organisations: A critical analysis of four contemporary myths.’, The Learning Organization p. 31–40. Mitchell, T. (1997), Machine Learning, McGraw-Hill. Monson, L. (1997), ‘Algorithm alley column: C4.5’, Dr. Dobbs Journal. QUILAN, J. R. (1986), ‘Introduction of decision trees’, Machine Learning 1, 81–106. Quinlan, J. R. (1993), C4.5 Programs for Ma- chine Learning, Morgan Kaufmann. RUSSEL, S. J. & NORVIG, P. (1995), Artifi- cial Intelligence: A Modern Approach., Upper Saddle River, New Jersey: Prentice Hall,. RUSSELL, S. J. & NORVIG, P. (2004), Inteli- gência Artificial, 2 ed. Rio de Janeiro. Utgoff, P. E. (1989), Incremental Induction of Decision Trees, Kluwer Academic Publishers. Conteúdo 1 Introdução 1 2 Árvores de Decisão 1 2.1 Utilização . . . . . . . . . . . . . . . 1 2.2 Descrição . . . . . . . . . . . . . . . 2 2.3 Algoritmos . . . . . . . . . . . . . . 2 3 O Algoritmo ID3 2 3.1 A Heurística ID3 . . . . . . . . . . . 2 3.2 Entropia . . . . . . . . . . . . . . . . 3 3.3 Ganho de Informação . . . . . . . . 3 3.4 Mineração de Dados . . . . . . . . . 4 4 Conclusão 4 Referências 4 Listagem de Figuras 4 Lista de Figuras 1 Exemplo de árvore de decisão. Ob- serve que a estrutura realmente é na forma de árvore. Dessa maneira, é possível utilizar técnicas recursivas para criar e percorrer essa estrutura. 2 2 Gráfico que exibe o comportamento da função de entropia. Função en- tropia relativa a uma classificação booleana, como a proporção, p+ de exemplos positivos variando entre 0 e 1. . . . . . . . . . . . . . . . . . 3 4

×