Mineração de Dados (Data Mining)

Slides:



Advertisements
Apresentações semelhantes
AULA 02 PROGRAMAÇÃO LINEAR INTEIRA
Advertisements

Inteligência Artificial
Amintas engenharia.
HAC MD -junho/ Noções de algoritmos e estudo de casos das principais tarefas de Mineração de dados.
Analise e Seleção de Variáveis
Árvores.

Pesquisa em Memória Primária – Árvores de Busca
Reconhecimento de Padrões Seleção de Características
Reconhecimento de Padrões Teoria da Decisão Bayesiana
Medida do Tempo de Execução de um Programa
FACENS – Engenharia da Computação Inteligência Artificial
Árvores Introdução e Aplicações Árvores de Busca Binária Fundamentos
Ordenação Facilitar e aumentar a eficiência das operações de pesquisa sobre esses dados Pode ser crescente ou decrescente A seqüência de entrada, normalmente,
Classificação: conceitos básicos e árvores de decisão
Métodos de Pesquisa: Seqüencial e Binária
INF 1771 – Inteligência Artificial
Sistemas Inteligentes
Buscas em Grafos Prof. André Renato 1º Semestre/2012
3. Árvore de Decisão.
Marcus Sampaio DSC/UFCG. Marcus Sampaio DSC/UFCG.
Departamento de Informática – Marcos Henrique Fonseca Ribeiro – Slide 1 Construindo Árvores de Decisão NoTrueHighMildRainy YesFalseNormalHotOvercast YesTrueHighMildOvercast.
EAL ESTATÍSTICA, PLANEJAMENTO E OTIMIZAÇÃO DE EXPERIMENTOS
Aprendizado de Árvores de Decisão
I Iterated Local Search Helena R. Lorenço, Olivier Martinz
Laís Araújo Lopes de Souza
Classificação. Classificação: Atribuição a uma classe (rótulo de um atributo categórico). Classifica dados (constrói um modelo) baseado em um conjunto.
Algorítmos e estrutura de dados III
DISTRIBUIÇÕES AMOSTRAIS
Métodos de Classificação por Árvores de Decisão
Mini testes A apresentar na aula da semana a seguir à data descrito em cada teste. As respostas não devem exceder mais do que duas páginas A4.
Sistemas Inteligentes
Indução de Árvore de Decisão
Sistemas Inteligentes
Redes Bayesianas – Inferência
Árvores de Decisão: supervisionado, simbólico, não incremental (?)
PLANEJAMENTO DO EXPERIMENTO
O Processo de KDD Data Mining SUMÁRIO - AULA1 O processo de KDD
Marcus Sampaio DSC/UFCG. Marcus Sampaio DSC/UFCG Etapas do Processo.
Pesquisa Mensal de Emprego
Árvores de Decisão Valmir Macário.
1 Árvores de Decisão Marcílio Souto DIMAp/UFRN. 2 Árvores de Decisão – ADs (1/4) zForma mais simples: yLista de perguntas  respostas “sim” ou “não” yHierarquicamente.
Busca Combinatorial e Métodos de Heurística

Seleção de atributos Mariana Pinheiro Bento IA368Q.
Mineração de Dados: Classificação e Predição
Recuperação Inteligente de Informação

Marcus Sampaio DSC/UFCG Os slides 3-15 foram copiados de Pang-Ning Tan.
Regressão e Previsão Numérica.
Universidade Federal Fluminense Faculdade de Medicina Mestrado Profissional em Saúde Materno-Infantil 2011 BIOESTATÍSTICA-aula 2 Prof. Cristina Ortiz Valete.
Classificação: conceitos básicos e árvores de decisão

Algoritmos FPT para o Problema da k-Cobertura por Vértices
Prof. Alexandre Monteiro Recife
Inteligência Artificial I
Marcus Sampaio DSC/UFCG Os slides 3-15 foram copiados de Pang-Ning Tan.
Paradigmas de Mineração de Dados
Aprendizado de Máquinas
Árvores Equilibradas Sumário Splay B-tree Vermelho-Preto AA e BB
Busca Competitiva Disciplina: Inteligência Artificial
Aprendizagem Simbólica
Sistemas de Informação Inteligentes Aula 1 Nadilma Nunes
FEATURE SELECTION. Introdução  Estudo de metodologias relacionadas a seleção de atributos  Maldição da dimensionalidade  O número de atributos do desenvolvedor.
Mineração de Dados Classificação Felipe Carvalho – UFES 2009/2.
Árvores (introdução) Anjolina Grisi de Oliveira Obs: vários slides foram cedidos por Adolfo Almeida Duran (UFBA)
Métodos de Pesquisa: Sequencial e Binária
Inferência 1:Estimação de Parâmetros Relembrando o Teorema Central do Limite Da aula anterior: a) Os estimadores da média e da s 2 são não viciados e de.
Autor : Lênin Charqueiro. Pelotas,8 de março de
INE5408 Estruturas de Dados Árvores B - Estrutura e peculiaridades -Algoritmos de inserção, pesquisa e deleção.
Transcrição da apresentação:

