SlideShare ist ein Scribd-Unternehmen logo
1 von 77
aplicações práticas de 
machine learning 
Luiz Costa 
@gutomcosta 
www.sagadoprogramador.com.br
artificial 
Intelligence?machine 
learning?
IA e ML!
IA e ML???
machine learning 
In which we describe agents that can improve their behaviour through 
diligent study of their own experiences. 
“Artificial Intelligence -A modern approach" 
-Stuart Russell and Peter Norvig
Field of study that gives computers the 
ability to learn without being explicitly 
programmed. 
Arthur Samuel (1959)
Machine learning is a subfield of computer science (CS) 
and artificial intelligence (AI) that deals with the 
construction and study of systems that can learn from 
data, rather than follow only explicitly programmed 
instructions. Besides CS and AI, it has strong ties to 
statistics and optimization, which deliver both methods 
and theory to the field. 
Machine Learning - Wikipedia
Machine learning is a subfield of computer science (CS) 
and artificial intelligence (AI) that deals with the 
construction and study of systems that can learn from 
data, rather than follow only explicitly programmed 
instructions. Besides CS and AI, it has strong ties to 
statistics and optimization, which deliver both methods 
and theory to the field. 
Machine Learning - Wikipedia
supervised learning 
Aprendendo através de 
exemplos
dados de exemplo
unsupervised learning 
sem exemplos, o que é possível 
fazer?
clustering
clustering
marketing 
descobrir grupos distintos em uma base de clientes e 
usar estes grupos para ajudar no desenvolvimento de 
campanhas focadas nos nestes grupos
seguros 
descobrir perfis com alto risco para seguros de 
automóveis
na prática 
dois exemplos de uso. Será que dá 
tempo?
evoluindo um sistema 
de recomendação
vandal.com.br
collaborative filtering
usuários avaliam
não existe avaliação
content-based 
recommendation
características
1. Mostrar itens 
similares
vector space model 
skull caveira flower vintage caveiras 
produto1 1 1 1 0 0 
produto2 1 1 0 1 1 
produto3 1 1 0 0 0
O quanto um produto 
é similar a outro?
cálculo de similaridade
cálculo de similaridade
obtendo produtos similares
obtendo produtos similares
obtendo produtos similares
obtendo produtos similares 
Hein ????
2. recomendação 
personalizada 
em desenvolvimento
Como mostrar aqui o que é interessante para um 
usuário?
construindo um profile 
de preferências do 
usuário
capturando ações do usuário 
Usuário: Paulo José 
data evento conteúdo 
01/09/2014 08:35 buscou 
{query: "caveira", produtos: 
[1991, 1331, 3892] } 
01/09/2014 08:39 visualizou {id: 1991} 
01/09/2014 08:34 visualizou {id:1331} 
01/09/2014 08:40 like {id: 1331} 
01/09/2014 08:44 comprou {id: 1331}
capturando ações do usuário 
data evento conteúdo 
01/09/2014 08:35 buscou 
{query: "caveira", produtos: 
[1991, 1331, 3892] } 
01/09/2014 08:39 visualizou {id: 1991} 
01/09/2014 08:34 visualizou {id:1331} 
01/09/2014 08:40 like {id: 1331} 
01/09/2014 08:44 comprou {id: 1331}
construindo as preferências
construindo as preferências
algumas ações não 
seriam mais importantes 
que outras?
capturando ações do usuário 
data evento conteúdo peso 
01/09/2014 
08:35 
buscou 
{query: "caveira", produtos: 
[1991, 1331, 3892] } 
0.3 
01/09/2014 
08:39 
visualizou {id: 1991} 0.1 
01/09/2014 
08:34 
visualizou {id:1331} 0.1 
01/09/2014 
08:40 
like {id: 1331} 0.6 
01/09/2014 
08:44 
comprou {id: 1331} 1
construindo as preferências com pesos
vector space model 
skull caveira flowers metal caveiras ilustração arte cool 
produto_1331 1 1 1 0 0 0 0 0 
produto_1991 
0 1 0 1 1 1 1 0 
produto_3892 1 1 0 0 1 0 0 1 
Paulo José 1 1 0 1 1 1 1 0
agora é só calcular a 
similaridade das 
preferências de usuário 
com os produtos
agora é só calcular a 
similaridade das 
preferências de usuário 
com os produtos
similaridade do cosseno
processos inteligentes e 
process mining 
aquela história de BPM, Enterprise, pode ser 
divertida
business process management
process mining 
• process discovery 
• performance analysis 
• process prediction 
• process improvement 
o que realmente 
aconteceu? 
quais são os gargalos do meu 
processo? 
esta instância vai estourar o 
sla? 
como posso redesenhar este 
processo com o que foi 
aprendido?
log de eventos
análise
e a análise sobre dados 
de negócios? 
exemplo compra de passagens aéreas
log resumido processo de compra de passagens 
aéreas 
passageiro companhia trecho preço 
data da 
compra 
data do 
embarque 
dias de diferença 
Souza/Jose TAM SDU/CGH 570,00 28/01/2014 05/02/2014 8 
Costa/Luiz TAM SDU/CGH 200,00 08/04/2014 09/06/2014 62 
Paiva/Roberto AVIANCA SDU/CGH 126,00 25/02/2014 11/03/2014 14 
Ronaldo/Cristian 
o 
TAM SDU/CGH 258,70 25/11/2014 17/12/2014 22
dados de negócio? 
• o que define uma boa compra? 
• quais são as variáveis que mais 
influenciam na compra? 
• por que uma compra ruim, foi ruim?
definição de um 
processo automático 
para obter respostas 
Statistical Learning
qual seria a entrada de dados 
necessária? 
passageiro companhia trecho preço 
data da 
compra 
data do 
embarque 
case contexto e objetivo 
dias de diferença 
Souza/Jose TAM SDU/CGH 570,00 28/01/2014 05/02/2014 8 
Costa/Luiz TAM SDU/CGH 200,00 08/04/2014 09/06/2014 62 
Paiva/Roberto AVIANCA SDU/CGH 126,00 25/02/2014 11/03/2014 14 
Ronaldo/Cristian 
o 
TAM SDU/CGH 258,70 25/11/2014 17/12/2014 22
como definir o que é uma boa compra? 
preço 
570,00 
200,00 
126,00 
258,70
como definir o que é uma boa compra? 
preço 
570,00 
200,00 
126,00 
258,70 
preço <= 181,50
quais são as variáveis que mais 
influenciam na compra?
quais são as variáveis que mais 
influenciam na compra? 
lineares? 
Não lineares? 
variáveis mais 
importantes
quais são as variáveis que mais 
influenciam na compra? 
Ex. código R
por que uma compra ruim, foi ruim? 
passageiro companhia trecho preço 
data da 
compra 
data do 
embarque 
dias de diferença 
Souza/Jose TAM SDU/CGH 570,00 28/01/2014 05/02/2014 8
por que uma compra ruim, foi ruim? 
utilizando as variáveis identificadas, é 
possível ter alguns insights 
dias de diferença companhia 
boas case boas case 
14 8 
100% 
Avianca 
TAM 
passageiro companhia trecho preço 
data da 
compra 
data do 
embarque 
dias de diferença 
Souza/Jose TAM SDU/CGH 570,00 28/01/2014 05/02/2014 8
muita estatística
considere R para 
prototipação. Para 
produção existem boas 
alternativas, mas não 
deixe de olhar python + 
pandas + scikit
existem vários cenários que 
é possível aplicar as idéias 
de machine learning dentro 
da sua empresa e não 
precisa ser big data small 
data
Obrigado.
Referências 
Introdução a sistemas de recomendação - 
https://www.coursera.org/course/recsys 
Recommender Systems: An Introduction - http://www.amazon.com/Recommender-Systems- 
Introduction-Dietmar-Jannach/dp/0521493366 
Process Mining - http://www.processmining.org/ 
Statistical Learning Theory -http://en.wikipedia.org/wiki/Statistical_learning_theory 
An Introduction to Statistical Learning with applications in R - Gareth James, Daniela 
Wittern, Trevor Hastie, Robert Tibshirani 
R Language - http://www.r-project.org/ 
scikit learn - http://scikit-learn.org/stable/ 
Vandal - www.vandal.com.br

