aprendizado de máquina para classificação de dados
TRANSCRIPT
![Page 1: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/1.jpg)
Aprendizado de Máquina para Classificação de Dados
Diego Henrique Negretto
![Page 2: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/2.jpg)
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.
![Page 3: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/3.jpg)
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.
![Page 4: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/4.jpg)
O que você pensa quando ouve os termos IA e Aprendizado de Máquina?
![Page 5: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/5.jpg)
Eu penso nisso ...
![Page 6: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/6.jpg)
O que temos hoje em dia ...
![Page 7: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/7.jpg)
IA – Inteligência Artificial
➢ 1956 – McCarthy, Minsky e Shanon organizaram a primeira conferência sobre IA em Dartmouth – Criado o termo “Inteligência Artificial”
![Page 8: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/8.jpg)
IA – Inteligência Artificial
“A ciência e engenharia de produzir máquinas inteligentes.” (John McCarthy).
![Page 9: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/9.jpg)
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)
![Page 10: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/10.jpg)
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➢ …
![Page 11: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/11.jpg)
Tipos de Aprendizado de Máquina
➢ 3 tipos diferentes:➢ Aprendizado Supervisionado.➢ Aprendizado Não Supervisionado.➢ Aprendizado Semi-Supervisionado.
![Page 12: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/12.jpg)
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).
![Page 13: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/13.jpg)
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).
![Page 14: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/14.jpg)
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).
![Page 15: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/15.jpg)
Redes Neurais
![Page 16: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/16.jpg)
Neurônios Artificiais
Neurônio de McCulloch-Pitts
![Page 17: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/17.jpg)
Alguns algoritmos baseados em Redes Neurais
➢ Perceptron com uma camada➢ Perceptron com múltiplas camadas➢ Redes ARTs➢ Redes Adaline➢ ...
![Page 18: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/18.jpg)
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).
![Page 19: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/19.jpg)
Perceptron de Múltiplas Camadas
➢ Consiste em uma rede fortemente conectada com conexões feedforward.
![Page 20: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/20.jpg)
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.
![Page 21: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/21.jpg)
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
![Page 22: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/22.jpg)
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.
![Page 23: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/23.jpg)
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.
![Page 24: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/24.jpg)
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.
![Page 25: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/25.jpg)
Algoritmo Back-Propagation: Treinamento
➢ É constituido da iteração de duas fases, uma fase para frente (forward) e uma fase para trás (backward).
![Page 26: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/26.jpg)
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.
![Page 27: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/27.jpg)
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.
![Page 28: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/28.jpg)
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) .
![Page 29: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/29.jpg)
Algoritmo Back-Propagation: Treinamento
![Page 30: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/30.jpg)
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.
![Page 31: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/31.jpg)
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.
![Page 32: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/32.jpg)
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.
![Page 33: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/33.jpg)
Árvores de Decisão
![Page 34: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/34.jpg)
Á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.
![Page 35: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/35.jpg)
Alguns algoritmos baseados em Árvores de Decisão
➢ ID3➢ CART➢ C4.5➢ J48➢ ...
![Page 36: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/36.jpg)
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.
![Page 37: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/37.jpg)
Exemplo Pŕatico com o Weka
![Page 38: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/38.jpg)
http://www.cs.waikato.ac.nz/ml/weka/
![Page 39: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/39.jpg)
Alguns resultados
![Page 40: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/40.jpg)
Resultados → Iris DataSet
➢ Perceptron de Múltiplas Camadas.
➢ Tempo: 0.09s
![Page 41: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/41.jpg)
Resultados → Iris DataSet
➢ Algoritmo J48.
➢ Tempo: - 0s.
![Page 42: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/42.jpg)
Resultados Pima-Indians→ DataSet
➢ Perceptron Múltiplas Camadas.
➢ Tempo: 0.73 s
![Page 43: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/43.jpg)
Resultados Pima-Indians→ DataSet
➢ Algoritmo J48.
➢ Tempo: 0.01s
![Page 44: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/44.jpg)
Obrigado !!!
Dúvidas???
![Page 45: Aprendizado de Máquina para Classificação de Dados](https://reader030.vdocuments.net/reader030/viewer/2022013108/55c0f211bb61eb94428b45b0/html5/thumbnails/45.jpg)
Referências Bibliográficas