Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Sistemas de Recomendação
Search
Celso Crivelaro
January 27, 2020
Science
2
210
Sistemas de Recomendação
Celso Crivelaro
January 27, 2020
Tweet
Share
More Decks by Celso Crivelaro
See All by Celso Crivelaro
Big Data para Gerentes de Projetos
celsocrivelaro
0
54
FileSystems em Ruby com FUSE
celsocrivelaro
2
64
Padrões e Boas Práticas de Teste de Tela
celsocrivelaro
0
410
Projeto de APIs
celsocrivelaro
0
150
Testing Network Conditions with ToxiProxy
celsocrivelaro
1
380
Testing Network Conditions with ToxiProxy
celsocrivelaro
0
80
Actor Model in Ruby
celsocrivelaro
0
240
Separando as regras de negócios do Rails
celsocrivelaro
0
180
InfluxDB + Grafana
celsocrivelaro
0
250
Other Decks in Science
See All in Science
Transport information Geometry: Current and Future II
lwc2017
0
160
科学で迫る勝敗の法則(電気学会・SICE若手セミナー講演 2024年12月) / The principle of victory discovered by science (Lecture for young academists in IEEJ-SICE))
konakalab
0
110
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
120
データベース05: SQL(2/3) 結合質問
trycycle
PRO
0
720
Trend Classification of InSAR Displacement Time Series Using SAE–CNN
satai
3
480
機械学習 - 授業概要
trycycle
PRO
0
210
Valuable Lessons Learned on Kaggle’s ARC AGI LLM Challenge (PyDataGlobal 2024)
ianozsvald
0
400
Cross-Media Information Spaces and Architectures (CISA)
signer
PRO
3
31k
データベース09: 実体関連モデル上の一貫性制約
trycycle
PRO
0
770
トラブルがあったコンペに学ぶデータ分析
tereka114
2
1.6k
データマイニング - ノードの中心性
trycycle
PRO
0
190
Explanatory material
yuki1986
0
340
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Adopting Sorbet at Scale
ufuk
77
9.5k
Visualization
eitanlees
146
16k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
We Have a Design System, Now What?
morganepeng
53
7.7k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.4k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
750
A designer walks into a library…
pauljervisheath
207
24k
Transcript
Sistemas de Recomendação Celso Crivelaro
Software Engineering @ Manager Professor IA e @ Big DaTa
Celso Crivelaro T: @celsocrivelaro E:
[email protected]
O que é um Sistema de Recomendação?
Trazer os tops itens para os Usuários Sistemas de Recomendação
Recomendação <> Busca Diferença: Recomendação é personalizada ao usuário. Busca é para uso geral
https://teses.usp.br/teses/disponiveis/3/3141/tde-26072013-121007/pt-br.php
None
None
None
None
None
Recomendação é um problema de Ranking
Muito provável clicar Menos provável
Muito provável clicar Estou em pânico Menos provável
Técnicas
Filtragem Baseada em Conteúdo
Usa-se os atributos dos itens para comparação Filtragem Baseada em
Conteúdo A recomendação se dá pela proximidade de um item aos itens consumidos pelo usuário Os itens com melhor ranking, aparecem no topo
Preciso definir quais atributos dos itens são relevantes Filtragem Baseada
em Conteúdo Definir pesos e utilidades de cada atributo e instância Os itens com melhor ranking, aparecem no topo
Gênero Atributos Ano de Publicação Palavras-chave
Algoritmo Clássico: IDF - TF
Mesmo usado pela busca (Lucene, engine do ELK, Solr) TF
- IDF Term Frequency - Inverse of Document Frequency Prioriza itens (documentos) com os atributos mais raros
Quando o uso é interessante
Em uma página, mostrar itens similares Usos Em uma base
nova, com poucas interações dos usuários Quando os itens têm atributos mapeáveis
Pontos Fracos
Forte tendência a indicar itens muito parecidos
Filtragem Colaborativa
Princípio: Pessoas parecidas têm gostos próximos Filtragem Colaborativa A recomendação
se dá pela proximidade de um item aos itens consumidos pelo usuário Parecido com o mundo real: Pessoas recomendam no boca-a-boca
Algoritmo Clássico: kNN
Primeiro: Mede-se quanto um usuário é igual aos outros
Segundo: Ao recomendar um item, tira-se a média ponderada pela
similaridade + fator de avaliação (nota)
Quando o uso é interessante
Quando a interação do usuário é fácil de buscar Usos
Aspecto social forte Repetição de padrões de comportamento de usuários
Pontos Fracos
Problema do novo Usuário: Como o usuário não tem itens,
qual recomendar? Pontos Fracos Idem para problema do novo Item Computação cara, precisa de várias heurísticas
Híbridos
Podemos usar as 2 abordagens aos mesmo tempo Sistemas Híbridos
Um pode ser filtro do outro ou dar boost no ranking Podemos usar Regras Conhecidas para filtrar resultados
Decaimento
Problema do Harry Potter
Itens com altíssimo ranking são recomendados sempre Problema do Harry
Potter
O que pode ser decaimento: Tempo, Distância, Volume Usar funções
de Decaimento Decaimento Exponencial
Como se avalia um RecSys?
Top N recomendações. Ideal: N = 5 Avaliação Precisão Recall
Precisão@N Recall@N
Como achamos que Recomendação pode ajudar?
Obrigado!