Weitere ähnliche Inhalte

Andere mochten auch

Data Mining - Clustering
Data Mining - ClusteringData Mining - Clustering
Data Mining - Clusteringiaudesc
 
Azure Machine Learning
Azure Machine LearningAzure Machine Learning
Azure Machine LearningLeandro Guerra
 
Aprendizado de máquina
Aprendizado de máquinaAprendizado de máquina
Aprendizado de máquinaparasite
 
Recursos do Ambiente R para a Análise de Clusters
Recursos do Ambiente R para a Análise de ClustersRecursos do Ambiente R para a Análise de Clusters
Recursos do Ambiente R para a Análise de ClustersRodrigo Nunes
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerLuminary Labs
 
Machine Learning na sua empresa: casos de uso
Machine Learning na sua empresa: casos de usoMachine Learning na sua empresa: casos de uso
Machine Learning na sua empresa: casos de usoMario Filho
 
Mineração de Dados no Weka - Regressão Linear
Mineração de Dados no Weka -  Regressão LinearMineração de Dados no Weka -  Regressão Linear
Mineração de Dados no Weka - Regressão LinearJoão Gabriel Lima
 
Machine learning java ce conference 2012 - fortaleza ce
Machine learning java ce conference 2012 - fortaleza ceMachine learning java ce conference 2012 - fortaleza ce
Machine learning java ce conference 2012 - fortaleza ceLuca Bastos
 