Mineração de Dados (Data Mining)

Como Construir uma Árvore de Decisão Encontrar a árvore ótima é computacionalmente inviável Algoritmo de Hunt: ID3 C4.5 CART Embora qualquer algoritmo de indução de árvores de decisão se baseie na estratégia de “dividir para conquistar”, existem alguns aspectos diferentes e determinantes usados na construção dos mesmos. Entre eles, pode-se destacar os critérios usados para: (I) a escolha do atributo a utilizar em cada nodo; (II) a definição da partição de cada nodo; (III) a decisão de quando o nodo é uma folha; e (IV) a definiçao de qual classe atribuir a cada folha [FON 94]. Segundo [FON 94] e [BAR 2000], entre os critérios disponíveis para a escolha do atributo a utilizar como nodo está o método da entropia [QUI 93]; o método da paridade; a técnica de Laplace; e também a escolha randômica. Para definir o particionamento dos galhos de cada nodo para atributos discretos, pode-se utilizar alguns critérios, como [FON 94]: um galho para cada valor do atributo; criação de nós binários, atribuindo a um dos galhos um valor eleito e ao outro, todos os outros valores; agrupamento de valores do atributo em dois grupos; ou agrupamento de valores em vários grupos. Já para galhos de atributos contínuos pode-se utilizar critéris como: testes simples, em que é escolhido o conjunto de valores considerado de maior valor pelo critério de avaliação adotado; testes múltiplos, em que define-se múltiplos intervalos de partição dos valores de um atributo; ou combinação linear de características. Também segundo [FON 94], a decisão de quando o nodo é uma folha pode ser feita através do método de aproximação baseada nas probabilidades, do método de aproximação baseada no critério de Laplace, no critério das massas probabilísticas, entre outros. Finalmente, a definição de qual classe atribuir a uma folha pode ser feita pela atribuição da classe de maior probabilidade ou pela determinação baseada na noção de custos. Além desses aspectos, alguns outros devem ser analisados no momento de se desenvolver um sistema deste tipo, tais como o uso de amostras da base de dados, de técnicas de pré-poda e poda, de modo a maximizar a eficácia e a qualidade da árvore, e de otimizar a performance durante a sua construção. A pré-poda pode ser feita com a paragem baseada na informação mútua, no teste de independência ou na entropia delta. Já a poda pode ser realizada baseada no algoritmo Laplaciano, na minimização do custo/complexidade, baseada no erro, segundo o modelo de Guo e Gelfand, entre outros [FON 94].

O algoritmo ID3 – Iterative Dichotomizer 3 Cada vértice é associado ao atributo mais informativo que ainda não tenha sido considerado. Para medir o nível de informação de um atributo se utiliza o conceito de entropia. Menor o valor da entropia, menor a incerteza e mais utilidade tem o atributo para a classificação.

O algoritmo ID3 - Exemplo O número de combinações possíveis são: Aspecto: sol, nublado, chuva Temperatura: quente, agradável, frio Umidade: alta, normal Vento: fraco, forte (3 x 3 x 2 x 2 = 36)

Qual é o atributo mais relevante para prever a classe a qual pertencem os dados ? Ganho da Informação: o ganho de informação do atributo X, é a diferença entre a informação necessária para identificar um elemento de T e a informação necessária para identificar um elemento de T depois que o valor de atributo X tenha sido considerado: Ganho ( X,T) = Info (T) – Σ TX / T * Info (X, T ) O algoritmo ID3

O algoritmo ID3 - Exemplo Conjunto de registros T com 14 registros. Duas partições Sim e Não, com probabilidade 9/14 e 5/14. Info(T) = I( 9/14, 5/14 ) = -(9/14 . Log2 (9/14) + 5/14 . Log2 (5/14)) = 0.94

O algoritmo ID3 - Exemplo Info ( Aspecto, T ) = sol/T * I (sol) + nublado/T * I (nublado) + chuva/T * I (chuva) Info ( Aspecto, T ) = 5/14 * I (2/5, 3/5) + 4/14 * I (4/4 , 0) + 5/14 * I (3/5,2/5) = 0.693

