Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Aprendizado de Máquina para Classificação de Dados

Aprendizado de Máquina para Classificação de Dados

DihNegretto

July 01, 2014
Tweet

More Decks by DihNegretto

Other Decks in Technology

Transcript

  1. Quem vos fala ... *Mestrando em Ciência da Computação na

    Universidade Estadual Paulista Júlio de Mesquita Filho. *Graduado em Sistemas de Informação pela universidade FHO|Uniararas. *Colaborador no Laboratório de Evolução Molecular (LEM) na Unesp de Rio Claro na área de bioinformática. *Java, Delphi, Bancos de Dados Relacionais, Drupal e Linux. *Interesses de pesquisa: Aprendizado de Máquina, Computação Inspirada pela Natureza e Bioinformática.
  2. Roteiro ➢ IA e Aprendizado de Máquina ➢ Tipos de

    Aprendizado de Máquina ➢ Redes Neurais ➢ Neurônios Artificiais ➢ Histórico ➢ Algoritmo Perceptron de Múltiplas Camadas ➢ Algoritmo Back-Propagation ➢ Árvores de Decisão ➢ Algoritmo J48 ➢ Exemplo com o Weka.
  3. IA – Inteligência Artificial ➢ 1956 – McCarthy, Minsky e

    Shanon organizaram a primeira conferência sobre IA em Dartmouth – Criado o termo “Inteligência Artificial”
  4. Aprendizado de Máquina “O Aprendizado de Máquina trata do projeto

    e desenvolvimento de algoritmos que imitam o comportamento de aprendizagem humano, com um foco principal em aprender automaticamente a reconhecer padrões complexos e tomar decisões.” (T. Mitchell)
  5. Aprendizado de Máquina ➢ Sub-Área da Inteligência Artificial. ➢ Utiliza

    o raciocínio Indutivo. ➢ Algumas Aplicações práticas: ➢ Motores de Busca; ➢ Processamento da Linguagem Natural (NLP) ➢ Diagnósticos Médico ➢ Bioinformática ➢ Reconhecimento da Fala ➢ Reconhecimento da Escrita ➢ …
  6. Tipos de Aprendizado de Máquina ➢ 3 tipos diferentes: ➢

    Aprendizado Supervisionado. ➢ Aprendizado Não Supervisionado. ➢ Aprendizado Semi-Supervisionado.
  7. Aprendizado Supervisionado ➢ Os algoritmos presentes nessa categoria deduzem uma

    função a partir dos dados de treinamento, que consistem em pares de exemplos de entradas e saídas. As saídas podem conter um rótulo utilizado para a classificação ou ser um valor contínuo. Dessa forma, o objetivo dos algoritmos deste tipo de aprendizado de máquina é predizer uma saída para qualquer entrada válida, após um treinamento suficiente (MITCHELL, 1997).
  8. Aprendizado Não Supervisionado ➢ Nesta categoria, os algoritmos buscam determinar

    como os dados estão organizados, através de dados de treinamento que consistem apenas de exemplos de entrada e que não estão rotulados. Dessa forma, o objetivo deste tipo de aprendizado é encontrar padrões nos dados de entrada (MITCHELL, 1997).
  9. Aprendizado Semi - Supervisionado ➢ Os algoritmos desta categoria estão

    em um meio termo entre os das categorias de Aprendizado Supervisionado e Não Supervisionado. Assim, faz- se uso de dados rotulados e não rotulados para o treinamento (CHAPELLE, 2006).
  10. Alguns algoritmos baseados em Redes Neurais ➢ Perceptron com uma

    camada ➢ Perceptron com múltiplas camadas ➢ Redes ARTs ➢ Redes Adaline ➢ ...
  11. Um pouco de história ... ➢ Em 1958, Rosenblatt implementou

    a Rede Perceptron (neurônio artificial de McCulloch- Pitts). ➢ Em 1969, Minky e Papert lançaram um livro demonstrando a limitação do Perceptron em classificar apenas objetos linearmente separáveis. ➢ Tal fato, diminui bastante o interesse em redes neurais nos anos 70. ➢ Em 1986, Rumelhart, Hinton e Williams propuseram o algoritmo Back-Propagation (Retropropagação de erro).
  12. Perceptron de Múltiplas Camadas ➢ Cada neurônio realiza uma função

    específica. ➢ A função implementada por um neurônio de uma dada camada é uma combinação das funções realizadas pelos neurônios da camada anterior que estão conectados a ele. ➢ À medida que o processamento avança de uma camada intermediária para outra, o processamento realizado se torna mais complexo.
  13. Perceptron de Múltiplas Camadas Na primeira camada, cada neurônio aprende

    uma função que define um hiperplano, o qual divide o espaço de entrada em duas partes
  14. Perceptron de Múltiplas Camadas Cada neurônio da camada seguinte combina

    um grupo de hiperplanos definidos pelos neurônios da camada anterior, formando regiões convexas.
  15. Perceptron de Múltiplas Camadas Os neurônios da camada seguinte combinam

    um subconjunto das regiões convexas em regiões de formatos arbitrários.
  16. Algoritmo Back-Propagation ➢ É baseado na regra delta utilizada na

    rede adaline, e também conhecido como regra delta generalizada. ➢ Para que esse algoritmo seja utilizado, a função de ativação precisa ser contínua, diferenciável e, de preferência, não decrescente.
  17. Algoritmo Back-Propagation: Treinamento ➢ É constituido da iteração de duas

    fases, uma fase para frente (forward) e uma fase para trás (backward).
  18. Algoritmo Back-Propagation: Treinamento Forward = O objeto é recebido por

    cada um dos neurônios da primeira camada intermediária, que aplica a função de ativação e produz um valor de saída, que é utilizado como valor de entrada pelos neurônios da camada seguinte.
  19. Algoritmo Back-Propagation: Treinamento Backward = O valor de erro de

    cada neurônio é utilizado para ajustar seus pesos de entrada. ➢ O ajuste prossegue da camada de saída até a primeira camada intermediária.
  20. Algoritmo Back-Propagation: Treinamento ➢ Os valores dos erros são conhecidos

    apenas para os neurônios da camada de saída, assim o erro para os neurônios das camadas intermediárias precisa ser estimado (soma dos neurônios da camada seguinte que estão conectados à ele, ponderados pelo valor do peso associado a essas conexões) .
  21. Algoritmo Back-Propagation: Ajuste de Parâmetros ➢ O valor da taxa

    de aprendizado tem uma forte influência no tempo necessário à convergência da rede. ➢ Muito Pequena: muitos ciclos podem ser necessários para induzir um bom modelo. ➢ Muito Grande: pode provocar oscilações que dificultam a convergência.
  22. Algoritmo Back-Propagation: Critério de Parada ➢ Número máximo de ciclos.

    ➢ Taxa máxima de erros. ➢ Overfitting: a rede para de aprender e começa a se tornar superajustada aos dados de treinamento.
  23. Algoritmo Back-Propagation: Crítica ➢ Uma crítica ao Back-Propagation é sua

    lentidão para um bom conjunto de pesos e a sua queda de desempenho quando utilizado em grandes conjuntos de dados e problemas complexos.
  24. Árvores de Decisão Uma árvore de decisão utiliza-se da estratégia

    de dividir para conquistar na resolução de problemas de decisão. ➢ As árvores são construídas no modelo top- down.
  25. Algoritmo J48 ➢ O algoritmo J48 permite a criação de

    modelos de decisão em árvores, sendo uma implementação em Java, para o Weka, do algoritmo C4.5. ➢ Gera árvores de decisão com base em um conjunto de treinamento, sendo que para cada nó, é escolhido um atributo que subdivide o conjunto de amostras mais eficientemente.