introdução aos sistemas de recomendação usando machine learning

47
Machine Learning Como a e a sabem o que você quer comprar e assistir? @MumHaBR #recommendersystems #datascience #predictionIO https://br.linkedin.com/in/ rafaelleonhardt

Upload: rafael-leonhardt

Post on 12-Apr-2017

262 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Introdução aos sistemas de recomendação usando Machine Learning

Machine Learning

Como a e a sabem o que você quer comprar e assistir?

@MumHaBR

#recommendersystems#datascience#predictionIO

https://br.linkedin.com/in/rafaelleonhardt

Page 2: Introdução aos sistemas de recomendação usando Machine Learning

• inteligência artificial

• algoritmos e técnicas que aprendem

• extrai regras e padrões

• mineração de dados e estatísticas

Fonte: https://pt.wikipedia.org/wiki/Aprendizado_de_máquina

Page 3: Introdução aos sistemas de recomendação usando Machine Learning

Áreas de aplicação

LOGÍSTICA

manutençãorota de entrega

self-drivercarregamentogestão de risco

ACESSO & SEGURANÇA

identificaçãoreconhecimentomonitoramento

robôs autônomos

ERP

manutençãoanti-fraudeotimização

ações automáticasvendas

e-commerce

RH

turn-overcontratações

promoçãotreinamentos

Page 4: Introdução aos sistemas de recomendação usando Machine Learning
Page 5: Introdução aos sistemas de recomendação usando Machine Learning
Page 6: Introdução aos sistemas de recomendação usando Machine Learning

Areas de aplicação

COMMERCE

produtosserviços

MARKETING

campanhasnichos

HELP-DESK

respostasauto-preenchimento

Page 7: Introdução aos sistemas de recomendação usando Machine Learning

Métodos comunsSUPERVISIONADO NÃO SUPERVISIONADO

Na cesta tem: • Maça (vermelha, médio),

• Uva (verde, pequeno)

• Banana (amarela, médio), etc.

Classificações: Maça, Uva, Banana, etc

Não sei o que tem na cesta.

Atributos: cor, tamanho, etc

Grupos: A, B, C, D, E, F, etc

Page 8: Introdução aos sistemas de recomendação usando Machine Learning

Tipos – NÃO PERSONALIZADOS

Page 9: Introdução aos sistemas de recomendação usando Machine Learning

Tipos - PERSONALIZADOS

Page 10: Introdução aos sistemas de recomendação usando Machine Learning

Passo 1 – coletar dados

Page 11: Introdução aos sistemas de recomendação usando Machine Learning

Coleta de dados – EXPLÍCITA[ ? ] Eu possuo[ ? ] Não tenho interesse[ ? ] Avalie este item

[ ? ] Classificação[ ? ] Minha lista[ ? ] Gosto de: ação, suspense, etc

Page 12: Introdução aos sistemas de recomendação usando Machine Learning

Vocês são sinceros ao avaliar um produto?Gera recomendações de alta qualidade

SEMPRE avaliam um produto?Geralmente avaliamos poucos itens.

O que os motiva avaliarem?Geralmente nos extremos: muito bom ou muito ruim.

Quantos filmes e séries faltam assistir para “ZERAR” o Netflix? Um usuário consome um % pequeno de itens e avalie menos ainda.

Coleta de dados – EXPLÍCITA

Page 13: Introdução aos sistemas de recomendação usando Machine Learning

Coleta de dados – IMPLÍCITA[ ! ] Porque você comprou “It´s so easy”[ ! ] Porque você visualizou “X”[ ! ] Porque você compartilhou “Y”

[ ! ] Porque você assistiu “Marco Polo”

Outras formas:• Tipo do dispositivo utilizado• Browser utilizado• Região de onde está acessando• Histórico de navegação

Page 14: Introdução aos sistemas de recomendação usando Machine Learning