O algoritmo ID3 - Exemplo Info(T) = 0.94 Info(Aspecto, T) = 0.693 Ganho ( Aspecto, T ) = 0.94 - 0.693 = 0.247

Com o objetivo de criar árvores de decisão pequenos, para identificar poucas regras, o atributo escolhido para nó da árvore é o atributo de maior ganho. O algoritmo ID3

Passo 1: Se todos os dados estão classificados em alguma das classes então parar ; senão selecionar ( utilizando alguma heurística) algum atributo A com valores v1, v2, . . ., vn e criar um nó de decisão. O algoritmo ID3

O algoritmo ID3 Passo 2 : particionar o conjunto de dados de treino T, em subconjuntos t1, t2, . . . , tn de acordo com os valores do atributo A Passo 3 : aplicar o algoritmo recursivamente para cada conjunto de dados ti O algoritmo ID3

O algoritmo ID3 - Exemplo

O algoritmo ID3 - Exemplo Info ( Sol ) = 0.971 Info ( Nublado ) = 0.0 Info ( Chuva ) = 0.971 Info ( Aspecto ) = 0.693 ( 5/14 * 0.971 + 4/14 * 0.0 + 5/14 * 0.971 ) Ganho ( Aspecto ) = 0.94 - 0.693 = 0.247

O algoritmo ID3 - Exemplo Info ( Quente ) = 1.0 Info ( Agradável ) = 0.919 Info ( Fria ) = 0.811 Info (Temperatura ) = 0.912 ( 4/14 * 1.0 + 6/14 * 0.919 + 4/14 * 0.811 ) Ganho ( Temperatura ) = 0.94 - 0.912 = 0.028

O algoritmo ID3 - Exemplo Info ( Alta ) = 0.984 Info ( Normal ) = 0.592 Info (Umidade ) = 0.636 ( 7/14 * 0.984 + 7/14 * 0.592 ) Ganho (Umidade ) = 0.94 - 0.788 = 0.152

O algoritmo ID3 - Exemplo Info ( Forte ) = 1.0 Info ( Fraco ) = 0.811 Info ( Vento ) = 0.892 ( 6/14 * 1.0 + 8/14 * 0.541 ) Ganho ( Vento ) = 0.94 - 0.738 = 0.048

O algoritmo ID3 - Exemplo Ganho ( Aspecto ) = 0.247 Ganho ( Temperatura ) = 0.028 Ganho ( Umidade ) = 0.152 Ganho ( Vento ) = 0.048 Info ( Sol ) = 0.971 Info ( Nublado ) = 0.0 Info ( Chuva ) = 0.971 Aspecto Nublado Sol Chuva Decisão = Sim

O algoritmo ID3 - Exemplo

O algoritmo ID3 - Exemplo Aspecto Nublado Sol Chuva Decisão = Sim Umidade Vento Alta Forte Normal Fraco Decisão = Não Decisão = Não Decisão = Sim Decisão = Sim

Trabalha com atributos que apresentam valores contínuos. Algoritmo C4.5 É uma extensão do ID3: Construí árvores de decisão, com valores desconhecidos para alguns atributos. Trabalha com atributos que apresentam valores contínuos. Utiliza o conceito de poda (pruning) de árvores. - entropia: quantidade necessária de informação para identificar a classe de um caso. Teoria da Informação - para evitar a busca exaustiva e cara, através da geração de todas as árvores possíveis, o algoritmo C4.5 se baseia no atributo informativo, que é escolhido entre os atributos ainda não considerados no caminho desde a raiz, pois cada nodo deve estar associado ao atributo mais informativo da árvore. O algoritmo se baseia também na entropia, que é utilizada para medir o quanto um atributo é informativo, através do ganho de informação. - para cada atributo é calculado o seu ganho, resultante da diferença do valor da informação do atributo categórico e do valor da informação do atributo em questão. O atributo que tiver o maior ganho de informação, será considerado pelo algoritmo como o próximo nodo da árvore. - o algoritmo recebe o atributo categórico C, que indica a classe; um conjunto de atributos não categóricos R, que são os demais atributos da tabela; e um conjunto de treinamento S; que contém os exemplos da tabela. Ele verifica qual é o atributo D mais informativo de R, ou seja, o atributo com maior ganho de informação para o conjunto de treinamento S; e então subdivide este conjunto S de acordo com cada um dos valores deste atributo mais informativo D. - quando o algoritmo parar, basta percorrer os caminhos desde a raiz até as folhas para verificar as descobertas extraídas da base de dados.