Business Intelligence Open Source - Portuguese -
Business Intelligence Open Source  - Portuguese -Business Intelligence Open Source  - Portuguese -
Business Intelligence Open Source - Portuguese -Stratebi
 
APRENDIZAGEM DE MÁQUINA PARA PREVISÃO DE DEMANDA EM UM SISTEMA DE COMPARTILHA...
APRENDIZAGEM DE MÁQUINA PARA PREVISÃO DE DEMANDA EM UM SISTEMA DE COMPARTILHA...APRENDIZAGEM DE MÁQUINA PARA PREVISÃO DE DEMANDA EM UM SISTEMA DE COMPARTILHA...
APRENDIZAGEM DE MÁQUINA PARA PREVISÃO DE DEMANDA EM UM SISTEMA DE COMPARTILHA...Rafael Felipe Nascimento de Aguiar
 
Bioinformática e suas aplicações
Bioinformática e suas aplicaçõesBioinformática e suas aplicações
Bioinformática e suas aplicaçõesAlex Camargo
 
Mini-curso JavaFX Aula3 UFPB
Mini-curso JavaFX Aula3 UFPBMini-curso JavaFX Aula3 UFPB
Mini-curso JavaFX Aula3 UFPBRaphael Marques
 
JavaFX: Desktop para desenvolvedores WEB
JavaFX: Desktop para desenvolvedores WEBJavaFX: Desktop para desenvolvedores WEB
JavaFX: Desktop para desenvolvedores WEBjesuinoPower
 

Andere mochten auch (20)

Data Mining - Clustering
Data Mining - ClusteringData Mining - Clustering
Data Mining - Clustering
 
Azure Machine Learning
Azure Machine LearningAzure Machine Learning
Azure Machine Learning
 
Aprendizado de máquina
Aprendizado de máquinaAprendizado de máquina
Aprendizado de máquina
 
Recursos do Ambiente R para a Análise de Clusters
Recursos do Ambiente R para a Análise de ClustersRecursos do Ambiente R para a Análise de Clusters
Recursos do Ambiente R para a Análise de Clusters
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI Explainer
 
Machine Learning na sua empresa: casos de uso
Machine Learning na sua empresa: casos de usoMachine Learning na sua empresa: casos de uso
Machine Learning na sua empresa: casos de uso
 
Mineração de Dados no Weka - Regressão Linear
Mineração de Dados no Weka -  Regressão LinearMineração de Dados no Weka -  Regressão Linear
Mineração de Dados no Weka - Regressão Linear
 
Machine learning java ce conference 2012 - fortaleza ce
Machine learning java ce conference 2012 - fortaleza ceMachine learning java ce conference 2012 - fortaleza ce
Machine learning java ce conference 2012 - fortaleza ce
 
Business Intelligence Open Source - Portuguese -
Business Intelligence Open Source  - Portuguese -Business Intelligence Open Source  - Portuguese -
Business Intelligence Open Source - Portuguese -
 
APRENDIZAGEM DE MÁQUINA PARA PREVISÃO DE DEMANDA EM UM SISTEMA DE COMPARTILHA...
APRENDIZAGEM DE MÁQUINA PARA PREVISÃO DE DEMANDA EM UM SISTEMA DE COMPARTILHA...APRENDIZAGEM DE MÁQUINA PARA PREVISÃO DE DEMANDA EM UM SISTEMA DE COMPARTILHA...
APRENDIZAGEM DE MÁQUINA PARA PREVISÃO DE DEMANDA EM UM SISTEMA DE COMPARTILHA...
 
Bioinformática e suas aplicações
Bioinformática e suas aplicaçõesBioinformática e suas aplicações
Bioinformática e suas aplicações
 