Em um site, quais informações eles sabem de vocês?Eles sabem, gostem ou não. (Celular, Browser, Cidade, Horário, Navegação, etc)

Vocês já compraram algo que não era para vocês?Eu comprei o livro Slash e o Peppa Pig. Logo, quem gosta de Guns gosta de Peppa?

Mais alguém da casa usa sua conta?Eu escuto Guns N Roses e minha filha Xuxa.

Coleta de dados – IMPLÍCITA

Como resolver? - detectar ações fora do padrão e ignorar - permitir aos usuários corrigirem

Page 15: Introdução aos sistemas de recomendação usando Machine Learning

Passo 2 – escolher a técnica de recomendação

Page 16: Introdução aos sistemas de recomendação usando Machine Learning

Técnica – Filtragem Colaborativa por Usuário

Avaliações

Page 17: Introdução aos sistemas de recomendação usando Machine Learning

Técnica – Filtragem Colaborativa por Usuário

?

? ?

? ?

Predição

Page 18: Introdução aos sistemas de recomendação usando Machine Learning

Técnica – Filtragem Colaborativa por Usuário

100% 20% 80%

20% 100% 50%

80% 50% 100%

SimilaridadeOpções de cálculo:• Coseno• Distância Euclidiana• Coeficiente de Pearson• Coeficiente de Jaccard• etc

Page 19: Introdução aos sistemas de recomendação usando Machine Learning

Técnica – Filtragem Colaborativa por Usuário

80%

Page 20: Introdução aos sistemas de recomendação usando Machine Learning

Técnica – Filtragem Colaborativa por Usuário

Vantagens• Não precisa de detalhes sobre os itens (produtos)• Usuários geram mais informações voluntariamente

Page 21: Introdução aos sistemas de recomendação usando Machine Learning

Técnica – Filtragem Colaborativa por Usuário

Vantagens• Não precisa de detalhes sobre os itens (produtos)• Usuários geram mais informações voluntariamente

Problemas• Novos produtos e usuários

Page 22: Introdução aos sistemas de recomendação usando Machine Learning

Técnica – Filtragem Colaborativa por Usuário

Vantagens• Não precisa de detalhes sobre os itens (produtos)• Usuários geram mais informações voluntariamente

Problemas• Novos produtos e usuários• Itens populares

Page 23: Introdução aos sistemas de recomendação usando Machine Learning

Técnica – Filtragem Colaborativa por Usuário

Vantagens• Não precisa de detalhes sobre os itens (produtos)• Usuários geram mais informações voluntariamente

Problemas• Novos produtos e usuários• Itens populares• Esparcidade(avaliações do usuário X qtde produtos)

Page 24: Introdução aos sistemas de recomendação usando Machine Learning

Técnica – Filtragem Colaborativa por Usuário

Vantagens• Não precisa de detalhes sobre os itens (produtos)• Usuários geram mais informações voluntariamente

Problemas• Novos produtos e usuários• Itens populares• Esparcidade• Maior processamento - 18 milhões de usuários

Page 25: Introdução aos sistemas de recomendação usando Machine Learning

Técnica – Filtragem Colaborativa por Usuário

Vantagens• Não precisa de detalhes sobre os itens (produtos)• Usuários geram mais informações voluntariamente

Problemas• Novos produtos e usuários• Itens populares• Esparcidade• Maior processamento• Precisa de um volume grande de avaliações do usuário para ser assertivo

Page 26: Introdução aos sistemas de recomendação usando Machine Learning

Técnica – Filtragem Colaborativa por Produto

Avaliações

Page 27: Introdução aos sistemas de recomendação usando Machine Learning

Técnica – Filtragem Colaborativa por Produto

?

? ?

? ?

Predição

Page 28: Introdução aos sistemas de recomendação usando Machine Learning

Técnica – Filtragem Colaborativa por Produto

100% 90% 40% 10%

90% 100% 60% 40%

40% 60% 100% 50%

10% 40% 50% 100%

