SlideShare a Scribd company logo
Deep Learning for
Recommender Systems
Gabriel Moreira
TDC 2019
Lead Data Scientist
About me
Gabriel Moreira
@gspmoreira
Lead Data Scientist DSc. candidate
DRIVEN BY
IMPACT
We are digital transformation agents
for the most valuable brands in the
world, generating business impact for
all projects we lead.
Investing in Machine
Learning since 2012
Recognized Expertise
Google ML Specialized Partner
Tensorflow.org Reference
ciandt.com
Cognitive
Solutions
End-to-End
Machine Learning
Capabilities
Life is too short!
“We are leaving the
Information Age and
entering the
Recommendation Age."
Cris Anderson, "The long tail"
38% of sales
75% of watched content
Recommendations are responsible for...
39% of top news
visualization
What else may I recommend?
What can a Recommender Systems do?
2 - Prediction
Given an item, what is its relevance for
each user?
1 - Recommendation
Given a user, produce an ordered list matching the
user needs
Recommender System Methods
Recommender System
Content-based filtering Collaborative filtering
Model-based filteringMemory-based filtering
Item-basedUser-based
ML-based: Clustering, Association Rules,
Matrix Factorization, Neural Networks
Hybrid filtering+ =
Most popular
Collaborative Filtering
User-Based Collaborative Filtering
Similar interests
Likes
Recommends
Item-Based Collaborative Filtering
Likes Recommends
Who likes A also likes B
Likes
Likes
Collaborative Filtering based on Matrix Factorization
Collaborative Filtering
Advantages
● Works to any item kind (ignore attributes)
Drawbacks
● Usually recommends more popular items
● Cold-start
○ Cannot recommend items not already
rated/consumed
○ Needs a minimum amount of users to match
similar users
Frameworks - Recommender Systems
Python
Python / ScalaJava
.NET
Java
Content-Based Filtering
Content-Based Filtering
Similar content (e.g. actor)
Likes
Recommends
Advantages
● Does not depend upon other users
● May recommend new and unpopular items
● Recommendations can be easily explained
Drawbacks
● Overspecialization
● May be difficult to extract attributes from audio,
movies or images
Content-Based Filtering
Hybrid Recommender Systems
Composite
Iterates by a chain of algorithm, aggregating
recommendations.
Weighted
Each algorithm has as a weight and the final
recommendations are defined by weighted averages.
Some approaches...
Deep
Recommender Systems
Why Deep Learning has a potential for RecSys?
1. Feature extraction directly from the content (e.g., image, text, audio)
Images Text Audio/Music
● CNN ● CNN
● RNNs
● Weighted word
embeddings
● CNN
● RNN
Why Deep Learning has a potential for RecSys?
2. Heterogeneous data handled easily
3. Dynamic behaviour modeling with RNNs
4. More accurate representation learning of users and items
○ Natural extensions of CF
5. RecSys is a complex domain
○ Deep learning worked well in other complex domains
The Deep Learning era of RecSys
2007
2015
2016
2017-2019
Deep Boltzmann Machines
for rating prediction
calm before the
storm
A few seminal papers
First DLRS workshop and
papers on RecSys, KDD,
SIGIR
Continued increase
Advances in DL-RecSys
And their combinations...
News Recommender Systems
News Recommender Systems
The majority of web traffic (TREVISIOL et al. , 2014b)
27
News Recommender Systems
Challenges
28
1. Streaming clicks and news articles
2. Most users are anonymous
3. Users’ preferences shift
4. Accelerated relevance decay
Percentile of clicks Article age
10% up to 4 hours
25% up to 5 hours
50% (Median) up to 8 hours
75% up to 14 hours
90% up to 26 hours
News Recommender Systems
Factors affecting news relevance
29
News
relevance
Topics Entities Publisher
News static properties
Recency Popularity
News dynamic properties
News article
User
TimeLocation Device
User current context
Long-term
interests
Short-term
interests
Global factors
Season-
ality
User interests
Breaking
events
Popular
Topics
Referrer
News session-based recommender overview
30
User session clicks
C1
C2
C3
C4
Next-click prediction
model
Article B
Article A
Article C
Article D
...
Ranked articles
Recommendable articles (sample)
CHAMELEON: A Deep Learning
Meta-Architecture for News
Recommendation
CHAMELEON Meta-Architecture for News RS
Article
Context
Article
Content
Embeddings
Article Content Representation (ACR)
Textual Features Representation (TFR)
Metadata Prediction (MP)
Category Tags Entities
Article Metadata Attributes
Next-Article Recommendation (NAR)
Time
Location
Device
When a news article is published...
User context
User interaction
past read articles
Popularity
Recency
Article context
Users Past
Sessions
Article
Content
Embedding
candidate next articles
(positive and neg.)
active article
Active
Sessions
When a user reads a news article...
Predicted Next-Article Embedding
Session Representation (SR)
Recommendations Ranking (RR)
User-Personalized Contextual Article Embedding
Recommended
articles
Contextual Article Representation (CAR)
Word embeddings sequence
New York is a multicultural city , ...
News Article Text
Active user session
Module Sub-Module EmbeddingInput Output Data repositoryAttributes
Article Content Embedding
Legend:
Word
Embeddings
32
CHAMELEON - ACR module
Article
Content
Embeddings
Article Content Representation (ACR)
Textual Features Representation (TFR)
Metadata Prediction (MP)
Category Tags Entities
Article Metadata Attributes
When a news article is published...
Module Sub-Module EmbeddingInput Output Data repositoryAttributes
Article Content Embedding
Legend:
Word
Embeddings
T-SNE viz. of articles embeddings colored by
category, with similar articles highlighted
Word embeddings sequence
New York is a multicultural city , ...
News Article Text
“Sports”
“Politics”
Article
Context
Article
Content
Embeddings
Next-Article Recommendation (NAR)
Time
Location
Device
User context
User interaction
past read articles
Popularity
Recency
Article context
Users Past
Sessions
candidate next articles
(positive and neg.)
active article
Active
Sessions
When a user reads a news article...
Predicted Next-Article Embedding
Session Representation (SR)
Recommendations Ranking (RR)
User-Personalized Contextual Article Embedding
Recommended
articles
Contextual Article Representation (CAR)
Active user session
Module Sub-Module EmbeddingInput Output Data repositoryAttributesLegend:
Article
Content
Embedding
34
CHAMELEON - NAR module
Sessions in a batch
I1,1
I1,2
I1,3
I1,4
I1,5
I2,1
I2,2
I3,1
I3,2
I3,3
Input
I1,1
I1,2
I1,3
I1,4
I1,2
I1,3
I1,4
I1,5
Expected Output (labels)
Article
Context
Article
Content
Embeddings
Next-Article Recommendation (NAR)
Time
Location
Device
User context
User interaction
past read articles
Popularity
Recency
Article context
Users Past
Sessions
candidate next articles
(positive and neg.)
active article
Active
Sessions
When a user reads a news article...
Predicted Next-Article Embedding
Session Representation (SR)
Recommendations Ranking (RR)
User-Personalized Contextual Article Embedding
Recommended
articles
Contextual Article Representation (CAR)
Active user session
Module Sub-Module EmbeddingInput Output Data repositoryAttributesLegend:
Article
Content
Embedding
35
Sampling strategy
Negative samples:
Articles read by other users in the last hour
Positive sample:
Next article read by the user in his session
Samples
CHAMELEON - NAR module
Article
Context
Article
Content
Embeddings
Next-Article Recommendation (NAR)
Time
Location
Device
User context
User interaction
past read articles
Popularity
Recency
Article context
Users Past
Sessions
candidate next articles
(positive and neg.)
active article
Active
Sessions
When a user reads a news article...
Predicted Next-Article Embedding
Session Representation (SR)
Recommendations Ranking (RR)
User-Personalized Contextual Article Embedding
Contextual Article Representation (CAR)
Active user session
Module Sub-Module EmbeddingInput Output Data repositoryAttributesLegend:
Recommendations Ranking
(RR) sub-module
Article
Content
Embedding
Relevance Score of an item for a user session
36
Recommended
articles
CHAMELEON - NAR module
CHAMELEON - Ranking loss function
Cosine similarity-based loss function implemented on TensorFlow
-
Cosine similarity Softmax over Relevance Score Loss function
CHAMELEON
Architecture Instatiations
An architecture instantiation of CHAMELEON (1D CNN and LSTM)
39
Article
Context
Article
Content
Embeddings
Article Content Representation (ACR)
Textual Features Representation (TFR)
Metadata Prediction (MP)
Category
Target Article Metadata Attributes
Next-Article Recommendation (NAR)
Platform
Device Type
When a news article is published...
User context
User interaction
past read articles
Popularity
Recency
Article contextArticle
Content
Embedding
candidate next articles
(positive and neg.)
active articleActive
Sessions
When a user reads a news article...
Predicted Next-Article Embedding
Session Representation (SR)
Recommendations Ranking (RR)
User-Personalized Contextual Article Embedding
Recommended
articles
Contextual Article Representation (CAR)
News Article
Active user session
Module Sub-Module EmbeddingInput Output Data repositoryAttributes
Article Content Embedding
Legend:
Word
Embeddings
Convolutional Neural Network (CNN)
conv-3 (128)
max-pooling
conv-4 (128)
max-pooling
conv-5 (128)
max-pooling
Fully Connected
Fully Connected
Fully Connected
Fully Connected
LSTM
Word embeddings sequence
New York is a multicultural city , ...
News Article Text
CHAMELEON Instantiation - Implementation
40
● CHAMELEON’s instantiations are implemented using TensorFlow
https://github.com/gabrielspmoreira/chameleon_recsys
● Training and evaluation performed in Google Cloud Platform ML Engine
Experiments
Experiments - Dataset
42
● Provided by Globo.com (G1), the most popular news portal in Brazil
● Sample from Oct., 1 to 16, 2017, with over 3 M clicks, distributed in 1.2 M
sessions from 330 K users, who read over 50 K unique news articles
https://www.kaggle.com/gspmoreira/news-portal-user-interactions-by-globocom
ACR module training
43
Trained in a dataset with 364 K articles from 461 categories, to generate the
Articles Content Embeddings (vectors with 250 dimensions)
t-SNE visualization of trained Article Content
Embeddings (from top 15 categories)
Distribution of articles by the top 200 categories
Recommendation evaluation
44
Task: For each item within a session, predict the next-clicked item from a set
composed by the positive sample (correct article) and 50 negative samples.
Accuracy Metrics:
● HitRate@10 - Checks whether the positive item is among the top-10 ranked items
● MRR@10 - Ranking metric which assigns higher scores at top ranks.
Hours
Recommendation evaluation
45
Benchmark methods for session-based recommendations:
Frequent patterns methods
1. Co-occurrent - Recommends articles commonly viewed together with the last read article, in
other user sessions (simplified version of the association rules technique, with the maximum rule
size of two) (Jugovac, 2018) (Ludewig, 2018)
2. Sequential Rules (SR) - A more sophisticated version of association rules, which considers the
sequence of clicked items within the session. A rule is created when an item q appeared after an
item p in a session, even when other items were viewed between p and q. The rules are
weighted by the distance x (number of steps) between p and q in the session with a linear
weighting function (Ludewig, 2018)
46
Baseline methods for session-based recommendations:
KNN methods
4. Item-kNN - Returns most similar items to the last read article, in terms of the cosine similarity
between the vector of their sessions, i.e. it is the number of co-occurrences of two items in sessions
divided by the square root of the product of the numbers of sessions in which the individual items
are occurred.
5. Vector Multiplication Session-Based kNN (V-SkNN) - Compares the entire active session with
past sessions and find items to be recommended. The comparison emphasizes items more recently
clicked within the session, when computing the similarities with past sessions (Jannach,2017)
(Jugovac,2018) (Ludewig,2018)
Other baselines
6. Recently Popular - Recommends the most viewed articles from the last N clicks buffer
7. Content-Based - For each article read by the user, recommends similar articles based on the
cosine similarity of their Article Content Embeddings, from the last N clicks buffer.
Recommendation evaluation
Recommendation evaluation
48
Continuous training and evaluating during 16 days (Oct. 1-16, 2017)
Average MRR@10 by hour (evaluation each 5 hours)
Recommendation evaluation
49
Other recommendation quality factors
Item Coverage Novelty Diversity
Recommendation evaluation
50
Balancing conflicting objectives
Recommendation evaluation
51
https://arxiv.org/abs/1904.10367
https://arxiv.org/abs/1808.00076
References
References
https://www.infoq.com/br/presentations/deep-recommender-systems/
References
CI&T Deskdrop dataset on Kaggle!
https://www.kaggle.com/gspmoreira/articles-sharing-reading-from-cit-deskdrop
● 12 months logs
(Mar. 2016 - Feb. 2017)
● ~ 73k logged users interactions
● ~ 3k public articles shared in
the platform.
Recommender Systems in Python 101
https://www.kaggle.com/gspmoreira/recommender-systems-in-python-101
Questions?
TDC 2019
Gabriel Moreira
Lead Data Scientist
gabrielpm@ciandt.com
@gspmoreira