J!Quant - GPU Technology Conference 2016
J!Quant - GPU Technology Conference 2016J!Quant - GPU Technology Conference 2016
J!Quant - GPU Technology Conference 2016
 
Educação e Carreira
Educação e CarreiraEducação e Carreira
Educação e Carreira
 
Secular Technological Tailwinds
Secular Technological TailwindsSecular Technological Tailwinds
Secular Technological Tailwinds
 
Mini-curso JavaFX Aula3 UFPB
Mini-curso JavaFX Aula3 UFPBMini-curso JavaFX Aula3 UFPB
Mini-curso JavaFX Aula3 UFPB
 
Mini-curso JavaFX Aula2
Mini-curso JavaFX Aula2Mini-curso JavaFX Aula2
Mini-curso JavaFX Aula2
 
Deep Learning
Deep LearningDeep Learning
Deep Learning
 
Fazendo acontecer com Scrum e a Filosofia Ágil.
Fazendo acontecer com Scrum e a Filosofia Ágil.Fazendo acontecer com Scrum e a Filosofia Ágil.
Fazendo acontecer com Scrum e a Filosofia Ágil.
 
JavaFX: Desktop para desenvolvedores WEB
JavaFX: Desktop para desenvolvedores WEBJavaFX: Desktop para desenvolvedores WEB
JavaFX: Desktop para desenvolvedores WEB
 
Introdução ao JavaFX
Introdução ao JavaFXIntrodução ao JavaFX
Introdução ao JavaFX
 

Ähnlich wie Aplicações práticas de ML

Search Labs 2010 - Metricas Avancadas para SEO
Search Labs 2010 - Metricas Avancadas para SEOSearch Labs 2010 - Metricas Avancadas para SEO
Search Labs 2010 - Metricas Avancadas para SEOLeonardo Naressi
 
Introdução ao Big Data para Desenvolvedores Python
Introdução ao Big Data para Desenvolvedores PythonIntrodução ao Big Data para Desenvolvedores Python
Introdução ao Big Data para Desenvolvedores PythonLuiz Eduardo Le Masson
 
[GetNinjas] Business Intelligence Workshop @ Google Campus SP
[GetNinjas] Business Intelligence Workshop @ Google Campus SP[GetNinjas] Business Intelligence Workshop @ Google Campus SP
[GetNinjas] Business Intelligence Workshop @ Google Campus SPBernardo Srulzon
 
AI & Big Data - Personalização da Jornada - PicPay - TDC
AI & Big Data - Personalização da Jornada - PicPay - TDCAI & Big Data - Personalização da Jornada - PicPay - TDC
AI & Big Data - Personalização da Jornada - PicPay - TDCRenan Moreira de Oliveira
 
Mobile Analytics - A importância do Tracking
Mobile Analytics - A importância do TrackingMobile Analytics - A importância do Tracking
Mobile Analytics - A importância do TrackingArthur de Castro Araujo
 
Quais as habilidades técnicas todo PM precisa saber - Petrus Gomes | Closecare
Quais as habilidades técnicas todo PM precisa saber - Petrus Gomes | Closecare  Quais as habilidades técnicas todo PM precisa saber - Petrus Gomes | Closecare
Quais as habilidades técnicas todo PM precisa saber - Petrus Gomes | Closecare Product Camp Brasil
 
Como começar uma startup - StartCamp #1 Ideiação e User Experience
Como começar uma startup - StartCamp #1 Ideiação e User ExperienceComo começar uma startup - StartCamp #1 Ideiação e User Experience
Como começar uma startup - StartCamp #1 Ideiação e User ExperienceWelliton Oliveira
 
Meetup: UX Research – Ladies That UX Florianópolis
Meetup: UX Research – Ladies That UX FlorianópolisMeetup: UX Research – Ladies That UX Florianópolis
Meetup: UX Research – Ladies That UX FlorianópolisLadies That UX Florianópolis
 
eCMetrics - Apresentação Corporativa
eCMetrics - Apresentação CorporativaeCMetrics - Apresentação Corporativa
eCMetrics - Apresentação CorporativaeCMetrics
 
O que é e como fazer um Teste de Usabilidade
O que é e como fazer um Teste de UsabilidadeO que é e como fazer um Teste de Usabilidade
O que é e como fazer um Teste de UsabilidadeGustavo Silveira
 
Cultura de Métricas para SEO (UaiSEO)
Cultura de Métricas para SEO (UaiSEO)Cultura de Métricas para SEO (UaiSEO)
Cultura de Métricas para SEO (UaiSEO)Leonardo Naressi
 
