SlideShare uma empresa Scribd logo
Algoritmo ID3 e C.45 no Processo de Mineração de Dados Gilcimar Hoehstein
Data Mining Data Mining  é o processo de extrair informações desejadas em uma base de dados, que em primeiro momento são desconhecidas. Data Mining  permite explorar ou adicionar informações a partir dos dados, descobrindo relacionamentos ocultos no banco de dados.
Descoberta de Conhecimento O problema é que estes registros da base dados, muitas vezes, representam apenas dados e não conhecimento. Visando transformar estes dados em conhecimento, surge o processo chamado de Descoberta de Conhecimento em Bancos de Dados, conhecido com KDD (Knowledge Discovery in Databases) A KDD é uma área de grande pesquisa na Inteligência Artificial.
Aprendizado de Máquina Um sistema de Aprendizado de Máquina (AM) é um programa de computador que toma decisões baseado em experiências acumuladas por meio de soluções bem-sucedidas de problemas anteriores.  O AM é uma poderosa ferramenta para aquisição automática de conhecimento.
Processo Indutivo A indução é a forma de inferência lógica que permite obter conclusões genéricas sobre um conjunto particular de exemplos. Na indução, um conceito é aprendido efetuando inferência indutiva sobre os exemplos apresentados. Portanto, as hipóteses geradas através da inferência indutiva podem ou não, dizer a verdade.
Inferência Indutiva A inferência indutiva é um dos principais métodos utilizados para derivar conhecimento novo e predizer eventos futuros. O aprendizado indutivo pode ser dividido em supervisionado e não-supervisionado.
Hierarquia do Aprendizado Indutivo No aprendizado supervisionado é fornecido ao algoritmo de aprendizado, ou indutor, um conjunto de exemplos de treinamento para os quais o rótulo da classe associada é conhecido. No aprendizado não-supervisionado, o indutor analisa os exemplos e tenta determinar se alguns deles podem ser agrupados, formando clusters ou agrupamentos.
Hierarquia do Aprendizado Indutivo Os Algoritmos ID3 e C.45 estão na categoria de Algoritmos de Classificação
Classificação  Analisa um conjunto de dados de treinamento (um conjunto de objetos cuja classificação já é conhecida) e constrói um modelo para cada classe baseado nas características dos dados. Uma árvore de decisão ou um conjunto de regras de classificação é gerado por tal processo de classificação, que pode ser usado para entender melhor cada classe ou classificar futuros dados. Na classificação o atributo a ser predito é discreto, por exemplo, se o cliente é bom ou mau pagador.
Classificação e Regressão A regressão é conceitualmente similar à classificação. A principal diferença é que o atributo a ser predito é contínuo em vez de discreto, por exemplo, predizer o lucro ou o prejuízo em um empréstimo. Classificação e regressão utilizam algoritmos de Indução de Regras e algoritmos que geram  Árvores de Decisão .
Outros algoritmos de Classificação e Regressão J48; Adtree;  UserClassifier; PredictionNode; Splitter; ClassifierTree; M5Prime.
Árvore de Decisão Uma  árvore de decisão  é uma representação de uma tabela de decisão sob a forma de uma árvore. Tem a mesma utilidade da tabela de decisão. Trata-se de uma maneira alternativa de expressar as mesmas regras que são obtidas quando se constrói a tabela.
Árvore de Decisão A árvore de decisão chega a sua decisão pela execução de uma seqüência de testes. Cada nó interno da arvore corresponde a um teste do valor de uma das propriedades, e os ramos deste nó são identificados com os possíveis valores de teste. Cada nó folha da árvore especifica o valor de retorno se a folha for atingida.
Atributo, valor do atributo e classes Uma árvore de decisão consiste em nós que representam os nomes do atributos, os arcos representam os valores dos atributos e as folhas, que correspondem as diferentes classes a que pertencem as entidades.
Exemplo Atributo: {Consumo mensal} Valor do atributo: {7 KW/h, 20 KW/h, 60 KW/h } Classe: {Gasta Pouco, Gasta Médio, Gasta Muito}
Regras if-then A árvore de decisão é semelhantes as regras if-then. If (consumo mensal > 50 KW/h) then Gasta Muito
Exemplo – árvore de decisão para regras de classificação 1.     Se    ( Escolaridade  =  “Graduação” )   -    Rico  =  “Não” 2.     Se    ( Escolaridade  =  “Doutorado” )   -    Rico  =  “Sim” 3.     Se    ( Escolaridade  =  “Mestrado” ) &    ( Idade  =  “>30” )   - Rico  =  “Sim” ) 4.     Se    ( Escolaridade  =  “Mestrado” ) &    ( Idade  =  “<=30” ) -  Rico  =  “Não” )
Vantagem das árvores de decisão Uma grande vantagem das árvores de decisão é que elas podem ser aplicadas a grandes conjuntos de dados e possibilitam uma visão real da natureza do processo de decisão, desta forma, o resultado do algoritmo pode ser facilmente interpretado pelo usuário.
Vantagem das árvores de decisão As árvores de decisão também permitem derivar regras, regras de produção, decisão ou classificação, as quais são gerada percorrendo o trajeto do nó raiz até uma folha da árvore. Como as regras são equivalentes a árvore, a derivação de regras é interessante quando a árvore cresce muito.
O algoritmo ID3 Foi inventando Ross Quinlan, na Universidade de Sydnei, Austrália em  1979. O ID3 usa entropia e ganho de informação para construir a árvore de decisão. É o algoritmo pioneiro em indução de árvore de decisão. É um algoritmo recursivo, baseado em busca gulosa, onde procura um conjunto de atributos que melhor dividem os exemplos(amostras), gerando sub-árvores.
Portugol do ID3
Desvantagem do ID3 A Principal limitação do ID3 é que ele só lida com atributos discretos, não sendo possível apresentar a ele um conjuntos de dados com atributos contínuos. Neste caso os atributos contínuos devem ser “discretizados”. O ID3 também não apresenta nenhuma forma de tratar valores desconhecidos, ou seja, todos os exemplos do conjunto de treinamento devem ter valores conhecidos para todos os seus atributos.
Desvantagem do ID3 O algoritmo ID3 não apresenta nenhum método de pós poda, o que poderia amenizar a busca em árvores mais complexas.
Transformando valores contínuos de atributos em valores discretos temperatura = [6 25 30 50 0 32 3 10 5 32] Definir o valor maximo e minimo da amostra Dividir a soma do valor Max e Min pelo quantidade de classes. Ex: Quente, normal e frio ou seja, (0 + 50) / 3 = 16,66
Transformação de atributos contínuos em discretos De zero a 16,66 graus = frio De 16,67 a 33,33 = normal De 33,34 a 50 = quente Temperatura Frio Quente normal Se t < 16,66 Se t > 33,34 Se  16,67 < t  < 33,34
O algoritmo ID3 O ID3 usa entropia para calcular a homogeneidade de uma amostra. Se a amostra é completamente homogênea a entropia é zero e se a amostra é dividido igualmente tem a entropia é um.
Dois Tipos de entropia Para construir uma árvore de decisão, precisamos calcular dois tipos de entropia através de tabelas de frequência da seguinte forma: Jogo Sim Não 9 5 Prob = 9/14 5/14 - (9/14)*log(9/14;2)  + - (5/14)*log(5/14;2) Entropia dos dados (S1) = 0,0940
Exemplo Prático Precisa saber se é possível jogar tênis com Sol, frio, alta, forte. ????
Entropia dos dados da amostra Entropia dos Dados (S1) =-0,64* LOG(0,64;2)- 0,36*LOG(0,36;2) =  0,940 Obs: se a entropia estiver fora do intervalo [0,1],  alguma coisa no calculo está errado
O conjunto de dados é dividido sobre os valores dos atributos A entropia de cada valor é calculado. Então, ele é adicionado proporcionalmente, para obter a entropia total do atributo. =(5/14)*entropia do sol) + (4/14* entropia do encoberto) + (5/14) * entropia da chuva) =  0,663
Ganho de informação O Ganho da informação de um determinado atributo é calculado subtraindo a Entropia total, dos dados da entropia de cada atributo. Entropia dos dados (S)=  0,940 Entropia de Aparência(S) = 0,663 Ganho(S, Aparencia) = 0,940 – 0,663 = 0,278
Já foi calculado o Ganho do atributo aparência, agora é preciso calcular dos outros atributos (temperatura, umidade e vento)
Ganho de informação do Atributo Temperatura Entropia de Temperatura =(4/14)*entropia de quente) + (6/14* entropia de agradável) + (4/14) * entropia de frio) = 0,768 Ganho (S, Temperatura) = 0,940 – 0,768 =  0,172
Ganho de informação do Atributo Umidade Entropia de Umidade =(7/14)*entropia de normal)  + (7/14* alta) = 0,788 Ganho (S, Umidade) = 0,940 – 0,788 =  0,152
Ganho de informação do Atributo Vento Entropia de Vento =(6/14)*entropia de forte) + (8/14* entropia de fraco)= 0,906 Ganho (S1, Temperatura) = 0,940 – 0,906 =  0,035
Escolha do atributo com maior Ganho de informação para ser o nó raiz Encoberto Aparência Sol ??? SIM Chuvoso ???
Selecionando apenas as linhas com o valor sol para aparência Repete a interação, porem agora com esta amostra menor Entropia(S2) = -(2/5)*log(2/5;2) – (3/5)*log(3/5;2) =  0,971
Escolha do melhor atributo Ganho (S2, temperatura) =  0,371 Ganho (S2, umidade) =  0,971 Ganho (S2, vento) =  0,020 Maior (ganhos(s2)) = 0,971
Escolha do atributo com maior Ganho de informação para ser o nó filho de Sol Escolha do Atributo com Maior Ganho Aparência ??? SIM Chuvoso Umidade NÃO Alta Encoberto Sol SIM Normal
Calculando nó que descende chuvoso Agora temos que calcular o nó que descente chuvoso. Para isto, vamos pegar as linhas do banco de dados que a aparência apresenta chuvoso.
Calculo da Entropia dos Dados Probabilidade (S3) =  P(sim,3 /5) = 0,6  P(não, 2/5) = 0,4 Entropia(S3) = - 0,6 * log (0,6;2) – log (0,6;2) =  0,0971
Entropia dos atributos em relação ao atributo-classe Temperatura com Jogo
Entropia dos atributos em relação ao atributo-classe Umidade com Jogo
Entropia dos atributos em relação ao atributo-classe Vento com Jogo
Selecione o atributo com maior ganho de informação O vento é o atributo que maior contribui para a definição do nó. Então será o nó que descenderá chuvoso. Como Fraco leva somente a Sim, e Forte leva somente a Não, estes ramos serão nós folhas.
Árvore de Decisão final A verificação ocorre de cima para baixo (top-down), ele verifica primeiro o nó raiz, qual o valor do atributo aparência?  Sol , agora ele verifica o nó umidade, qual o valor do atributo umidade?  Alta . Respota. Não É possível jogar tênis com Sol, frio, alta, forte. ????
Conclusão do id3 A construção da árvore de decisão de id3, ele calcula o atributo que mais interfere na classificação do atributo. Por isto, no caso do exemplo do slide anterior, ele considera apenas os valores Sol e Alta, ou seja, valores dos atributos Aparência e Umidade. Assim, a classificação se torna muito mais rápida e menos complexa.
Algoritmo C.45 Lida tanto com atributos discretos, como contínuos. O algoritmo C.45 ignora valores desconhecidos, ou seja, não utiliza a amostra para os cálculos e entropia e ganho. Utiliza a medida de razão de ganho para selecionar o melhor atributo que divide os exemplo. Medida superior ao ganho de informação do id3, gerando árvores menos complexas.
Vantagem do C.45 Apresenta método de pós poda da árvore de decisão gerada, ou seja, realiza um busca de baixo para cima, e transforma em nós folhas aqueles nós que não representam nenhum ganho significativo.
Razão de Ganho do C.45 Razão de ganho = ganho / entropia Desta forma, o algoritmo C.45 na primeira etapa calcula o ganho de informação para todos os atributos. Após isso, ele considera apenas os atributos que obtiveram o ganho de informação acima da média, e então escolhe o atributo com a melhor razão de ganho para ser a raiz da árvore.
Razão de ganho Quinlan mostrou que a razão de ganho supera o ganho da informação em termos de precisão de complexidade da árvore gerada.
Métodos de Poda Existem dois tipos de Podas em uma árvore de decisão. A Pré-poda e a Pós-Poda A pré-poda é realizada durante o processo da construção da árvore, em que o processo pode parar de dividir o conjunto de elementos e transformar o nó corrente em um nó folha da árvore.
Pós-Poda A Pós-poda é utilizada após a construção da árvore de decisão, removendo ramos completos, onde tudo que está abaixo de um nó interno é excluído e este nó é transformado em folha, representando a classe mais freqüente do ramo.
Poda baseada em Erro (Error based pruning) Utilizado pelo C.45 Pós-Poda Utiliza média, desvio padrão, distribuição binomial,nível de confiança, estimativa de erro.
Exemplo – Poda baseada em Erro
Métodos de Poda Existem muitos outros métodos de poda, cost complexity pruning, reduced error pruning, critical value pruning, pessimistic prunning, entre outros. Tratados de maneira separada no C.45
O Weka O Weka é uma ferramenta permite a importação de arquivos arff. Já disponibiliza o uso dos algoritmos id3 e C.45, porem, um similar, chamdo j48. Nestes arquivos já devem estar definidos o atributo-classe @relation jogo; Os atributos, @attribute Aparencia {Sol, Encoberto, Chuvoso} como por exemplo;  e os dados da amostra, colocados depois da linha @data. Veja o próximo slide para ver um exemplo de um arquivo arff.
Arquivo arff
Demonstração no Weka Na tela inicial escolha o modo Explorer. Abra o arquivo jogo.arff no web. No botão open file, na aba Preprocess. Aplicando o algoritmo id3, na aba classify, no botão choose. Escolha a opção use test set para usar os dados do arquivo para treinamento. E clique em Start
Resultado
Tela de resultados Pode-ser observar a construção da árvore de decisão destacado em vermelho
Escolhendo j48 Permite modo gráfico da árvore de decisão.Junto com a visualização da quantidade de amostras em cada classe.
Exercício Terminar a construção da árvore, do Nó que descende Chuvoso seguindo o algoritmo ID3 Monte a Regras de classificação da árvore a seguir:
Trem Custo das Viagens Gênero Carro Trem Barato Caro padrão Ônibus Feminino Masculino Transporte 0 1 Ônibus