More Related Content

What's hot (20)

PPTX
Machine Learning - Challenges, Learnings & Opportunities
CodePolitan
 
PDF
Graph intelligence: the future of data-driven investigations
Connected Data World
 
PDF
Machine Learning to Grow the World's Knowledge
Xavier Amatriain
 
PPTX
Introduction to Auto ML
Dmitry Petukhov
 
PDF
The Future of Search and AI
Trey Grainger
 
PDF
How Artificial Intelligence & Machine Learning Are Transforming Modern Marketing
CleverTap
 
PDF
Introduction to Text Mining and Visualization with Interactive Web Application
Olga Scrivner
 
PDF
Large-Scale Machine Learning at Twitter
nep_test_account
 
PPTX
DaCENA Personalized Exploration of Knowledge Graphs Within a Context. Seminar...
Università degli Studi di Milano-Bicocca
 
PPTX
Data Tactics Open Source Brief
DataTactics
 
PDF
Introduction to Mahout and Machine Learning
Varad Meru
 
PDF
How Artificial Intelligence & Machine Learning Are Transforming Modern Market...
DigiMarCon - Digital Marketing, Media and Advertising Conferences & Exhibitions
 
PDF
Crowdsourced query augmentation through the semantic discovery of domain spec...
Trey Grainger
 