Meet Magento 2014 OSC brasil 6 pro 2
Meet Magento 2014 OSC brasil 6 pro 2Meet Magento 2014 OSC brasil 6 pro 2
Meet Magento 2014 OSC brasil 6 pro 2Deivison Serpa
 
Oferecendo soluções mais assertivas para os usuários de um serviço combinan...
Oferecendo soluções mais assertivas  para os usuários de um serviço  combinan...Oferecendo soluções mais assertivas  para os usuários de um serviço  combinan...
Oferecendo soluções mais assertivas para os usuários de um serviço combinan...belaamaral
 
Levantamento Ágil de Requisitos
Levantamento Ágil de RequisitosLevantamento Ágil de Requisitos
Levantamento Ágil de RequisitosPaulo Furtado
 
Mobile first - W3C WEB.BR 2012
Mobile first - W3C WEB.BR 2012Mobile first - W3C WEB.BR 2012
Mobile first - W3C WEB.BR 2012Horácio Soares
 
Marketing Digital para Empreendedores
Marketing Digital para EmpreendedoresMarketing Digital para Empreendedores
Marketing Digital para EmpreendedoresAlessandro Vieira
 
[SGRio2019] Mais Hipóteses e Menos Certezas - viabilizando o diálogo entre ne...
[SGRio2019] Mais Hipóteses e Menos Certezas - viabilizando o diálogo entre ne...[SGRio2019] Mais Hipóteses e Menos Certezas - viabilizando o diálogo entre ne...
[SGRio2019] Mais Hipóteses e Menos Certezas - viabilizando o diálogo entre ne...Flavio Nazario
 
Definindo métricas para seu produto
Definindo métricas para seu produtoDefinindo métricas para seu produto
Definindo métricas para seu produtoAugusto Rückert
 

Ähnlich wie Aplicações práticas de ML (20)

AI na jornada do usuário de ecommerce
AI na jornada do usuário de ecommerceAI na jornada do usuário de ecommerce
AI na jornada do usuário de ecommerce
 
Search Labs 2010 - Metricas Avancadas para SEO
Search Labs 2010 - Metricas Avancadas para SEOSearch Labs 2010 - Metricas Avancadas para SEO
Search Labs 2010 - Metricas Avancadas para SEO
 
Introdução ao Big Data para Desenvolvedores Python
Introdução ao Big Data para Desenvolvedores PythonIntrodução ao Big Data para Desenvolvedores Python
Introdução ao Big Data para Desenvolvedores Python
 
[GetNinjas] Business Intelligence Workshop @ Google Campus SP
[GetNinjas] Business Intelligence Workshop @ Google Campus SP[GetNinjas] Business Intelligence Workshop @ Google Campus SP
[GetNinjas] Business Intelligence Workshop @ Google Campus SP
 
AI & Big Data - Personalização da Jornada - PicPay - TDC
AI & Big Data - Personalização da Jornada - PicPay - TDCAI & Big Data - Personalização da Jornada - PicPay - TDC
AI & Big Data - Personalização da Jornada - PicPay - TDC
 
Mobile Analytics - A importância do Tracking
Mobile Analytics - A importância do TrackingMobile Analytics - A importância do Tracking
Mobile Analytics - A importância do Tracking
 
Quais as habilidades técnicas todo PM precisa saber - Petrus Gomes | Closecare
Quais as habilidades técnicas todo PM precisa saber - Petrus Gomes | Closecare  Quais as habilidades técnicas todo PM precisa saber - Petrus Gomes | Closecare
Quais as habilidades técnicas todo PM precisa saber - Petrus Gomes | Closecare
 
Como começar uma startup - StartCamp #1 Ideiação e User Experience
Como começar uma startup - StartCamp #1 Ideiação e User ExperienceComo começar uma startup - StartCamp #1 Ideiação e User Experience
Como começar uma startup - StartCamp #1 Ideiação e User Experience
 
Meetup: UX Research – Ladies That UX Florianópolis
Meetup: UX Research – Ladies That UX FlorianópolisMeetup: UX Research – Ladies That UX Florianópolis
Meetup: UX Research – Ladies That UX Florianópolis
 
Arquitetura de informação
Arquitetura de informaçãoArquitetura de informação
Arquitetura de informação
 
eCMetrics - Apresentação Corporativa
eCMetrics - Apresentação CorporativaeCMetrics - Apresentação Corporativa
eCMetrics - Apresentação Corporativa
 
