1. Machine Learning: introdução e aplicações
Luana da Silva1
1Programa de Pós-Graduação em Ciência da Informação
eca.luds@gmail.com
17 de Maio de 2019
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 1 / 49
2. Sumário
1 Introdução
2 Conceitos Importantes
3 Tipos de Aprendizado
Aprendizado Supervisionado
Aprendizado Não-Supervisionado
Aprendizado por Reforço
Outros Algoritmos de Aprendizado de Máquina
4 Avaliação dos algoritmos de Machine Learning
Avaliação de Classificadores
Avaliação de Regressão
Avaliação de Agrupamento
5 Considerações Finais
6 Bibliografia
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 2 / 49
3. 1 Introdução
2 Conceitos Importantes
3 Tipos de Aprendizado
Aprendizado Supervisionado
Aprendizado Não-Supervisionado
Aprendizado por Reforço
Outros Algoritmos de Aprendizado de Máquina
4 Avaliação dos algoritmos de Machine Learning
Avaliação de Classificadores
Avaliação de Regressão
Avaliação de Agrupamento
5 Considerações Finais
6 Bibliografia
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 3 / 49
7. 1 Introdução
2 Conceitos Importantes
3 Tipos de Aprendizado
Aprendizado Supervisionado
Aprendizado Não-Supervisionado
Aprendizado por Reforço
Outros Algoritmos de Aprendizado de Máquina
4 Avaliação dos algoritmos de Machine Learning
Avaliação de Classificadores
Avaliação de Regressão
Avaliação de Agrupamento
5 Considerações Finais
6 Bibliografia
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 7 / 49
8. Conceitos Importantes
Machine Learning
Machine Learning é programar computadores para otimizar um
critério de performance usando dados de exemplo ou experiência
passada.
Fonte: Alpaydin, 2009
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 8 / 49
9. Conceitos Importantes
Machine Learning
Machine Learning é programar computadores para otimizar um
critério de performance usando dados de exemplo ou experiência
passada.
Dado que temos um modelo definido para alguns parâmetros, o
aprendizado é:
a execução de um programa de computador para otimizar os
parâmetros do modelo usando os dados de treinamento ou experiência
passada.
Fonte: Alpaydin, 2009
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 8 / 49
10. Conceitos Importantes
Machine Learning
Machine Learning é programar computadores para otimizar um
critério de performance usando dados de exemplo ou experiência
passada.
Dado que temos um modelo definido para alguns parâmetros, o
aprendizado é:
a execução de um programa de computador para otimizar os
parâmetros do modelo usando os dados de treinamento ou experiência
passada.
O modelo pode ser preditivo para fazer predições no futuro, ou
descritvo para ganhar conhecimento a partir dos dados, ou ambos.
Fonte: Alpaydin, 2009
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 8 / 49
11. Conceitos Importantes
Machine Learning
Machine Learning é programar computadores para otimizar um
critério de performance usando dados de exemplo ou experiência
passada.
Dado que temos um modelo definido para alguns parâmetros, o
aprendizado é:
a execução de um programa de computador para otimizar os
parâmetros do modelo usando os dados de treinamento ou experiência
passada.
O modelo pode ser preditivo para fazer predições no futuro, ou
descritvo para ganhar conhecimento a partir dos dados, ou ambos.
Duas fontes: teoria estatística e computação.
Fonte: Alpaydin, 2009
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 8 / 49
12. Conceitos Importantes
Processo de Machine Learning
Fonte: https://hackernoon.com/a-brief-overview-of-automatic-machine-learning-solutions-
automl-2826c7807a2a
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 9 / 49
13. Conceitos Importantes
Erros de predição: Bias-Variance Tradeoff
Matematicamente, queremos predizer y a partir de x. Assimimos o
relacionamento entre as duas como:
y = f (x) + e (1)
onde e é o termo de erro.
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 10 / 49
14. Conceitos Importantes
Erros de predição: Bias-Variance Tradeoff
Matematicamente, queremos predizer y a partir de x. Assimimos o
relacionamento entre as duas como:
y = f (x) + e (1)
onde e é o termo de erro.
Queremos fazer um modelo ˆf (x) usando algum modelo. O erro esperado é:
Err(x) = E[(y − ˆf (x))2
] (2)
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 10 / 49
15. Conceitos Importantes
Erros de predição: Bias-Variance Tradeoff
Matematicamente, queremos predizer y a partir de x. Assimimos o
relacionamento entre as duas como:
y = f (x) + e (1)
onde e é o termo de erro.
Queremos fazer um modelo ˆf (x) usando algum modelo. O erro esperado é:
Err(x) = E[(y − ˆf (x))2
] (2)
Esse erro pode ser decomposto em:
Err(x) = Bias2
+ Variance + IrreducibleError (3)
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 10 / 49
16. Conceitos Importantes
Erros de predição: Bias-Variance Tradeoff
Fonte: https://towardsdatascience.com/understanding-the-bias-variance-tradeoff-165e6942b229
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 11 / 49
17. 1 Introdução
2 Conceitos Importantes
3 Tipos de Aprendizado
Aprendizado Supervisionado
Aprendizado Não-Supervisionado
Aprendizado por Reforço
Outros Algoritmos de Aprendizado de Máquina
4 Avaliação dos algoritmos de Machine Learning
Avaliação de Classificadores
Avaliação de Regressão
Avaliação de Agrupamento
5 Considerações Finais
6 Bibliografia
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 12 / 49
18. Tipos de Aprendizado
Podem ser classificados em:
Supervisionados
Não Supervisionados
Aprendizado por reforço
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 13 / 49
19. Tipos de Aprendizado
Fonte: Rao e Gudivada, 2018
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 14 / 49
22. Aprendizado Supervisionado
Classificação
Reconhecimento de imagens
Fonte: https://www.engadget.com/2014/09/08/google-details-object-recognition-tech/
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 17 / 49
23. Aprendizado Supervisionado
Classificação
Análise de Sentimento baseado em texto
Fonte: https://www.ubuntupit.com/top-20-best-machine-learning-applications-in-real-world/
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 18 / 49
26. Aprendizado Supervisionado
Regressão
Previsão do preço de ações
Fonte: https://towardsdatascience.com/stock-prediction-in-python-b66555171a2
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 21 / 49
31. Aprendizado Não-Supervisionado
Agrupamento
Categorização de notícias
Fonte: https://www.ubuntupit.com/top-20-best-machine-learning-applications-in-real-world/
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 26 / 49
32. Aprendizado Não-Supervisionado
Agrupamento
Categorização de pareceres do MPSC para melhoria do sistema de busca
Fonte: http://networkscience.com.br/wp-content/uploads/2018/11/IISINS_EScience_DadosAberto
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 27 / 49
33. Aprendizado por Reforço
Fonte: Rao e Gudivada, 2018
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 28 / 49
34. Aprendizado por Reforço
Fonte: https://medium.freecodecamp.org/a-brief-introduction-to-reinforcement-learning-
7799af5840db
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 29 / 49
35. Aprendizado por Reforço
Fonte: https://towardsdatascience.com/introduction-to-machine-learning-for-beginners-
eed6024fdb08
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 30 / 49
36. Aprendizado por Reforço
Sistema multi-agentes para controle de tráfego
Fonte: Arel et al., 2010
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 31 / 49
37. Outros Algoritmos de Aprendizado de Máquina
Aprendizado Semi-supervisionado
Fonte: https://www.slideshare.net/Hadoop_Summit/semisupervised-learning-in-an-adversarial-
environment
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 32 / 49
38. Outros Algoritmos de Aprendizado de Máquina
Weakly Supervised Learning
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 33 / 49
39. Outros Algoritmos de Aprendizado de Máquina
Weakly Supervised Learning
Fonte: Zhou, 2017
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 34 / 49
40. Outros Algoritmos de Aprendizado de Máquina
Fonte: https://towardsdatascience.com/introduction-to-machine-learning-for-beginners-
eed6024fdb08
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 35 / 49
41. 1 Introdução
2 Conceitos Importantes
3 Tipos de Aprendizado
Aprendizado Supervisionado
Aprendizado Não-Supervisionado
Aprendizado por Reforço
Outros Algoritmos de Aprendizado de Máquina
4 Avaliação dos algoritmos de Machine Learning
Avaliação de Classificadores
Avaliação de Regressão
Avaliação de Agrupamento
5 Considerações Finais
6 Bibliografia
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 36 / 49
42. Avaliação de Classificadores
Matriz de Confusão
Acurácia
Precisão e Revocação
Medida F
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 37 / 49
43. Avaliação de Classificadores
Matrix de Confusão
Fonte: Rao e Gudivada, 2018
Precisão (P) =
TP
TP + FP
Revocação (R) =
TP
TP + FN
Medida F =
2PR
P + R
Acurácia =
TP + TN
TP + TN + FP + FN
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 38 / 49
44. Avaliação de Regressão
RMSE (Root Mean Squared Error)
MAPE (Mean Absolute Percentage Error)
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 39 / 49
45. Avaliação de Regressão
RMSE
Fonte: https://www.hatarilabs.com/ih-en/how-to-calculate-the-root-mean-square-error-rmse-of-
an-interpolated-ph-rasterLuana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 40 / 49
46. Avaliação de Regressão
MAPE
Mais robusto ao efeito dos outliers.
Fonte: https://www.dataquest.io/blog/understanding-regression-error-metrics/
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 41 / 49
47. Avaliação de Agrupamento
Principal problema: número de clusters
Método Elbow
Método Silhouette
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 42 / 49
48. Avaliação de Agrupamento
Método Elbow
Calcula a soma dos quadrados das distâncias entre os pontos e o centróide
do cluster.
Fonte: https://towardsdatascience.com/k-means-clustering-algorithm-applications-evaluation-
methods-and-drawbacks-aa03e644b48a
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 43 / 49
49. Avaliação de Agrupamento
Método Silhouette
Calcula o grau de separação entre os clusters.
Fonte: https://towardsdatascience.com/k-means-clustering-algorithm-applications-evaluation-
methods-and-drawbacks-aa03e644b48a
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 44 / 49
50. 1 Introdução
2 Conceitos Importantes
3 Tipos de Aprendizado
Aprendizado Supervisionado
Aprendizado Não-Supervisionado
Aprendizado por Reforço
Outros Algoritmos de Aprendizado de Máquina
4 Avaliação dos algoritmos de Machine Learning
Avaliação de Classificadores
Avaliação de Regressão
Avaliação de Agrupamento
5 Considerações Finais
6 Bibliografia
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 45 / 49
51. Considerações Finais
Vimos várias coisas..
Como o processo de Machine Learning funciona
Alguns tipos de algoritmos de Machine Learning
As métricas usadas para medir performance dos modelos
E muuitas aplicações!
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 46 / 49
52. Considerações Finais
Para aprofundar:
A Tour on Machine Learning Algorithms
Facebook AI Research
Uber AI
Google AI Research
Towards Data Science
Netflix TechBlog
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 47 / 49
53. Referências
Alpaydin, Ethem (2009). Introduction to machine learning. MIT press.
Arel, Itamar et al. (2010). “Reinforcement learning-based multi-agent system for network traffic
signal control”. Em: IET Intelligent Transport Systems 4.2, pp. 128–135.
Rao, CR e Venkat N Gudivada (2018). Computational Analysis and Understanding of Natural
Languages: Principles, Methods and Applications. Vol. 38. Elsevier.
Zhou, Zhi-Hua (2017). “A brief introduction to weakly supervised learning”. Em: National
Science Review 5.1, pp. 44–53.
Luana da Silva (PGCIN/UFSC) Big Data e Web Semântica 17 de Maio de 2019 48 / 49