PDF
How Graph Databases used in Police Department?
Samet KILICTAS
 
PPTX
An Introduction to Text Analytics: 2013 Workshop presentation
Seth Grimes
 
PDF
An explanation of machine learning for business
Clement Levallois
 
PDF
The Next Generation of AI-powered Search
Trey Grainger
 
PPTX
An Evolution of Deep Learning Models for AI2 Reasoning Challenge
Traian Rebedea
 
PDF
Scaling up business value with real-time operational graph analytics
Connected Data World
 
PDF
Democratizing Data within your organization - Data Discovery
Mark Grover
 
Machine Learning - Challenges, Learnings & Opportunities
CodePolitan
 
Graph intelligence: the future of data-driven investigations
Connected Data World
 
Machine Learning to Grow the World's Knowledge
Xavier Amatriain
 
Introduction to Auto ML
Dmitry Petukhov
 
The Future of Search and AI
Trey Grainger
 
How Artificial Intelligence & Machine Learning Are Transforming Modern Marketing
CleverTap
 
Introduction to Text Mining and Visualization with Interactive Web Application
Olga Scrivner
 
Large-Scale Machine Learning at Twitter
nep_test_account
 
DaCENA Personalized Exploration of Knowledge Graphs Within a Context. Seminar...
Università degli Studi di Milano-Bicocca
 