O que é e como fazer um Teste de Usabilidade
O que é e como fazer um Teste de UsabilidadeO que é e como fazer um Teste de Usabilidade
O que é e como fazer um Teste de Usabilidade
 
Cultura de Métricas para SEO (UaiSEO)
Cultura de Métricas para SEO (UaiSEO)Cultura de Métricas para SEO (UaiSEO)
Cultura de Métricas para SEO (UaiSEO)
 
Meet Magento 2014 OSC brasil 6 pro 2
Meet Magento 2014 OSC brasil 6 pro 2Meet Magento 2014 OSC brasil 6 pro 2
Meet Magento 2014 OSC brasil 6 pro 2
 
Oferecendo soluções mais assertivas para os usuários de um serviço combinan...
Oferecendo soluções mais assertivas  para os usuários de um serviço  combinan...Oferecendo soluções mais assertivas  para os usuários de um serviço  combinan...
Oferecendo soluções mais assertivas para os usuários de um serviço combinan...
 
Levantamento Ágil de Requisitos
Levantamento Ágil de RequisitosLevantamento Ágil de Requisitos
Levantamento Ágil de Requisitos
 
Mobile first - W3C WEB.BR 2012
Mobile first - W3C WEB.BR 2012Mobile first - W3C WEB.BR 2012
Mobile first - W3C WEB.BR 2012
 
Marketing Digital para Empreendedores
Marketing Digital para EmpreendedoresMarketing Digital para Empreendedores
Marketing Digital para Empreendedores
 
[SGRio2019] Mais Hipóteses e Menos Certezas - viabilizando o diálogo entre ne...
[SGRio2019] Mais Hipóteses e Menos Certezas - viabilizando o diálogo entre ne...[SGRio2019] Mais Hipóteses e Menos Certezas - viabilizando o diálogo entre ne...
[SGRio2019] Mais Hipóteses e Menos Certezas - viabilizando o diálogo entre ne...
 
Definindo métricas para seu produto
Definindo métricas para seu produtoDefinindo métricas para seu produto
Definindo métricas para seu produto
 

Mehr von Luiz Costa

Hexagonal Rails
Hexagonal RailsHexagonal Rails
Hexagonal RailsLuiz Costa
 
Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...
Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...
Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...Luiz Costa
 
Como DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um LegadoComo DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um LegadoLuiz Costa
 
Impactos no Design utilizando programação funcional Light Talk
Impactos no Design utilizando programação funcional Light TalkImpactos no Design utilizando programação funcional Light Talk
Impactos no Design utilizando programação funcional Light TalkLuiz Costa
 
Impactos no design com programação funcional
Impactos no design com programação funcionalImpactos no design com programação funcional
Impactos no design com programação funcionalLuiz Costa
 
A diferença das linguagens da JVM na prática. Um projeto de bolsa de valores ...
A diferença das linguagens da JVM na prática. Um projeto de bolsa de valores ...A diferença das linguagens da JVM na prática. Um projeto de bolsa de valores ...
A diferença das linguagens da JVM na prática. Um projeto de bolsa de valores ...Luiz Costa
 
Rest Teoria E Pratica
Rest Teoria E PraticaRest Teoria E Pratica
Rest Teoria E PraticaLuiz Costa
 

Mehr von Luiz Costa (7)

Hexagonal Rails
Hexagonal RailsHexagonal Rails
Hexagonal Rails
 
Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...
Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...
Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...
 
Como DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um LegadoComo DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um Legado
 
Impactos no Design utilizando programação funcional Light Talk
Impactos no Design utilizando programação funcional Light TalkImpactos no Design utilizando programação funcional Light Talk
Impactos no Design utilizando programação funcional Light Talk
 
Impactos no design com programação funcional
Impactos no design com programação funcionalImpactos no design com programação funcional
Impactos no design com programação funcional
 
A diferença das linguagens da JVM na prática. Um projeto de bolsa de valores ...
A diferença das linguagens da JVM na prática. Um projeto de bolsa de valores ...A diferença das linguagens da JVM na prática. Um projeto de bolsa de valores ...
A diferença das linguagens da JVM na prática. Um projeto de bolsa de valores ...
 
Rest Teoria E Pratica
Rest Teoria E PraticaRest Teoria E Pratica
Rest Teoria E Pratica
 

