Gilcimar apresentação

756 views

Published on

Apresentação sobre os algoritmos ID3 e C.45. Classificação de Dados em Data Mining

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
756
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
21
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Gilcimar apresentação

  1. 1. Algoritmo ID3 e C.45 no Processo de Mineração de Dados Gilcimar Hoehstein
  2. 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. 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. 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. 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. 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. 7. Hierarquia do Aprendizado Indutivo• No aprendizado não-supervisionado, o indutor analisa os exemplos e tenta determinar se alguns deles podem ser agrupados, formando clusters ou agrupamentos.• 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.
  8. 8. Hierarquia do Aprendizado Indutivo• Os Algoritmos ID3 e C.45 estão na categoria de Algoritmos de Classificação
  9. 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. 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. 11. Outros algoritmos de Classificação e Regressão• J48;• Adtree;• UserClassifier;• PredictionNode;• Splitter;• ClassifierTree;• M5Prime.
  12. 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. 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. 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. 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. 16. Regras if-then• A árvore de decisão é semelhantes as regras if-then.• If (consumo mensal > 50 KW/h) then Gasta Muito
  17. 17. Exemplo – árvore de decisão para regras de classificação1. 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. 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. 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. 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.
  21. 21. Portugol do ID3
  22. 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. 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. 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. 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 Se t < 16,66 Se 16,67 < tSe t > 33,34 < 33,34 Frio normal Quente
  26. 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. 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. 28. Exemplo PráticoPrecisa saber se é possível jogar tênis comSol, frio, alta, forte. ????
  29. 29. Entropia dos dados da amostraEntropia dos Dados (S1) =-0,64* LOG(0,64;2)- 0,36*LOG(0,36;2) = 0,940Obs: se a entropia estiver fora do intervalo [0,1],alguma coisa no calculo está errado
  30. 30. O conjunto de dados é dividido sobre os valores dosatributosA entropia de cada valor é calculado. Então, ele éadicionado proporcionalmente, para obter a entropiatotal do atributo.=(5/14)*entropia do sol) + (4/14* entropia doencoberto) + (5/14) * entropia da chuva) = 0,663
  31. 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,940Entropia de Aparência(S) = 0,663Ganho(S, Aparencia) = 0,940 – 0,663 = 0,278
  32. 32. • Já foi calculado o Ganho do atributo aparência, agora é preciso calcular dos outros atributos (temperatura, umidade e vento)
  33. 33. Ganho de informação do Atributo TemperaturaEntropia de Temperatura =(4/14)*entropia de quente) +(6/14* entropia de agradável) + (4/14) * entropia de frio)= 0,768Ganho (S, Temperatura) = 0,940 – 0,768 = 0,172
  34. 34. Ganho de informação do Atributo UmidadeEntropia de Umidade =(7/14)*entropia de normal)+ (7/14* alta) = 0,788Ganho (S, Umidade) = 0,940 – 0,788 = 0,152
  35. 35. Ganho de informação do Atributo VentoEntropia de Vento =(6/14)*entropia de forte) + (8/14*entropia de fraco)= 0,906Ganho (S1, Temperatura) = 0,940 – 0,906 = 0,035
  36. 36. Escolha do atributo com maior Ganho de informação para ser o nó raiz Aparência Sol Chuvoso Encoberto ??? SIM ???
  37. 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. 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. 39. Escolha do Atributo com Maior GanhoEscolha do atributo com maior Ganho de informação para ser o nó filho de Sol Aparência Sol Chuvoso Encoberto Umidade SIM ??? Alta Normal SIM NÃO
  40. 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. 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. 42. Entropia dos atributos em relação ao atributo-classe• Temperatura com Jogo
  43. 43. Entropia dos atributos em relação ao atributo-classe• Umidade com Jogo
  44. 44. Entropia dos atributos em relação ao atributo-classe• Vento com Jogo
  45. 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. 46. Árvore de Decisão final É possível jogar tênis com Sol, frio, alta, forte. ????• 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
  47. 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. 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. 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. 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. 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. 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. 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. 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. 55. Exemplo – Poda baseada em Erro
  56. 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. 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.
  58. 58. Arquivo arff
  59. 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
  60. 60. Resultado
  61. 61. Tela de resultados• Pode-ser observar a construção da árvore de decisão destacado em vermelho
  62. 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. 63. Exercício1) Terminar a construção da árvore, do Nó que descende Chuvoso seguindo o algoritmo ID32) Monte a Regras de classificação da árvore a seguir:
  64. 64. Custo das Viagens Barato Caro padrão Gênero Trem Carro Masculino Feminino TransporteÔnibus 0 1 Ônibus Trem

×