Data Tactics Open Source Brief
DataTactics
 
Introduction to Mahout and Machine Learning
Varad Meru
 
How Artificial Intelligence & Machine Learning Are Transforming Modern Market...
DigiMarCon - Digital Marketing, Media and Advertising Conferences & Exhibitions
 
Crowdsourced query augmentation through the semantic discovery of domain spec...
Trey Grainger
 
How Graph Databases used in Police Department?
Samet KILICTAS
 
An Introduction to Text Analytics: 2013 Workshop presentation
Seth Grimes
 
An explanation of machine learning for business
Clement Levallois
 
The Next Generation of AI-powered Search
Trey Grainger
 
An Evolution of Deep Learning Models for AI2 Reasoning Challenge
Traian Rebedea
 
Scaling up business value with real-time operational graph analytics
Connected Data World
 
Democratizing Data within your organization - Data Discovery
Mark Grover
 

Similar to Deep Learning for Recommender Systems @ TDC SP 2019 (20)

PDF
Deep Learning Recommender Systems
Cristian Javier Martinez
 
PDF
Discovering User's Topics of Interest in Recommender Systems
Gabriel Moreira
 
PPTX
acmsigtalkshare-121023190142-phpapp01.pptx
dongchangim30
 
PPT
miKrow presentation at ESWC2011
Guillermo Álvaro Rey
 
PDF
Recsys2016 Tutorial by Xavier and Deepak
Deepak Agarwal
 
PDF
Discovering User's Topics of Interest in Recommender Systems @ Meetup Machine...
Gabriel Moreira
 
PDF
Large Language Models Bootcamp
Data Science Dojo
 
PDF
In search of better deep Recommender Systems
SK Reddy
 
PPTX
The Role of Structured Data in Modern SEO [Zagreb SEO Summit 2025]
Alex Moss
 
PDF
How recommender systems work
SK Reddy
 
PDF
Projection Multi Scale Hashing Keyword Search in Multidimensional Datasets
IRJET Journal
 
PPT
Social Messaging Solution Matrix
N:Sight Research GmbH
 
PPTX
Serving Information Needs of Knowledge Workers
Debdoot Mukherjee
 
PPTX
An Introduction to Information Retrieval and Applications
sathish sak
 
PDF
Structure, Personalization, Scale: A Deep Dive into LinkedIn Search
C4Media
 
PDF
Recommendation engines matching items to users
Flytxt
 
PDF
Recommendation engines : Matching items to users
jobinwilson
 
PDF
VCCORP SoICT 2018
Tuan Hoang
 
PPTX
The information supernova
Alaa Al-Agamawi
 
PDF
AI/ML Infra Meetup | Building Production Platform for Large-Scale Recommendat...
Alluxio, Inc.
 
Deep Learning Recommender Systems
Cristian Javier Martinez
 
Discovering User's Topics of Interest in Recommender Systems
Gabriel Moreira
 
acmsigtalkshare-121023190142-phpapp01.pptx
dongchangim30
 
miKrow presentation at ESWC2011
Guillermo Álvaro Rey
 
Recsys2016 Tutorial by Xavier and Deepak
Deepak Agarwal
 
Discovering User's Topics of Interest in Recommender Systems @ Meetup Machine...
Gabriel Moreira
 
Large Language Models Bootcamp
Data Science Dojo
 
In search of better deep Recommender Systems
SK Reddy
 
The Role of Structured Data in Modern SEO [Zagreb SEO Summit 2025]
Alex Moss
 
How recommender systems work
SK Reddy
 
Projection Multi Scale Hashing Keyword Search in Multidimensional Datasets
IRJET Journal
 
Social Messaging Solution Matrix
N:Sight Research GmbH
 
Serving Information Needs of Knowledge Workers
Debdoot Mukherjee
 
An Introduction to Information Retrieval and Applications
sathish sak
 
Structure, Personalization, Scale: A Deep Dive into LinkedIn Search
C4Media
 
Recommendation engines matching items to users
Flytxt
 
Recommendation engines : Matching items to users
jobinwilson
 