Aplicações práticas de ML

  • 1. aplicações práticas de machine learning Luiz Costa @gutomcosta www.sagadoprogramador.com.br
  • 2.
  • 6.
  • 7. machine learning In which we describe agents that can improve their behaviour through diligent study of their own experiences. “Artificial Intelligence -A modern approach" -Stuart Russell and Peter Norvig
  • 8. Field of study that gives computers the ability to learn without being explicitly programmed. Arthur Samuel (1959)
  • 9. Machine learning is a subfield of computer science (CS) and artificial intelligence (AI) that deals with the construction and study of systems that can learn from data, rather than follow only explicitly programmed instructions. Besides CS and AI, it has strong ties to statistics and optimization, which deliver both methods and theory to the field. Machine Learning - Wikipedia
  • 10. Machine learning is a subfield of computer science (CS) and artificial intelligence (AI) that deals with the construction and study of systems that can learn from data, rather than follow only explicitly programmed instructions. Besides CS and AI, it has strong ties to statistics and optimization, which deliver both methods and theory to the field. Machine Learning - Wikipedia
  • 11. supervised learning Aprendendo através de exemplos
  • 13. unsupervised learning sem exemplos, o que é possível fazer?
  • 16. marketing descobrir grupos distintos em uma base de clientes e usar estes grupos para ajudar no desenvolvimento de campanhas focadas nos nestes grupos
  • 17. seguros descobrir perfis com alto risco para seguros de automóveis
  • 18. na prática dois exemplos de uso. Será que dá tempo?
  • 19. evoluindo um sistema de recomendação
  • 26.
  • 27. 1. Mostrar itens similares
  • 28. vector space model skull caveira flower vintage caveiras produto1 1 1 1 0 0 produto2 1 1 0 1 1 produto3 1 1 0 0 0
  • 29. O quanto um produto é similar a outro?
  • 36.
  • 37.
  • 38. 2. recomendação personalizada em desenvolvimento
  • 39.
  • 40. Como mostrar aqui o que é interessante para um usuário?
  • 41. construindo um profile de preferências do usuário
  • 42. capturando ações do usuário Usuário: Paulo José data evento conteúdo 01/09/2014 08:35 buscou {query: "caveira", produtos: [1991, 1331, 3892] } 01/09/2014 08:39 visualizou {id: 1991} 01/09/2014 08:34 visualizou {id:1331} 01/09/2014 08:40 like {id: 1331} 01/09/2014 08:44 comprou {id: 1331}
  • 43. capturando ações do usuário data evento conteúdo 01/09/2014 08:35 buscou {query: "caveira", produtos: [1991, 1331, 3892] } 01/09/2014 08:39 visualizou {id: 1991} 01/09/2014 08:34 visualizou {id:1331} 01/09/2014 08:40 like {id: 1331} 01/09/2014 08:44 comprou {id: 1331}
  • 46. algumas ações não seriam mais importantes que outras?
  • 47. capturando ações do usuário data evento conteúdo peso 01/09/2014 08:35 buscou {query: "caveira", produtos: [1991, 1331, 3892] } 0.3 01/09/2014 08:39 visualizou {id: 1991} 0.1 01/09/2014 08:34 visualizou {id:1331} 0.1 01/09/2014 08:40 like {id: 1331} 0.6 01/09/2014 08:44 comprou {id: 1331} 1
  • 49. vector space model skull caveira flowers metal caveiras ilustração arte cool produto_1331 1 1 1 0 0 0 0 0 produto_1991 0 1 0 1 1 1 1 0 produto_3892 1 1 0 0 1 0 0 1 Paulo José 1 1 0 1 1 1 1 0
  • 50. agora é só calcular a similaridade das preferências de usuário com os produtos
  • 51. agora é só calcular a similaridade das preferências de usuário com os produtos
  • 53.
  • 54.
  • 55. processos inteligentes e process mining aquela história de BPM, Enterprise, pode ser divertida
  • 57. process mining • process discovery • performance analysis • process prediction • process improvement o que realmente aconteceu? quais são os gargalos do meu processo? esta instância vai estourar o sla? como posso redesenhar este processo com o que foi aprendido?
  • 58.
  • 61. e a análise sobre dados de negócios? exemplo compra de passagens aéreas
  • 62. log resumido processo de compra de passagens aéreas passageiro companhia trecho preço data da compra data do embarque dias de diferença Souza/Jose TAM SDU/CGH 570,00 28/01/2014 05/02/2014 8 Costa/Luiz TAM SDU/CGH 200,00 08/04/2014 09/06/2014 62 Paiva/Roberto AVIANCA SDU/CGH 126,00 25/02/2014 11/03/2014 14 Ronaldo/Cristian o TAM SDU/CGH 258,70 25/11/2014 17/12/2014 22
  • 63. dados de negócio? • o que define uma boa compra? • quais são as variáveis que mais influenciam na compra? • por que uma compra ruim, foi ruim?
  • 64. definição de um processo automático para obter respostas Statistical Learning
  • 65. qual seria a entrada de dados necessária? passageiro companhia trecho preço data da compra data do embarque case contexto e objetivo dias de diferença Souza/Jose TAM SDU/CGH 570,00 28/01/2014 05/02/2014 8 Costa/Luiz TAM SDU/CGH 200,00 08/04/2014 09/06/2014 62 Paiva/Roberto AVIANCA SDU/CGH 126,00 25/02/2014 11/03/2014 14 Ronaldo/Cristian o TAM SDU/CGH 258,70 25/11/2014 17/12/2014 22
  • 66. como definir o que é uma boa compra? preço 570,00 200,00 126,00 258,70
  • 67. como definir o que é uma boa compra? preço 570,00 200,00 126,00 258,70 preço <= 181,50
  • 68. quais são as variáveis que mais influenciam na compra?
  • 69. quais são as variáveis que mais influenciam na compra? lineares? Não lineares? variáveis mais importantes
  • 70. quais são as variáveis que mais influenciam na compra? Ex. código R
  • 71. por que uma compra ruim, foi ruim? passageiro companhia trecho preço data da compra data do embarque dias de diferença Souza/Jose TAM SDU/CGH 570,00 28/01/2014 05/02/2014 8
  • 72. por que uma compra ruim, foi ruim? utilizando as variáveis identificadas, é possível ter alguns insights dias de diferença companhia boas case boas case 14 8 100% Avianca TAM passageiro companhia trecho preço data da compra data do embarque dias de diferença Souza/Jose TAM SDU/CGH 570,00 28/01/2014 05/02/2014 8
  • 74. considere R para prototipação. Para produção existem boas alternativas, mas não deixe de olhar python + pandas + scikit
  • 75. existem vários cenários que é possível aplicar as idéias de machine learning dentro da sua empresa e não precisa ser big data small data
  • 77. Referências Introdução a sistemas de recomendação - https://www.coursera.org/course/recsys Recommender Systems: An Introduction - http://www.amazon.com/Recommender-Systems- Introduction-Dietmar-Jannach/dp/0521493366 Process Mining - http://www.processmining.org/ Statistical Learning Theory -http://en.wikipedia.org/wiki/Statistical_learning_theory An Introduction to Statistical Learning with applications in R - Gareth James, Daniela Wittern, Trevor Hastie, Robert Tibshirani R Language - http://www.r-project.org/ scikit learn - http://scikit-learn.org/stable/ Vandal - www.vandal.com.br