Similaridade

Page 29: Introdução aos sistemas de recomendação usando Machine Learning

Técnica – Filtragem Colaborativa por Produto

Page 30: Introdução aos sistemas de recomendação usando Machine Learning

Técnica – Filtragem Colaborativa por Produto

Vantagens• Não precisa de detalhes sobre os produtos• Menos processamento• Menor esparcidade• Não precisa recalcular as similaridade toda hora

Problemas• Novos produtos e usuários• Itens populares• Mais complexo

Page 31: Introdução aos sistemas de recomendação usando Machine Learning

Técnica – Baseada em Conteúdo

SuspenseAção

ViolênciaSuspenseViolência

SitcomHumor

DesenhoHumor

Infantil

série dramática e pós-

apocalíptica com zumbis;

sobre os primeiros anos de Marco Polo

no Império Mongol

Sitcom sobre grupo de

amigos que vivia em Nova

York

Série britânica de desenhos

animados para crianças em idade pré-

escolar

Termo Frequência Relevância

Suspense 2 8

Violência 2 8

Humor 2 8

Desenho 1 10

Amigos 1 10

de 3 6

Etc ...

TF-IDF

Page 32: Introdução aos sistemas de recomendação usando Machine Learning

Técnica – Baseada em Conteúdo

Termo Frequência Relevância

Suspense 2 (walking, polo) 8

Violência 2 (walking, polo) 8

Humor 2 (freinds, peppa) 8

Desenho 1 (peppa) 10

Amigos 1 (friends) 10

de 3 (polo, friends, peppa) 6

Etc ...

TF-IDFPesquisar por:

• “desenho” • Peppa

• “de amigos”• Friends (10)• Polo (6)• Peppa (6)

Page 33: Introdução aos sistemas de recomendação usando Machine Learning

Técnica – Baseada em Conteúdo

Vantagens• Não depende de dados de outros usuários• Novos produtos e não populares podem ser recomendados

Problemas• Difícil identificar quais atributos são importantes descrever• Novos usuários• Mesmos itens (itens de maior relevância)

Page 34: Introdução aos sistemas de recomendação usando Machine Learning

Técnicas – Híbrida

PONDERADA ALTERNADA COMBINADA

Page 35: Introdução aos sistemas de recomendação usando Machine Learning

Como avaliar a precisão?• Mean Absolute Error

• Mean Squared error

• Root Mean Squared Error

Acuráciaquanto a recomendação foi assertiva

Cobertura % de produtos e usuários com

recomendação

Diversidadevariedade de produtos

recomendados

Page 36: Introdução aos sistemas de recomendação usando Machine Learning

Passo 3 – escolher a tecnologia

Page 37: Introdução aos sistemas de recomendação usando Machine Learning

Algumas...

Page 38: Introdução aos sistemas de recomendação usando Machine Learning

open source machine learning stack for building, evaluating and deploying engines

with machine learning algorithms.

Page 39: Introdução aos sistemas de recomendação usando Machine Learning

Templates

Page 40: Introdução aos sistemas de recomendação usando Machine Learning

O MVC de Big Data.....

Page 41: Introdução aos sistemas de recomendação usando Machine Learning

DEMO

Page 42: Introdução aos sistemas de recomendação usando Machine Learning

Passo 1 – importar os dados e treinar

Page 43: Introdução aos sistemas de recomendação usando Machine Learning

Passo 2 – Recomendar e coletar

Page 44: Introdução aos sistemas de recomendação usando Machine Learning
Page 45: Introdução aos sistemas de recomendação usando Machine Learning

Onde aprender? De graça...

Page 46: Introdução aos sistemas de recomendação usando Machine Learning

https://www.youtube.com/watch?v=O8-EaDoBSCQ

Page 47: Introdução aos sistemas de recomendação usando Machine Learning

Obrigado!

@MumHaBRhttps://br.linkedin.com/in/rafaelleonhardt