VCCORP SoICT 2018
Tuan Hoang
 
The information supernova
Alaa Al-Agamawi
 
AI/ML Infra Meetup | Building Production Platform for Large-Scale Recommendat...
Alluxio, Inc.
 
Ad

More from Gabriel Moreira (19)

PDF
PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...
Gabriel Moreira
 
PDF
PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...
Gabriel Moreira
 
PDF
Introduction to Data Science
Gabriel Moreira
 
PDF
CI&T Tech Summit 2017 - Machine Learning para Sistemas de Recomendação
Gabriel Moreira
 
PDF
Feature Engineering - Getting most out of data for predictive models - TDC 2017
Gabriel Moreira
 
PDF
Feature Engineering - Getting most out of data for predictive models
Gabriel Moreira
 
PDF
lsrs15_ciandt
Gabriel Moreira
 
PDF
Python for Data Science - TDC 2015
Gabriel Moreira
 
PDF
Python for Data Science
Gabriel Moreira
 
PPTX
Using Neural Networks and 3D sensors data to model LIBRAS gestures recognitio...
Gabriel Moreira
 
PPTX
Developing GeoGames for Education with Kinect and Android for ArcGIS Runtime
Gabriel Moreira
 
PPTX
Dojo Imagem de Android - 19/06/2012
Gabriel Moreira
 
PPT
Agile Testing e outros amendoins
Gabriel Moreira
 
PPT
ArcGIS Runtime For Android
Gabriel Moreira
 
PPTX
EARLY-FIX: Um Framework para Predição de Manutenção Corretiva de Software uti...
Gabriel Moreira
 
PPTX
Continuous Inspection - An effective approch towards Software Quality Product...
Gabriel Moreira
 
PPTX
An Investigation Of EXtreme Programming Practices
Gabriel Moreira
 
PPTX
METACOM – Uma análise de correlação entre métricas de produto e propensão à m...
Gabriel Moreira
 
PPT
Software Product Measurement and Analysis in a Continuous Integration Environ...
Gabriel Moreira
 
PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...
Gabriel Moreira
 
PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...
Gabriel Moreira
 
Introduction to Data Science
Gabriel Moreira
 
CI&T Tech Summit 2017 - Machine Learning para Sistemas de Recomendação
Gabriel Moreira
 
Feature Engineering - Getting most out of data for predictive models - TDC 2017
Gabriel Moreira
 
Feature Engineering - Getting most out of data for predictive models
Gabriel Moreira
 
lsrs15_ciandt
Gabriel Moreira
 
Python for Data Science - TDC 2015
Gabriel Moreira
 
Python for Data Science
Gabriel Moreira
 
Using Neural Networks and 3D sensors data to model LIBRAS gestures recognitio...
Gabriel Moreira
 
Developing GeoGames for Education with Kinect and Android for ArcGIS Runtime
Gabriel Moreira
 
Dojo Imagem de Android - 19/06/2012
Gabriel Moreira
 
Agile Testing e outros amendoins
Gabriel Moreira
 
ArcGIS Runtime For Android
Gabriel Moreira
 
EARLY-FIX: Um Framework para Predição de Manutenção Corretiva de Software uti...
Gabriel Moreira
 
Continuous Inspection - An effective approch towards Software Quality Product...
Gabriel Moreira
 
An Investigation Of EXtreme Programming Practices
Gabriel Moreira
 
METACOM – Uma análise de correlação entre métricas de produto e propensão à m...
Gabriel Moreira
 
Software Product Measurement and Analysis in a Continuous Integration Environ...
Gabriel Moreira
 
Ad

Recently uploaded (20)

PPTX
01_Approach Cyber- DORA Incident Management.pptx
FinTech Belgium
 
PDF
Enhancing Environmental Monitoring with Real-Time Data Integration: Leveragin...
Safe Software
 
PDF
Database Benchmarking for Performance Masterclass: Session 1 - Benchmarking F...
ScyllaDB
 
PPTX
Simplifica la seguridad en la nube y la detección de amenazas con FortiCNAPP
Cristian Garcia G.
 
PDF
Database Benchmarking for Performance Masterclass: Session 2 - Data Modeling ...
ScyllaDB
 
PDF
Kubernetes - Architecture & Components.pdf
geethak285
 
PPTX
𝙳𝚘𝚠𝚗𝚕𝚘𝚊𝚍—Wondershare Filmora Crack 14.0.7 + Key Download 2025
sebastian aliya
 
PDF
Optimizing the trajectory of a wheel loader working in short loading cycles
Reno Filla
 