Mais conteúdo relacionado

PPTX
Redes de computadores
PDF
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...
PPTX
Algoritmos - Lógica de Programação
PDF
Banco de dados - Mapeamento MER - Relacional
PDF
SO-08 Sistemas de Arquivos
PPTX
Números naturais
PDF
Aula 4 - Teste de mesa
Redes de computadores
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...
Algoritmos - Lógica de Programação
Banco de dados - Mapeamento MER - Relacional
SO-08 Sistemas de Arquivos
Números naturais
Aula 4 - Teste de mesa

Mais procurados (20)

PDF
Mineração de Dados no Weka - Regressão Linear
ODP
Aula01 - Logica de Programação
PDF
Aula 01 09-15-graficos_estatisticos
PPTX
Conceitos base de programação - parte 2
PDF
Regressão Linear I
PPTX
Lógica proposicional
PPTX
Criptografia simetrica e assimétrica
PPTX
Equações Algébricas e Transcendentes - Isolamento de Raízes - @professorenan
PPS
Operações com intervalos
PPT
Equacoes do 2-_grau
PDF
Introdução à Teoria dos Grafos
PPTX
Decision Tree Learning
PPTX
Introdução à Engenharia de Software e UML
PDF
Estrutura de Dados - Aula 02 - Estrutura de Dados e TAD
PPT
Algoritmo 04 - Estruturas de decisão
PDF
Cabeamento estruturado redes de computadores
PPTX
Prof Denys Sales - Oficina mapa conceitual
PPTX
Lego Mindstorms.
PPT
Moda, Média e Mediana
PPTX
Equação do 2º grau
Mineração de Dados no Weka - Regressão Linear
Aula01 - Logica de Programação
Aula 01 09-15-graficos_estatisticos
Conceitos base de programação - parte 2
Regressão Linear I
Lógica proposicional
Criptografia simetrica e assimétrica
Equações Algébricas e Transcendentes - Isolamento de Raízes - @professorenan
Operações com intervalos
Equacoes do 2-_grau
Introdução à Teoria dos Grafos
Decision Tree Learning
Introdução à Engenharia de Software e UML
Estrutura de Dados - Aula 02 - Estrutura de Dados e TAD
Algoritmo 04 - Estruturas de decisão
Cabeamento estruturado redes de computadores
Prof Denys Sales - Oficina mapa conceitual
Lego Mindstorms.
Moda, Média e Mediana
Equação do 2º grau
Anúncio

