BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING Asterio K. Tanaka http://www.uniriotec.br/~tanaka/tin0036 [email protected] Introdução a Data Mining Árvores de Decisão Categorização de Dados Parte II Rogério Atem de Carvalho Adaptado de “Companion slides for the text by Dr. M.H.Dunham, Data Mining, Introductory and Advanced Topics, Prentice Hall, 2002”. Objetivos de Data Mining Modelos e Tarefas Tarefas Básicas de Data Mining I • Classificação mapeia dados em classes prédefinidas – Aprendizado supervisionado – Reconhecimento de Padrões – Predição • Regressão mapeia dados a variáveis de predição. • Clustering agrupa itens similares em clusters (grupos). – Aprendizado Não-supervisionado – Segmentação – Particionamento Tarefas Básicas de Data Mining II • Sumarização mapeia dados em subconjuntos associados a descrições simples. – Caracterização – Generalização • Link Analysis descobre relações entre dados (correlação). – Análise de Afinidade – Regras de Associação Ex: Análise de Séries Temporais • • • • Exemplo: Mercado de Ações Predição de valores futuros Determinação de padrões no tempo Classificação de comportamento Classificação I - Sumário Objetivo: Prover uma visão geral do problema de classificação e introduzir alguns dos algoritmos básicos. • Visão Geral do Problema de Classificação • Técnicas de Classificação – – – – – Regressão Distância Árvores de Decisão Regras Redes Neuronais Artificiais Classificação II - O Problema • Dado uma base de dados D={t1,t2,…,tn} e um conjunto de classes C={C1,…,Cm}, o Problema de Classificação consiste em definir um mapeamento f:DJC onde cada ti é associado a uma classe. • Na prática divide D em classes de equivalência. • Predição é similar, mas pode ser vista como tendo um número infinito de classes. Classificação III - Exemplos • Professores classificam o desempenho de estudantes em A, B, C, D, ou F. • Identificar cogumelos como venenosos ou não. • Predizer quando um rio irá transbordar. • Identificar indivíduos com risco de crédito. • Reconhecimento de Padrões em geral. Classificação IV Ex: Gradação x • If x >= 90 then grau =A. • If 80<=x<90 then grau =B. • If 70<=x<80 then grau =C. • If 60<=x<70 then grau =D. • If x<50 then grau =F <90 >=90 x <80 x <70 x <50 F A >=80 B >=70 C >=60 D Classificação V: Técnicas • Abordagem: 1. Criar um modelo específico através de análise dos dados de treinamento ou utilizar o conhecimento de especialistas do domínio. 2. Aplicar o modelo desenvolvido aos novos dados. • Classes devem ser pré-definidas. • Técnicas devem ser baseadas em distâncias ou métodos estatísticos. Classificação VI: Definindo Classes Bas. Em Distância Baseado em Particionamento Classificação VII: Questões • Dados Faltando – Ignorar. – Substituir por valor assumido. • Avaliação de Desempenho – Mede a precisão da classificação nos dados de teste. – Confusion Matrix. – Operation Characteristic Curve. Classificação VIII: Exemplo Nam e K ris tin a J im M a g g ie M a rth a S te p h a n ie Bob K a th y D ave W o rth S te v e n D e b b ie Todd K im Amy W y n e tte G ender F M F F F M F M M M F M F F F H e ig h t 1 .6 m 2m 1 .9 m 1 .8 8 m 1 .7 m 1 .8 5 m 1 .6 m 1 .7 m 2 .2 m 2 .1 m 1 .8 m 1 .9 5 m 1 .9 m 1 .8 m 1 .7 5 m O u tp u t1 S h o rt T a ll M e d iu m M e d iu m S h o rt M e d iu m S h o rt S h o rt T a ll T a ll M e d iu m M e d iu m M e d iu m M e d iu m M e d iu m O u tp u t2 M e d iu m M e d iu m T a ll T a ll M e d iu m M e d iu m M e d iu m M e d iu m T a ll T a ll M e d iu m M e d iu m T a ll M e d iu m M e d iu m Classificação VIII: Desempenho Positivo Verdadeiro Falso Negativo Falso Positivo Negativo Verdadeiro Classificação VIII: Confusion Matrix Usando exemplo anterior com Output1 corrigido e Output2 mantido Actual Assignment Membership Short Medium Short 0 4 Medium 0 5 Tall 0 1 Tall 0 3 2 Operating Characteristic Curve Árvores de Decisão I • Árvores de Decisão (Decision Trees - DT): – Raiz e cada nó interno são entitulados com uma pergunta. – Arcos representam cada resposta possível para a pergunta associada. – Cada folha representa uma predição de uma solução para o problema. • Técnica popular para classificação, onde nós folha correspondem à classe a qual a tupla pertence. Árvores de Decisão II -Exemplo Árvores de Decisão III • Um Modelo de Árvore de Decisão é um modelo computacional que consiste de três partes: – Árvore de Decisão – Algoritmo para criar a árvores – Algoritmo de aplicação da árvore aos dados • Criação da árvore é a parte mais difícil. • Processamento é uma busca similar ás tradicionais em árvores. Árvores de Decisão IV - Algoritmo • Árvores de Decisão V Vantagens/Desvantagens Vantagens: – Fácil de entender. – Fácil de gerar regras. • Desvantagens: – Classifica por particionamento retangular. – Não manipulam bem dados não numéricos. – Podem ser muito grandes. Classificação Usando Árvores de Decisão • Baseada em particionamento: Divide o espaço de busca em regiões retangulares. • Tupla é colocada em classe com base na região na qual ela “cai”. • Abordagem DT difere na forma como a árvore é criada: DT Induction • Nós internos são associados com atributos e arcos com valores para cada atributo. • Algoritmos: ID3, C4.5, CART Árvore de Decisão Dado: – D = {t1, …, tn} onde ti=<ti1, …, tih> – Esquema do BD contém {A1, A2, …, Ah} – Classes C={C1, …., Cm} Árvore de Decisão ou de Classificação é uma árvore associada com D tal que – Cada nó interno é rotulado com um atributo, Ai – Cada arco é rotulado com um predicado que pode ser aplicado ao atributo. – Cada nó folha é rotulado com uma classe, Cj AD: Indução AD: Splits Area Sexo M F Altura Comparando ADs Balanceada Profunda Tópicos em DT • • • • • • • Escolha de Splitting Attributes Ordenação de Splitting Attributes Splits Estrutura da Árvore Critério de Parada Dados de Treinamento Pruning (poda) Informação/Entropia • Dadas as probabilidades p1, p2, .., ps cuja soma é a unidade, Entropia é definida como: • Entropia mede a quantidade de aleatoriedade ou incerteza. • Objetivo na classificação: – Sem surpresas – Entropia = 0 Entropia log (1/p) H(p,1-p) ID3 • Creates tree using information theory concepts and tries to reduce expected number of comparison.. • ID3 chooses split attribute with the highest information gain: ID3 Example (Output1) Starting state entropy: • 4/15 log(15/4) + 8/15 log(15/8) + 3/15 log(15/3) = 0.4384 • Gain using gender: – Female: 3/9 log(9/3)+6/9 log(9/6)=0.2764 – Male: 1/6 (log 6/1) + 2/6 log(6/2) + 3/6 log(6/3) = 0.4392 – Weighted sum: (9/15)(0.2764) + (6/15)(0.4392) = 0.34152 – Gain: 0.4384 – 0.34152 = 0.09688 • Gain using height: 0.4384 – (2/15)(0.301) = 0.3983 • Choose height as first splitting attribute • C4.5 ID3 favors attributes with large number of divisions • Improved version of ID3: – – – – – Missing Data Continuous Data Pruning Rules GainRatio: CART • Create Binary Tree • Uses entropy • Formula to choose split point, s, for node t: • PL,PR probability that a tuple in the training set will be on the left or right side of the tree. CART Example • At the start, there are six choices for split point (right branch on equality): – – – – – – P(Gender)=2(6/15)(9/15)(2/15 + 4/15 + 3/15)=0.224 P(1.6) = 0 P(1.7) = 2(2/15)(13/15)(0 + 8/15 + 3/15) = 0.169 P(1.8) = 2(5/15)(10/15)(4/15 + 6/15 + 3/15) = 0.385 P(1.9) = 2(9/15)(6/15)(4/15 + 2/15 + 3/15) = 0.256 P(2.0) = 2(12/15)(3/15)(4/15 + 8/15 + 3/15) = 0.32 • Split at 1.8