PDF
From Chatbot to Destroyer of Endpoints - Can ChatGPT Automate EDR Bypasses (1...
Priyanka Aash
 
PDF
5 Things to Consider When Deploying AI in Your Enterprise
Safe Software
 
PDF
Open Source Milvus Vector Database v 2.6
Zilliz
 
PDF
Plugging AI into everything: Model Context Protocol Simplified.pdf
Abati Adewale
 
PPTX
Practical Applications of AI in Local Government
OnBoard
 
PDF
Darley - FIRST Copenhagen Lightning Talk (2025-06-26) Epochalypse 2038 - Time...
treyka
 
DOCX
Daily Lesson Log MATATAG ICT TEchnology 8
LOIDAALMAZAN3
 
PDF
“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
Edge AI and Vision Alliance
 
PDF
My Journey from CAD to BIM: A True Underdog Story
Safe Software
 
PPTX
reInforce 2025 Lightning Talk - Scott Francis.pptx
ScottFrancis51
 
PPTX
UserCon Belgium: Honey, VMware increased my bill
stijn40
 
PDF
Redefining Work in the Age of AI - What to expect? How to prepare? Why it mat...
Malinda Kapuruge
 
01_Approach Cyber- DORA Incident Management.pptx
FinTech Belgium
 
Enhancing Environmental Monitoring with Real-Time Data Integration: Leveragin...
Safe Software
 
Database Benchmarking for Performance Masterclass: Session 1 - Benchmarking F...
ScyllaDB
 
Simplifica la seguridad en la nube y la detección de amenazas con FortiCNAPP
Cristian Garcia G.
 
Database Benchmarking for Performance Masterclass: Session 2 - Data Modeling ...
ScyllaDB
 
Kubernetes - Architecture & Components.pdf
geethak285
 
𝙳𝚘𝚠𝚗𝚕𝚘𝚊𝚍—Wondershare Filmora Crack 14.0.7 + Key Download 2025
sebastian aliya
 
Optimizing the trajectory of a wheel loader working in short loading cycles
Reno Filla
 
From Chatbot to Destroyer of Endpoints - Can ChatGPT Automate EDR Bypasses (1...
Priyanka Aash
 
5 Things to Consider When Deploying AI in Your Enterprise
Safe Software
 
Open Source Milvus Vector Database v 2.6
Zilliz
 
Plugging AI into everything: Model Context Protocol Simplified.pdf
Abati Adewale
 
Practical Applications of AI in Local Government
OnBoard
 
Darley - FIRST Copenhagen Lightning Talk (2025-06-26) Epochalypse 2038 - Time...
treyka
 
Daily Lesson Log MATATAG ICT TEchnology 8
LOIDAALMAZAN3
 
“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
Edge AI and Vision Alliance
 
My Journey from CAD to BIM: A True Underdog Story
Safe Software
 
reInforce 2025 Lightning Talk - Scott Francis.pptx
ScottFrancis51
 
UserCon Belgium: Honey, VMware increased my bill
stijn40
 
Redefining Work in the Age of AI - What to expect? How to prepare? Why it mat...
Malinda Kapuruge
 

Deep Learning for Recommender Systems @ TDC SP 2019

  • 1. Deep Learning for Recommender Systems Gabriel Moreira TDC 2019 Lead Data Scientist
  • 2. About me Gabriel Moreira @gspmoreira Lead Data Scientist DSc. candidate
  • 3. DRIVEN BY IMPACT We are digital transformation agents for the most valuable brands in the world, generating business impact for all projects we lead.
  • 4. Investing in Machine Learning since 2012 Recognized Expertise Google ML Specialized Partner Tensorflow.org Reference ciandt.com Cognitive Solutions End-to-End Machine Learning Capabilities
  • 5. Life is too short!
  • 6. “We are leaving the Information Age and entering the Recommendation Age." Cris Anderson, "The long tail"
  • 7. 38% of sales 75% of watched content Recommendations are responsible for... 39% of top news visualization
  • 8. What else may I recommend?
  • 9. What can a Recommender Systems do? 2 - Prediction Given an item, what is its relevance for each user? 1 - Recommendation Given a user, produce an ordered list matching the user needs
  • 10. Recommender System Methods Recommender System Content-based filtering Collaborative filtering Model-based filteringMemory-based filtering Item-basedUser-based ML-based: Clustering, Association Rules, Matrix Factorization, Neural Networks Hybrid filtering+ = Most popular
  • 12. User-Based Collaborative Filtering Similar interests Likes Recommends
  • 13. Item-Based Collaborative Filtering Likes Recommends Who likes A also likes B Likes Likes
  • 14. Collaborative Filtering based on Matrix Factorization
  • 15. Collaborative Filtering Advantages ● Works to any item kind (ignore attributes) Drawbacks ● Usually recommends more popular items ● Cold-start ○ Cannot recommend items not already rated/consumed ○ Needs a minimum amount of users to match similar users
  • 16. Frameworks - Recommender Systems Python Python / ScalaJava .NET Java
  • 18. Content-Based Filtering Similar content (e.g. actor) Likes Recommends
  • 19. Advantages ● Does not depend upon other users ● May recommend new and unpopular items ● Recommendations can be easily explained Drawbacks ● Overspecialization ● May be difficult to extract attributes from audio, movies or images Content-Based Filtering
  • 20. Hybrid Recommender Systems Composite Iterates by a chain of algorithm, aggregating recommendations. Weighted Each algorithm has as a weight and the final recommendations are defined by weighted averages. Some approaches...
  • 22. Why Deep Learning has a potential for RecSys? 1. Feature extraction directly from the content (e.g., image, text, audio) Images Text Audio/Music ● CNN ● CNN ● RNNs ● Weighted word embeddings ● CNN ● RNN
  • 23. Why Deep Learning has a potential for RecSys? 2. Heterogeneous data handled easily 3. Dynamic behaviour modeling with RNNs 4. More accurate representation learning of users and items ○ Natural extensions of CF 5. RecSys is a complex domain ○ Deep learning worked well in other complex domains
  • 24. The Deep Learning era of RecSys 2007 2015 2016 2017-2019 Deep Boltzmann Machines for rating prediction calm before the storm A few seminal papers First DLRS workshop and papers on RecSys, KDD, SIGIR Continued increase
  • 25. Advances in DL-RecSys And their combinations...
  • 27. News Recommender Systems The majority of web traffic (TREVISIOL et al. , 2014b) 27
  • 28. News Recommender Systems Challenges 28 1. Streaming clicks and news articles 2. Most users are anonymous 3. Users’ preferences shift 4. Accelerated relevance decay Percentile of clicks Article age 10% up to 4 hours 25% up to 5 hours 50% (Median) up to 8 hours 75% up to 14 hours 90% up to 26 hours
  • 29. News Recommender Systems Factors affecting news relevance 29 News relevance Topics Entities Publisher News static properties Recency Popularity News dynamic properties News article User TimeLocation Device User current context Long-term interests Short-term interests Global factors Season- ality User interests Breaking events Popular Topics Referrer
  • 30. News session-based recommender overview 30 User session clicks C1 C2 C3 C4 Next-click prediction model Article B Article A Article C Article D ... Ranked articles Recommendable articles (sample)
  • 31. CHAMELEON: A Deep Learning Meta-Architecture for News Recommendation
  • 32. CHAMELEON Meta-Architecture for News RS Article Context Article Content Embeddings Article Content Representation (ACR) Textual Features Representation (TFR) Metadata Prediction (MP) Category Tags Entities Article Metadata Attributes Next-Article Recommendation (NAR) Time Location Device When a news article is published... User context User interaction past read articles Popularity Recency Article context Users Past Sessions Article Content Embedding candidate next articles (positive and neg.) active article Active Sessions When a user reads a news article... Predicted Next-Article Embedding Session Representation (SR) Recommendations Ranking (RR) User-Personalized Contextual Article Embedding Recommended articles Contextual Article Representation (CAR) Word embeddings sequence New York is a multicultural city , ... News Article Text Active user session Module Sub-Module EmbeddingInput Output Data repositoryAttributes Article Content Embedding Legend: Word Embeddings 32
  • 33. CHAMELEON - ACR module Article Content Embeddings Article Content Representation (ACR) Textual Features Representation (TFR) Metadata Prediction (MP) Category Tags Entities Article Metadata Attributes When a news article is published... Module Sub-Module EmbeddingInput Output Data repositoryAttributes Article Content Embedding Legend: Word Embeddings T-SNE viz. of articles embeddings colored by category, with similar articles highlighted Word embeddings sequence New York is a multicultural city , ... News Article Text “Sports” “Politics”
  • 34. Article Context Article Content Embeddings Next-Article Recommendation (NAR) Time Location Device User context User interaction past read articles Popularity Recency Article context Users Past Sessions candidate next articles (positive and neg.) active article Active Sessions When a user reads a news article... Predicted Next-Article Embedding Session Representation (SR) Recommendations Ranking (RR) User-Personalized Contextual Article Embedding Recommended articles Contextual Article Representation (CAR) Active user session Module Sub-Module EmbeddingInput Output Data repositoryAttributesLegend: Article Content Embedding 34 CHAMELEON - NAR module Sessions in a batch I1,1 I1,2 I1,3 I1,4 I1,5 I2,1 I2,2 I3,1 I3,2 I3,3 Input I1,1 I1,2 I1,3 I1,4 I1,2 I1,3 I1,4 I1,5 Expected Output (labels)
  • 35. Article Context Article Content Embeddings Next-Article Recommendation (NAR) Time Location Device User context User interaction past read articles Popularity Recency Article context Users Past Sessions candidate next articles (positive and neg.) active article Active Sessions When a user reads a news article... Predicted Next-Article Embedding Session Representation (SR) Recommendations Ranking (RR) User-Personalized Contextual Article Embedding Recommended articles Contextual Article Representation (CAR) Active user session Module Sub-Module EmbeddingInput Output Data repositoryAttributesLegend: Article Content Embedding 35 Sampling strategy Negative samples: Articles read by other users in the last hour Positive sample: Next article read by the user in his session Samples CHAMELEON - NAR module
  • 36. Article Context Article Content Embeddings Next-Article Recommendation (NAR) Time Location Device User context User interaction past read articles Popularity Recency Article context Users Past Sessions candidate next articles (positive and neg.) active article Active Sessions When a user reads a news article... Predicted Next-Article Embedding Session Representation (SR) Recommendations Ranking (RR) User-Personalized Contextual Article Embedding Contextual Article Representation (CAR) Active user session Module Sub-Module EmbeddingInput Output Data repositoryAttributesLegend: Recommendations Ranking (RR) sub-module Article Content Embedding Relevance Score of an item for a user session 36 Recommended articles CHAMELEON - NAR module
  • 37. CHAMELEON - Ranking loss function Cosine similarity-based loss function implemented on TensorFlow - Cosine similarity Softmax over Relevance Score Loss function
  • 39. An architecture instantiation of CHAMELEON (1D CNN and LSTM) 39 Article Context Article Content Embeddings Article Content Representation (ACR) Textual Features Representation (TFR) Metadata Prediction (MP) Category Target Article Metadata Attributes Next-Article Recommendation (NAR) Platform Device Type When a news article is published... User context User interaction past read articles Popularity Recency Article contextArticle Content Embedding candidate next articles (positive and neg.) active articleActive Sessions When a user reads a news article... Predicted Next-Article Embedding Session Representation (SR) Recommendations Ranking (RR) User-Personalized Contextual Article Embedding Recommended articles Contextual Article Representation (CAR) News Article Active user session Module Sub-Module EmbeddingInput Output Data repositoryAttributes Article Content Embedding Legend: Word Embeddings Convolutional Neural Network (CNN) conv-3 (128) max-pooling conv-4 (128) max-pooling conv-5 (128) max-pooling Fully Connected Fully Connected Fully Connected Fully Connected LSTM Word embeddings sequence New York is a multicultural city , ... News Article Text
  • 40. CHAMELEON Instantiation - Implementation 40 ● CHAMELEON’s instantiations are implemented using TensorFlow https://github.com/gabrielspmoreira/chameleon_recsys ● Training and evaluation performed in Google Cloud Platform ML Engine
  • 42. Experiments - Dataset 42 ● Provided by Globo.com (G1), the most popular news portal in Brazil ● Sample from Oct., 1 to 16, 2017, with over 3 M clicks, distributed in 1.2 M sessions from 330 K users, who read over 50 K unique news articles https://www.kaggle.com/gspmoreira/news-portal-user-interactions-by-globocom
  • 43. ACR module training 43 Trained in a dataset with 364 K articles from 461 categories, to generate the Articles Content Embeddings (vectors with 250 dimensions) t-SNE visualization of trained Article Content Embeddings (from top 15 categories) Distribution of articles by the top 200 categories
  • 44. Recommendation evaluation 44 Task: For each item within a session, predict the next-clicked item from a set composed by the positive sample (correct article) and 50 negative samples. Accuracy Metrics: ● HitRate@10 - Checks whether the positive item is among the top-10 ranked items ● MRR@10 - Ranking metric which assigns higher scores at top ranks. Hours
  • 45. Recommendation evaluation 45 Benchmark methods for session-based recommendations: Frequent patterns methods 1. Co-occurrent - Recommends articles commonly viewed together with the last read article, in other user sessions (simplified version of the association rules technique, with the maximum rule size of two) (Jugovac, 2018) (Ludewig, 2018) 2. Sequential Rules (SR) - A more sophisticated version of association rules, which considers the sequence of clicked items within the session. A rule is created when an item q appeared after an item p in a session, even when other items were viewed between p and q. The rules are weighted by the distance x (number of steps) between p and q in the session with a linear weighting function (Ludewig, 2018)
  • 46. 46 Baseline methods for session-based recommendations: KNN methods 4. Item-kNN - Returns most similar items to the last read article, in terms of the cosine similarity between the vector of their sessions, i.e. it is the number of co-occurrences of two items in sessions divided by the square root of the product of the numbers of sessions in which the individual items are occurred. 5. Vector Multiplication Session-Based kNN (V-SkNN) - Compares the entire active session with past sessions and find items to be recommended. The comparison emphasizes items more recently clicked within the session, when computing the similarities with past sessions (Jannach,2017) (Jugovac,2018) (Ludewig,2018) Other baselines 6. Recently Popular - Recommends the most viewed articles from the last N clicks buffer 7. Content-Based - For each article read by the user, recommends similar articles based on the cosine similarity of their Article Content Embeddings, from the last N clicks buffer. Recommendation evaluation
  • 48. 48 Continuous training and evaluating during 16 days (Oct. 1-16, 2017) Average MRR@10 by hour (evaluation each 5 hours) Recommendation evaluation
  • 49. 49 Other recommendation quality factors Item Coverage Novelty Diversity Recommendation evaluation
  • 54. CI&T Deskdrop dataset on Kaggle! https://www.kaggle.com/gspmoreira/articles-sharing-reading-from-cit-deskdrop ● 12 months logs (Mar. 2016 - Feb. 2017) ● ~ 73k logged users interactions ● ~ 3k public articles shared in the platform. Recommender Systems in Python 101 https://www.kaggle.com/gspmoreira/recommender-systems-in-python-101