Destaque (13)

PDF
Ávores de Decisão
PPTX
Árvores de Decisão
PDF
Lista 1 - aprendizagem de máquina-
PDF
PPTX
Descoberta de Conhecimento em Bancos de Dados e Mineração de Dados
PDF
Weka básico
PPTX
Classficação de Texto e Naive Bayes
PDF
Kmeans
PPTX
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
PDF
Introdução à Filosofia Moderna
PDF
Lecture 4 Decision Trees (2): Entropy, Information Gain, Gain Ratio
PDF
Lista de exercicios algoritmos resolvida-
ODP
Apresentação de slides pronto
Ávores de Decisão
Árvores de Decisão
Lista 1 - aprendizagem de máquina-
Descoberta de Conhecimento em Bancos de Dados e Mineração de Dados
Weka básico
Classficação de Texto e Naive Bayes
Kmeans
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
Introdução à Filosofia Moderna
Lecture 4 Decision Trees (2): Entropy, Information Gain, Gain Ratio
Lista de exercicios algoritmos resolvida-
Apresentação de slides pronto
Anúncio

Semelhante a Algoritmo_ID3_e_C.45_Gilcimar (20)

PPT
Gilcimar apresentação
PPTX
Mineração de dados
PDF
ID3 Algorithm
DOCX
Artigo tecnico RNA Iris
PPT
Data mining
PPTX
Aprendizagem Automática
PPT
Introdução a Árvore de Dados Adaptativa (WTA 2011)
PDF
kNN Algorithm
PDF
ARVORE_DECISAO_ufpr_slides resumidos.pdf
PPTX
Aula 9 - apresentação sobre Clustering.pptx
PPTX
Aprendizagem Supervisionada I
PDF
Analytics - Data Science - Arvores de decisao
PDF
Desvendando os mistérios do Data Science
DOC
Ordenação de Dados por Distribuição de Chaves
PPTX
4. metodos de contrucao de algoritmo
DOCX
Clustering informatizado
PDF
Semana 1 - Videoaula 2 - Aplicações em Aprendizado de M.pdf
PDF
Apresentção sobre machine learning, IA, inteligencia artificial
PDF
Aulas arquitetura de computadores parte 1
Gilcimar apresentação
Mineração de dados
ID3 Algorithm
Artigo tecnico RNA Iris
Data mining
Aprendizagem Automática
Introdução a Árvore de Dados Adaptativa (WTA 2011)
kNN Algorithm
ARVORE_DECISAO_ufpr_slides resumidos.pdf
Aula 9 - apresentação sobre Clustering.pptx
Aprendizagem Supervisionada I
Analytics - Data Science - Arvores de decisao
Desvendando os mistérios do Data Science
Ordenação de Dados por Distribuição de Chaves
4. metodos de contrucao de algoritmo
Clustering informatizado
Semana 1 - Videoaula 2 - Aplicações em Aprendizado de M.pdf
Apresentção sobre machine learning, IA, inteligencia artificial
Aulas arquitetura de computadores parte 1