Hinweis der Redaktion

  1. Podemos citar várias conceitos aqui, que são tradicionais no mundo OO. Por exemplo, Encapsulamento, polimorfismo, herança, estado. Tudo isso faz parte do que nós conhecemos como OO. Mas o que é mais importante é que isso forma um Conjunto de idéias
  2. Podemos citar várias conceitos aqui, que são tradicionais no mundo OO. Por exemplo, Encapsulamento, polimorfismo, herança, estado. Tudo isso faz parte do que nós conhecemos como OO. Mas o que é mais importante é que isso forma um Conjunto de idéias
  3. Podemos citar várias conceitos aqui, que são tradicionais no mundo OO. Por exemplo, Encapsulamento, polimorfismo, herança, estado. Tudo isso faz parte do que nós conhecemos como OO. Mas o que é mais importante é que isso forma um Conjunto de idéias
  4. final dos anos 80 John Huges escreveu um paper sobre a importancia da programação funcional. Eu gosto bastante de destacar 2 pontos destes paper. É um paper bem denso, e recomendo vcs darem uma olhada, mas ele fala logo no início sobre isso.
  5. final dos anos 80 John Huges escreveu um paper sobre a importancia da programação funcional. Eu gosto bastante de destacar 2 pontos destes paper. É um paper bem denso, e recomendo vcs darem uma olhada, mas ele fala logo no início sobre isso.
  6. final dos anos 80 John Huges escreveu um paper sobre a importancia da programação funcional. Eu gosto bastante de destacar 2 pontos destes paper. É um paper bem denso, e recomendo vcs darem uma olhada, mas ele fala logo no início sobre isso.