Algoritmo C4.5 Quando existem atributos desconhecidos para alguma variável, os mesmos são considerado como uma nova categoria. Quando existem variáveis com atributos contínuos , o algoritmo cria intervalos segundo as alterações na variável de decisão. - entropia: quantidade necessária de informação para identificar a classe de um caso. Teoria da Informação - para evitar a busca exaustiva e cara, através da geração de todas as árvores possíveis, o algoritmo C4.5 se baseia no atributo informativo, que é escolhido entre os atributos ainda não considerados no caminho desde a raiz, pois cada nodo deve estar associado ao atributo mais informativo da árvore. O algoritmo se baseia também na entropia, que é utilizada para medir o quanto um atributo é informativo, através do ganho de informação. - para cada atributo é calculado o seu ganho, resultante da diferença do valor da informação do atributo categórico e do valor da informação do atributo em questão. O atributo que tiver o maior ganho de informação, será considerado pelo algoritmo como o próximo nodo da árvore. - o algoritmo recebe o atributo categórico C, que indica a classe; um conjunto de atributos não categóricos R, que são os demais atributos da tabela; e um conjunto de treinamento S; que contém os exemplos da tabela. Ele verifica qual é o atributo D mais informativo de R, ou seja, o atributo com maior ganho de informação para o conjunto de treinamento S; e então subdivide este conjunto S de acordo com cada um dos valores deste atributo mais informativo D. - quando o algoritmo parar, basta percorrer os caminhos desde a raiz até as folhas para verificar as descobertas extraídas da base de dados.

Poda de árvores de decisão Poda da árvore, significa substituir uma parte da árvore (sub-árvore) por uma folha, com o objetivo de simplificar as regras de decisão. A poda tem lugar quando o valor esperado do erro da sub-árvore é maior que o erro da folha que o fico em seu lugar.

Poda de árvores de decisão O processo de poda pode ser feito da seguinte maneira: 1. Percorre a árvore em profundidade. 2. Para cada nó de decisão calcula: erro no nó soma dos erros nos nós descendentes 3. Se o erro do nó é menor à soma dos erros dos nós descendentes então o nó é transformado em folha

Poda de árvores de decisão Erro de classificação de um nodo N - n + k - 1 EEst(Nodo) =  N + k N - Número de exemplos classificados no nodo n - Número de exemplos pertencentes à classe maioritária (com mais exemplos) k - Número de classes total do problema

Poda de árvores de decisão Erro Estático = 0.375 Erro Estático = 0.429 Erro Estático = 0.333 (5-3+2-1)/(5+2)... n,m significa n exemplos da classe C1 e m exemplos da classe C2

Poda de árvores de decisão .

O algoritmo CART CART: Classification And Regression Trees Uma árvore de classificação utilizando a Metodologia CART traduz o resultado de uma partição binária recursiva dos dados base da modelagem Estabelece uma relação entre as varáveis independentes (X), com uma única variável dependente, ou resposta. O modelo é ajustado mediante sucessivas divisões binárias no conjunto de dados , para tornar os sub-conjuntos cada vez mais homogêneos. Para selecionar a melhor partição, procura-se minimizar a impureza dos nós utilizando o índice GINI.

O algoritmo CART As árvores obtidas através desse algoritmo possui muitos níveis, o que a torna pouco eficiente É flexível, entretanto , é complexo tornando o calculo dos resultados muito demorado para grandes conjuntos de dados Pode utilizar diferentes tipos de atributos: contínuas, ordinais e nominais.

O algoritmo CART Os procedimentos do CART são: Definir o conjunto de regras para realizar a divisão de um nó em dois nós filhos. As perguntas do algoritmo têm como resposta apenas “sim” ou “não”. Encontrar a melhor divisão através do critério Gini. Repetir o processo de divisão até que esta seja impossível ou interrompida. Aplicar o processo de pós-podagem para encontrar a árvore com o menor custo, ou seja, aquela que possui menor taxa de erro e menor complexidade.

Exercícios – 1 ponto – Entrega: 17/11 1- Dada a árvore de decisão, verifique se é necessário a realização da poda, de acordo com o algoritmo C4.5. Justifique sua resposta. [ 9 4 ] A B [ 7 2 ] C [ 3 1 ] D = N D = N [ 0 1 ] [ 7 1 ] D = S [ 0 1 ] D = S [ 2 0 ]