Mais de iaudesc (12)

PDF
Data Mining - Clustering
PDF
Seminario fuzzy
PPTX
Algorítimos Genéticos
PDF
Autômatos celulares
PPTX
Vida artificial
PDF
RNA - Redes neurais artificiais
ODP
Representação do conhecimento (rc)
PDF
Algoritmos de jogos
ODP
Programação Genética
PDF
Busca tabu
PDF
Seminário redes bayesianas
PDF
Solvers and Applications with CP
Data Mining - Clustering
Seminario fuzzy
Algorítimos Genéticos
Autômatos celulares
Vida artificial
RNA - Redes neurais artificiais
Representação do conhecimento (rc)
Algoritmos de jogos
Programação Genética
Busca tabu
Seminário redes bayesianas
Solvers and Applications with CP

Último (20)

PDF
Custos e liquidação no SAP Transportation Management, TM130 Col18
PDF
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
PPTX
Curso de Java 16 - (JEE (Utilizando o Padrão MVC)).pptx
PPTX
Curso de Java 12 - (JDBC, Transation, Commit e Rollback).pptx
PDF
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
PPTX
Aula sobre banco de dados com firebase db
PDF
COBITxITIL-Entenda as diferença em uso governança TI
PPTX
Curso de Java 13 - (JavaEE (JSP e Servlets)).pptx
PPTX
Curso de Java 11 - (Serializable (Serialização de Objetos)).pptx
PDF
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
PPTX
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
PPTX
SISTEMA DE INFORMAÇÃO EM SAÚDE_UEPA.pptx
PPTX
Curso de Java 15 - (Uso de Servlets (Entendendo a Estrutura)).pptx
PPTX
Curso de Java 17 - (JEE (Sessões e Cookies)).pptx
PPT
Sistemas de Informação em Saúde Aplicada.ppt
PDF
Processos na gestão de transportes, TM100 Col18
PPTX
Émile Durkheim slide elaborado muito bom
PDF
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
PDF
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
PPTX
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
Custos e liquidação no SAP Transportation Management, TM130 Col18
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
Curso de Java 16 - (JEE (Utilizando o Padrão MVC)).pptx
Curso de Java 12 - (JDBC, Transation, Commit e Rollback).pptx
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
Aula sobre banco de dados com firebase db
COBITxITIL-Entenda as diferença em uso governança TI
Curso de Java 13 - (JavaEE (JSP e Servlets)).pptx
Curso de Java 11 - (Serializable (Serialização de Objetos)).pptx
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
SISTEMA DE INFORMAÇÃO EM SAÚDE_UEPA.pptx
Curso de Java 15 - (Uso de Servlets (Entendendo a Estrutura)).pptx
Curso de Java 17 - (JEE (Sessões e Cookies)).pptx
Sistemas de Informação em Saúde Aplicada.ppt
Processos na gestão de transportes, TM100 Col18
Émile Durkheim slide elaborado muito bom
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx

Algoritmo_ID3_e_C.45_Gilcimar

  • 1. Algoritmo ID3 e C.45 no Processo de Mineração de Dados Gilcimar Hoehstein
  • 2. Data Mining Data Mining  é o processo de extrair informações desejadas em uma base de dados, que em primeiro momento são desconhecidas. Data Mining  permite explorar ou adicionar informações a partir dos dados, descobrindo relacionamentos ocultos no banco de dados.
  • 3. Descoberta de Conhecimento O problema é que estes registros da base dados, muitas vezes, representam apenas dados e não conhecimento. Visando transformar estes dados em conhecimento, surge o processo chamado de Descoberta de Conhecimento em Bancos de Dados, conhecido com KDD (Knowledge Discovery in Databases) A KDD é uma área de grande pesquisa na Inteligência Artificial.
  • 4. Aprendizado de Máquina Um sistema de Aprendizado de Máquina (AM) é um programa de computador que toma decisões baseado em experiências acumuladas por meio de soluções bem-sucedidas de problemas anteriores. O AM é uma poderosa ferramenta para aquisição automática de conhecimento.
  • 5. Processo Indutivo A indução é a forma de inferência lógica que permite obter conclusões genéricas sobre um conjunto particular de exemplos. Na indução, um conceito é aprendido efetuando inferência indutiva sobre os exemplos apresentados. Portanto, as hipóteses geradas através da inferência indutiva podem ou não, dizer a verdade.
  • 6. Inferência Indutiva A inferência indutiva é um dos principais métodos utilizados para derivar conhecimento novo e predizer eventos futuros. O aprendizado indutivo pode ser dividido em supervisionado e não-supervisionado.
  • 7. Hierarquia do Aprendizado Indutivo No aprendizado supervisionado é fornecido ao algoritmo de aprendizado, ou indutor, um conjunto de exemplos de treinamento para os quais o rótulo da classe associada é conhecido. No aprendizado não-supervisionado, o indutor analisa os exemplos e tenta determinar se alguns deles podem ser agrupados, formando clusters ou agrupamentos.
  • 8. Hierarquia do Aprendizado Indutivo Os Algoritmos ID3 e C.45 estão na categoria de Algoritmos de Classificação
  • 9. Classificação  Analisa um conjunto de dados de treinamento (um conjunto de objetos cuja classificação já é conhecida) e constrói um modelo para cada classe baseado nas características dos dados. Uma árvore de decisão ou um conjunto de regras de classificação é gerado por tal processo de classificação, que pode ser usado para entender melhor cada classe ou classificar futuros dados. Na classificação o atributo a ser predito é discreto, por exemplo, se o cliente é bom ou mau pagador.
  • 10. Classificação e Regressão A regressão é conceitualmente similar à classificação. A principal diferença é que o atributo a ser predito é contínuo em vez de discreto, por exemplo, predizer o lucro ou o prejuízo em um empréstimo. Classificação e regressão utilizam algoritmos de Indução de Regras e algoritmos que geram Árvores de Decisão .
  • 11. Outros algoritmos de Classificação e Regressão J48; Adtree; UserClassifier; PredictionNode; Splitter; ClassifierTree; M5Prime.
  • 12. Árvore de Decisão Uma árvore de decisão é uma representação de uma tabela de decisão sob a forma de uma árvore. Tem a mesma utilidade da tabela de decisão. Trata-se de uma maneira alternativa de expressar as mesmas regras que são obtidas quando se constrói a tabela.
  • 13. Árvore de Decisão A árvore de decisão chega a sua decisão pela execução de uma seqüência de testes. Cada nó interno da arvore corresponde a um teste do valor de uma das propriedades, e os ramos deste nó são identificados com os possíveis valores de teste. Cada nó folha da árvore especifica o valor de retorno se a folha for atingida.
  • 14. Atributo, valor do atributo e classes Uma árvore de decisão consiste em nós que representam os nomes do atributos, os arcos representam os valores dos atributos e as folhas, que correspondem as diferentes classes a que pertencem as entidades.
  • 15. Exemplo Atributo: {Consumo mensal} Valor do atributo: {7 KW/h, 20 KW/h, 60 KW/h } Classe: {Gasta Pouco, Gasta Médio, Gasta Muito}
  • 16. Regras if-then A árvore de decisão é semelhantes as regras if-then. If (consumo mensal > 50 KW/h) then Gasta Muito
  • 17. Exemplo – árvore de decisão para regras de classificação 1.     Se    ( Escolaridade = “Graduação” )   - Rico = “Não” 2.     Se    ( Escolaridade = “Doutorado” )   - Rico = “Sim” 3.     Se    ( Escolaridade = “Mestrado” ) &   ( Idade = “>30” )  - Rico = “Sim” ) 4.     Se    ( Escolaridade = “Mestrado” ) &   ( Idade = “<=30” ) - Rico = “Não” )
  • 18. Vantagem das árvores de decisão Uma grande vantagem das árvores de decisão é que elas podem ser aplicadas a grandes conjuntos de dados e possibilitam uma visão real da natureza do processo de decisão, desta forma, o resultado do algoritmo pode ser facilmente interpretado pelo usuário.
  • 19. Vantagem das árvores de decisão As árvores de decisão também permitem derivar regras, regras de produção, decisão ou classificação, as quais são gerada percorrendo o trajeto do nó raiz até uma folha da árvore. Como as regras são equivalentes a árvore, a derivação de regras é interessante quando a árvore cresce muito.
  • 20. O algoritmo ID3 Foi inventando Ross Quinlan, na Universidade de Sydnei, Austrália em 1979. O ID3 usa entropia e ganho de informação para construir a árvore de decisão. É o algoritmo pioneiro em indução de árvore de decisão. É um algoritmo recursivo, baseado em busca gulosa, onde procura um conjunto de atributos que melhor dividem os exemplos(amostras), gerando sub-árvores.
  • 22. Desvantagem do ID3 A Principal limitação do ID3 é que ele só lida com atributos discretos, não sendo possível apresentar a ele um conjuntos de dados com atributos contínuos. Neste caso os atributos contínuos devem ser “discretizados”. O ID3 também não apresenta nenhuma forma de tratar valores desconhecidos, ou seja, todos os exemplos do conjunto de treinamento devem ter valores conhecidos para todos os seus atributos.
  • 23. Desvantagem do ID3 O algoritmo ID3 não apresenta nenhum método de pós poda, o que poderia amenizar a busca em árvores mais complexas.
  • 24. Transformando valores contínuos de atributos em valores discretos temperatura = [6 25 30 50 0 32 3 10 5 32] Definir o valor maximo e minimo da amostra Dividir a soma do valor Max e Min pelo quantidade de classes. Ex: Quente, normal e frio ou seja, (0 + 50) / 3 = 16,66
  • 25. Transformação de atributos contínuos em discretos De zero a 16,66 graus = frio De 16,67 a 33,33 = normal De 33,34 a 50 = quente Temperatura Frio Quente normal Se t < 16,66 Se t > 33,34 Se 16,67 < t < 33,34
  • 26. O algoritmo ID3 O ID3 usa entropia para calcular a homogeneidade de uma amostra. Se a amostra é completamente homogênea a entropia é zero e se a amostra é dividido igualmente tem a entropia é um.
  • 27. Dois Tipos de entropia Para construir uma árvore de decisão, precisamos calcular dois tipos de entropia através de tabelas de frequência da seguinte forma: Jogo Sim Não 9 5 Prob = 9/14 5/14 - (9/14)*log(9/14;2) + - (5/14)*log(5/14;2) Entropia dos dados (S1) = 0,0940
  • 28. Exemplo Prático Precisa saber se é possível jogar tênis com Sol, frio, alta, forte. ????
  • 29. Entropia dos dados da amostra Entropia dos Dados (S1) =-0,64* LOG(0,64;2)- 0,36*LOG(0,36;2) = 0,940 Obs: se a entropia estiver fora do intervalo [0,1], alguma coisa no calculo está errado
  • 30. O conjunto de dados é dividido sobre os valores dos atributos A entropia de cada valor é calculado. Então, ele é adicionado proporcionalmente, para obter a entropia total do atributo. =(5/14)*entropia do sol) + (4/14* entropia do encoberto) + (5/14) * entropia da chuva) = 0,663
  • 31. Ganho de informação O Ganho da informação de um determinado atributo é calculado subtraindo a Entropia total, dos dados da entropia de cada atributo. Entropia dos dados (S)= 0,940 Entropia de Aparência(S) = 0,663 Ganho(S, Aparencia) = 0,940 – 0,663 = 0,278
  • 32. Já foi calculado o Ganho do atributo aparência, agora é preciso calcular dos outros atributos (temperatura, umidade e vento)
  • 33. Ganho de informação do Atributo Temperatura Entropia de Temperatura =(4/14)*entropia de quente) + (6/14* entropia de agradável) + (4/14) * entropia de frio) = 0,768 Ganho (S, Temperatura) = 0,940 – 0,768 = 0,172
  • 34. Ganho de informação do Atributo Umidade Entropia de Umidade =(7/14)*entropia de normal) + (7/14* alta) = 0,788 Ganho (S, Umidade) = 0,940 – 0,788 = 0,152
  • 35. Ganho de informação do Atributo Vento Entropia de Vento =(6/14)*entropia de forte) + (8/14* entropia de fraco)= 0,906 Ganho (S1, Temperatura) = 0,940 – 0,906 = 0,035
  • 36. Escolha do atributo com maior Ganho de informação para ser o nó raiz Encoberto Aparência Sol ??? SIM Chuvoso ???
  • 37. Selecionando apenas as linhas com o valor sol para aparência Repete a interação, porem agora com esta amostra menor Entropia(S2) = -(2/5)*log(2/5;2) – (3/5)*log(3/5;2) = 0,971
  • 38. Escolha do melhor atributo Ganho (S2, temperatura) = 0,371 Ganho (S2, umidade) = 0,971 Ganho (S2, vento) = 0,020 Maior (ganhos(s2)) = 0,971
  • 39. Escolha do atributo com maior Ganho de informação para ser o nó filho de Sol Escolha do Atributo com Maior Ganho Aparência ??? SIM Chuvoso Umidade NÃO Alta Encoberto Sol SIM Normal
  • 40. Calculando nó que descende chuvoso Agora temos que calcular o nó que descente chuvoso. Para isto, vamos pegar as linhas do banco de dados que a aparência apresenta chuvoso.
  • 41. Calculo da Entropia dos Dados Probabilidade (S3) = P(sim,3 /5) = 0,6 P(não, 2/5) = 0,4 Entropia(S3) = - 0,6 * log (0,6;2) – log (0,6;2) = 0,0971
  • 42. Entropia dos atributos em relação ao atributo-classe Temperatura com Jogo
  • 43. Entropia dos atributos em relação ao atributo-classe Umidade com Jogo
  • 44. Entropia dos atributos em relação ao atributo-classe Vento com Jogo
  • 45. Selecione o atributo com maior ganho de informação O vento é o atributo que maior contribui para a definição do nó. Então será o nó que descenderá chuvoso. Como Fraco leva somente a Sim, e Forte leva somente a Não, estes ramos serão nós folhas.
  • 46. Árvore de Decisão final A verificação ocorre de cima para baixo (top-down), ele verifica primeiro o nó raiz, qual o valor do atributo aparência? Sol , agora ele verifica o nó umidade, qual o valor do atributo umidade? Alta . Respota. Não É possível jogar tênis com Sol, frio, alta, forte. ????
  • 47. Conclusão do id3 A construção da árvore de decisão de id3, ele calcula o atributo que mais interfere na classificação do atributo. Por isto, no caso do exemplo do slide anterior, ele considera apenas os valores Sol e Alta, ou seja, valores dos atributos Aparência e Umidade. Assim, a classificação se torna muito mais rápida e menos complexa.
  • 48. Algoritmo C.45 Lida tanto com atributos discretos, como contínuos. O algoritmo C.45 ignora valores desconhecidos, ou seja, não utiliza a amostra para os cálculos e entropia e ganho. Utiliza a medida de razão de ganho para selecionar o melhor atributo que divide os exemplo. Medida superior ao ganho de informação do id3, gerando árvores menos complexas.
  • 49. Vantagem do C.45 Apresenta método de pós poda da árvore de decisão gerada, ou seja, realiza um busca de baixo para cima, e transforma em nós folhas aqueles nós que não representam nenhum ganho significativo.
  • 50. Razão de Ganho do C.45 Razão de ganho = ganho / entropia Desta forma, o algoritmo C.45 na primeira etapa calcula o ganho de informação para todos os atributos. Após isso, ele considera apenas os atributos que obtiveram o ganho de informação acima da média, e então escolhe o atributo com a melhor razão de ganho para ser a raiz da árvore.
  • 51. Razão de ganho Quinlan mostrou que a razão de ganho supera o ganho da informação em termos de precisão de complexidade da árvore gerada.
  • 52. Métodos de Poda Existem dois tipos de Podas em uma árvore de decisão. A Pré-poda e a Pós-Poda A pré-poda é realizada durante o processo da construção da árvore, em que o processo pode parar de dividir o conjunto de elementos e transformar o nó corrente em um nó folha da árvore.
  • 53. Pós-Poda A Pós-poda é utilizada após a construção da árvore de decisão, removendo ramos completos, onde tudo que está abaixo de um nó interno é excluído e este nó é transformado em folha, representando a classe mais freqüente do ramo.
  • 54. Poda baseada em Erro (Error based pruning) Utilizado pelo C.45 Pós-Poda Utiliza média, desvio padrão, distribuição binomial,nível de confiança, estimativa de erro.
  • 55. Exemplo – Poda baseada em Erro
  • 56. Métodos de Poda Existem muitos outros métodos de poda, cost complexity pruning, reduced error pruning, critical value pruning, pessimistic prunning, entre outros. Tratados de maneira separada no C.45
  • 57. O Weka O Weka é uma ferramenta permite a importação de arquivos arff. Já disponibiliza o uso dos algoritmos id3 e C.45, porem, um similar, chamdo j48. Nestes arquivos já devem estar definidos o atributo-classe @relation jogo; Os atributos, @attribute Aparencia {Sol, Encoberto, Chuvoso} como por exemplo; e os dados da amostra, colocados depois da linha @data. Veja o próximo slide para ver um exemplo de um arquivo arff.
  • 59. Demonstração no Weka Na tela inicial escolha o modo Explorer. Abra o arquivo jogo.arff no web. No botão open file, na aba Preprocess. Aplicando o algoritmo id3, na aba classify, no botão choose. Escolha a opção use test set para usar os dados do arquivo para treinamento. E clique em Start
  • 61. Tela de resultados Pode-ser observar a construção da árvore de decisão destacado em vermelho
  • 62. Escolhendo j48 Permite modo gráfico da árvore de decisão.Junto com a visualização da quantidade de amostras em cada classe.
  • 63. Exercício Terminar a construção da árvore, do Nó que descende Chuvoso seguindo o algoritmo ID3 Monte a Regras de classificação da árvore a seguir:
  • 64. Trem Custo das Viagens Gênero Carro Trem Barato Caro padrão Ônibus Feminino Masculino Transporte 0 1 Ônibus