SlideShare une entreprise Scribd logo
1  sur  37
Télécharger pour lire hors ligne
Smart Canvas®
Hybrid Recommender System
Architecture and Evaluation
Gilmar Souza
Gabriel Moreira
We are global with people in Brazil, USA,
Europe, Australia, Japan and China
Our excellence has been recognized by the
market with awards since our foundation in 1995
We are truly multi-cultural, an army of over
2000 talented employees and their great stories
Strong presence in strategic regions
USA
• Atlanta
• Philadelphia
• Houston
• San Francisco
• Somerset NJ
• New York
Brazil
• Campinas
(headquarters)
• Belo Horizonte
• Rio de Janeiro
• São Paulo
UK
• London
China
• Ningbo
• Shanghai
Japan
• Tokyo
3
Australia
• Sydney
Smart Canvas is a platform that delivers
web and mobile user experiences using
machine learning algorithms.
Smart CanvasReordered Stacks
Desktop mobile sites
and mobile apps
Card deck
(Chronological
content inventory)
Big Picture: 1 aggregate -> 2. cardify -> 3. curate
Your environment
(internal and external)
Public Data
RSS
Social
Networks
All of your portals,
apps and people
3rd party systems
through custom
connections
1 3
2
metrics and insights
Algorithms
Context
● Cloud-based SaaS, hosted on Google
● Multi-tenant
● Used in different domains (websites, intranets,
collaboration portals)
● Content produced by the users or ingested from
external services.
● Hybrid recommender system
● Implicit and explicit feedback (touchpoints)
Some Context
Following concepts of material design, presents content as cards and allow like, dislike, pins and
share interactions. Curation merges search relevance with personalized recommendations.
Smart Canvas User Interface
Websites: Ancar Ivanhoe Shopping Malls
Digital strategy revamp
Collaboration Portal: Whirpool Winning Workplace Transformation
The place to learn about Google Apps
Collaboration Portal: SulAmérica Seguros: Innovation Portal
Capturing ideas and inspiration to overcome new market challenges
Collaboration Portal: Motorola Smart Analytics Portal
Reports repository reimagined
Designing for Choice:
The Making of the
Wood-Back Moto X
[VIDEO]New Year, New You
Publisher Name
30 december 2014
Get to Know Rhea
Jeong, a Motorola
Designer of Moto Hint
Search
Analytics
999 999 999
Inside Motorola Inside Motorola Inside Motorola Inside Motorola
999 999 999 999 999 999 999 999 999
...
...
Smart Analytics
Moto X Device Activations:
Latin America North
source.com
Customer Satisfaction
4Q2014
source.com
Model Sales per region
source.com
All
Number of support calls per
region
source.com
What's new Communities AnalyticsPeople ToolsEvents
Smart Analytics
Inside Motorola
999 999 999
Number of support calls
per region
source.com
● 23 Tenants (customer portals).
● 33K cards ingested.
● 8.5M users (anonymous and logged).
● 30M touchpoints (user events) captured.
● 14M recommendations provided.
● 300 ms average recommendation response time.
Last 12 months In Numbers
Architecture
Cards
Touchpoints
Users
Data Layer Batch Layer
Recommenders
Offline Components
Similarity
Algorithms
Serving Layer
Recommenders
Online Components
Hybrid
Composition
Recommendation Layers
Search
Engine
search by terms.
(context: url,
locale
device and
person id)
cards
satisfying the
search criteria
Dynamic
Recommender
Strategy
Recommenders
cards reordered by
relevance.
Recommenders are
created and configured
based the context pattern
(locale, device, time)
1
2
3
4
5
search results curated by
personalized recommenders
6
user clickstream (touchpoints) is
used to refine recommendations
Recommendation Process
Online Serving
Google App Engine (Java)
Batch Processing
Google Compute Engine
Google Cloud Storage
Dynamic
Recommender
Factory
Recommenders
HDFS
Memcache On-demand Jobs
Datastore
(NoSQL)
The recommender system is implemented on Google Cloud Platform and Hadoop Ecosystem
to ensure its scalability and performance at large.
Pig Mahout Python
Smart Canvas
Users
Technology Components
Algorithms
HYBRID RECOMMENDER STRATEGY IS AN AGGREGATION OF THESE ALGORITHMS
Personalized
USER-BASED CF - Find similar users and recommend cards those users liked
CONTENT-BASED FILTERING - Recommends cards with content similar to the user's preference
vector (weighted average of the most relevant words in the content of the cards user interacted with).
ITEM-ITEM FREQUENCY - Recommends X cards frequently read together with the last Y cards user
has read.
DISLIKE FILTER - Reduces relevance of cards user has disliked
Non-Personalized
POPULARITY - Recommends most popular cards, decreasing its relevance as them become older
RECENCY - Recommends most recent cards
FIXED PACK - Human curation, where cards are fixed on top by the admin users (marketers)
ESSENTIALS PACK - Recommends a defined set of cards for new users (< Z interactions)
Recommender Algorithms Overview
Evaluation Framework
● Normalized Discounted Cumulative Gain (nDCG)
Verify whether the cards are ranked accordingly to the relevance
for the users
● Top-N Accuracy
Verify whether the more relevant cards for the user are among
the Top-N
○ Precision - How many Top-N cards are relevant?
○ Recall - How many relevant cards are among the Top-N?
Offline Metrics
Cognition Trainer
Offline Evaluation workflow
Offline Evaluator
1 - Filters touchpoints from train and test sets
periods
2 - Run cognition job
3 - Gets recommendations for each user using a
SmartCanvas WebService
Users
Items
Interactions
Cognition
WebService
Pre-generated
recommendations
(Utility Matrix)
2
1
3
4
5
4 - Compare recommendations ranking with real
user interactions in test set, and calculate offline
metrics and statistical significance
5 - Stores results in BigQuery tables, which can be
accessed by a Tableau dashboard
Offline
Metrics
Database
1 - Users sessions are split among control group and variants of hybrid recommender settings
2 - User interactions and recommendation logs are recorded as touchpoints in BigQuery
3 - Online Evaluator Job calculates engagement, accuracy, and coverage metrics
4 - Results are stored in BigQuery and accessible from Tableau Dashboards
Online metrics extraction workflow
4
1
3
Online Evaluator Job
Traffic Split
(A/B Tests)
Touchpoints
bigquery
2
Online Metrics - Engagement
1. Average sessions by user
Considers only engagement of active users -
with at least one visit (session) in the period
2. Average PageViews by session
Objective: Improve User Engagement with best Recommendations
Aggregation: Daily and Weekly
3. Average session strength
where S are the sessions and w the interaction strength
4. Average session minimum navigation time
Minimum navigation is calculated taking elapsed seconds between
the first and last touchpoints in the session.
When there is only one touchpoint in the session, 60 seconds will be
considered as navigation time.
Online Metrics - Engagement
Online Metrics - Conversion
2. CTR for Personalized and Non-
Personalized recommendations
Objective: Increase Click-Through Rate (CTR) for cards
recommended to the user
1. CTR by Recommender
#interactions / #visualizations
where # visualizations assumes that all cards
were viewed till at least the last card position
(ranking order) the user has interacted in the
page,
or a minimum position of 10, considering the
user has made at least one scroll in the page on
a desktop browser.
Online Metrics - Conversion
Online Metrics - Conversion
Online Metrics - Conversion
Online Metrics - Coverage
3. General Users
Coverage
% of the users that receives at list
one personalized recommendation
during a given period
Objective: Increase the number of users and cards with
personalized recommendations
1. Users Coverage by Recommender
#unique_users_with_at_least_a_personalized_
recommendation / #unique_users_accesses
2. Cards Coverage by Recommender
#cards_with_at_least_a_personalized_recomme
ndation / #active_recommendable_cards
where #active_recommendable_cards assumes all cards that
were active (status=CREATED, approvalStatus=APPROVED) at a
given date
Online Metrics - Coverage
A/B Testing
● Recommendations embedded in the search results using
elasticsearch
● Real-time and Near real-time recommendations delivered via
message bus.
● New product focused on enterprise collaboration
Under Construction
● Cloud computing allow us to scale up and down easily
● A hybrid approach helped us to deal with a multi-domain
scenario and to balance algorithms pros and cons.
● Our evaluation framework (offline and online) allows us to assess
hypothesis, tune hyperparameters, and provides a deep
understanding of recommenders effectiveness.
Conclusions
Gilmar Souza
gilmarj@ciandt.com
Gabriel Moreira
gabrielpm@ciandt.com
Thank you!
www.smartcanvas.com
Gilmar Souza
gilmarj@ciandt.com
Gabriel Moreira
gabrielpm@ciandt.com
Thank you!
www.smartcanvas.com
RecSys Team

Contenu connexe

Tendances

DagdelenSiriwardaneY..
DagdelenSiriwardaneY..DagdelenSiriwardaneY..
DagdelenSiriwardaneY..butest
 
Machine Learning : why we should know and how it works
Machine Learning : why we should know and how it worksMachine Learning : why we should know and how it works
Machine Learning : why we should know and how it worksKevin Lee
 
First ML Experience
First ML ExperienceFirst ML Experience
First ML ExperienceAmrith Kumar
 
Qda ces 2013 toronto workshop
Qda ces 2013 toronto workshopQda ces 2013 toronto workshop
Qda ces 2013 toronto workshopCesToronto
 
ONLINE BANGLA HANDWRITTEN COMPOUND WORD RECOGNITION BASED ON SEGMENTATION
ONLINE BANGLA HANDWRITTEN COMPOUND WORD RECOGNITION BASED ON SEGMENTATIONONLINE BANGLA HANDWRITTEN COMPOUND WORD RECOGNITION BASED ON SEGMENTATION
ONLINE BANGLA HANDWRITTEN COMPOUND WORD RECOGNITION BASED ON SEGMENTATIONcscpconf
 
Data Science - Part XVII - Deep Learning & Image Processing
Data Science - Part XVII - Deep Learning & Image ProcessingData Science - Part XVII - Deep Learning & Image Processing
Data Science - Part XVII - Deep Learning & Image ProcessingDerek Kane
 

Tendances (7)

Cognitive automation
Cognitive automationCognitive automation
Cognitive automation
 
DagdelenSiriwardaneY..
DagdelenSiriwardaneY..DagdelenSiriwardaneY..
DagdelenSiriwardaneY..
 
Machine Learning : why we should know and how it works
Machine Learning : why we should know and how it worksMachine Learning : why we should know and how it works
Machine Learning : why we should know and how it works
 
First ML Experience
First ML ExperienceFirst ML Experience
First ML Experience
 
Qda ces 2013 toronto workshop
Qda ces 2013 toronto workshopQda ces 2013 toronto workshop
Qda ces 2013 toronto workshop
 
ONLINE BANGLA HANDWRITTEN COMPOUND WORD RECOGNITION BASED ON SEGMENTATION
ONLINE BANGLA HANDWRITTEN COMPOUND WORD RECOGNITION BASED ON SEGMENTATIONONLINE BANGLA HANDWRITTEN COMPOUND WORD RECOGNITION BASED ON SEGMENTATION
ONLINE BANGLA HANDWRITTEN COMPOUND WORD RECOGNITION BASED ON SEGMENTATION
 
Data Science - Part XVII - Deep Learning & Image Processing
Data Science - Part XVII - Deep Learning & Image ProcessingData Science - Part XVII - Deep Learning & Image Processing
Data Science - Part XVII - Deep Learning & Image Processing
 

En vedette

Capturing Data and Improving Outcomes for Humans and Machines Using the Inter...
Capturing Data and Improving Outcomes for Humans and Machines Using the Inter...Capturing Data and Improving Outcomes for Humans and Machines Using the Inter...
Capturing Data and Improving Outcomes for Humans and Machines Using the Inter...Altoros
 
Who Lives in Our Garden?
Who Lives in Our Garden?Who Lives in Our Garden?
Who Lives in Our Garden?Altoros
 
Kathleen Breitman at the Hyperledger Meetup
Kathleen Breitman at the Hyperledger Meetup Kathleen Breitman at the Hyperledger Meetup
Kathleen Breitman at the Hyperledger Meetup Altoros
 
Image Recognition with TensorFlow
Image Recognition with TensorFlowImage Recognition with TensorFlow
Image Recognition with TensorFlowAltoros
 
A Perfect Cloud Foundry Engineer
A Perfect Cloud Foundry EngineerA Perfect Cloud Foundry Engineer
A Perfect Cloud Foundry EngineerAltoros
 
Banking on a Blockchain
Banking on a BlockchainBanking on a Blockchain
Banking on a BlockchainAltoros
 
Introduction Machine Learning by MyLittleAdventure
Introduction Machine Learning by MyLittleAdventureIntroduction Machine Learning by MyLittleAdventure
Introduction Machine Learning by MyLittleAdventuremylittleadventure
 
Python for Data Science - Python Brasil 11 (2015)
Python for Data Science - Python Brasil 11 (2015)Python for Data Science - Python Brasil 11 (2015)
Python for Data Science - Python Brasil 11 (2015)Gabriel Moreira
 
Intro to the Distributed Version of TensorFlow
Intro to the Distributed Version of TensorFlowIntro to the Distributed Version of TensorFlow
Intro to the Distributed Version of TensorFlowAltoros
 
Predictive Analytics: Why (I)IoT Is Different
Predictive Analytics: Why (I)IoT Is DifferentPredictive Analytics: Why (I)IoT Is Different
Predictive Analytics: Why (I)IoT Is DifferentAltoros
 
Introduction to Microsoft Azure IoT
Introduction to Microsoft Azure IoTIntroduction to Microsoft Azure IoT
Introduction to Microsoft Azure IoTAltoros
 
A (Very) Gentle Introduction to Generative Adversarial Networks (a.k.a GANs)
 A (Very) Gentle Introduction to Generative Adversarial Networks (a.k.a GANs) A (Very) Gentle Introduction to Generative Adversarial Networks (a.k.a GANs)
A (Very) Gentle Introduction to Generative Adversarial Networks (a.k.a GANs)Thomas da Silva Paula
 
Azure and Predix
Azure and PredixAzure and Predix
Azure and PredixAltoros
 
Security of IoT Data: Implementing Data-Centric Security and User Access Stra...
Security of IoT Data: Implementing Data-Centric Security and User Access Stra...Security of IoT Data: Implementing Data-Centric Security and User Access Stra...
Security of IoT Data: Implementing Data-Centric Security and User Access Stra...Altoros
 
Blockchain Experiments in Trade Finance and IoT
Blockchain Experiments in Trade Finance and IoTBlockchain Experiments in Trade Finance and IoT
Blockchain Experiments in Trade Finance and IoTAltoros
 
Deep Learning with TensorFlow: Understanding Tensors, Computations Graphs, Im...
Deep Learning with TensorFlow: Understanding Tensors, Computations Graphs, Im...Deep Learning with TensorFlow: Understanding Tensors, Computations Graphs, Im...
Deep Learning with TensorFlow: Understanding Tensors, Computations Graphs, Im...Altoros
 
Learning Financial Market Data with Recurrent Autoencoders and TensorFlow
Learning Financial Market Data with Recurrent Autoencoders and TensorFlowLearning Financial Market Data with Recurrent Autoencoders and TensorFlow
Learning Financial Market Data with Recurrent Autoencoders and TensorFlowAltoros
 
Python for Data Science - TDC 2015
Python for Data Science - TDC 2015Python for Data Science - TDC 2015
Python for Data Science - TDC 2015Gabriel Moreira
 
Hyperledger Sawtooth Lake Intel's OSS Contribution to Enterprise Blockchain
Hyperledger Sawtooth Lake Intel's OSS Contribution to Enterprise BlockchainHyperledger Sawtooth Lake Intel's OSS Contribution to Enterprise Blockchain
Hyperledger Sawtooth Lake Intel's OSS Contribution to Enterprise BlockchainAltoros
 

En vedette (20)

Capturing Data and Improving Outcomes for Humans and Machines Using the Inter...
Capturing Data and Improving Outcomes for Humans and Machines Using the Inter...Capturing Data and Improving Outcomes for Humans and Machines Using the Inter...
Capturing Data and Improving Outcomes for Humans and Machines Using the Inter...
 
Who Lives in Our Garden?
Who Lives in Our Garden?Who Lives in Our Garden?
Who Lives in Our Garden?
 
Kathleen Breitman at the Hyperledger Meetup
Kathleen Breitman at the Hyperledger Meetup Kathleen Breitman at the Hyperledger Meetup
Kathleen Breitman at the Hyperledger Meetup
 
Image Recognition with TensorFlow
Image Recognition with TensorFlowImage Recognition with TensorFlow
Image Recognition with TensorFlow
 
Python for Data Science
Python for Data SciencePython for Data Science
Python for Data Science
 
A Perfect Cloud Foundry Engineer
A Perfect Cloud Foundry EngineerA Perfect Cloud Foundry Engineer
A Perfect Cloud Foundry Engineer
 
Banking on a Blockchain
Banking on a BlockchainBanking on a Blockchain
Banking on a Blockchain
 
Introduction Machine Learning by MyLittleAdventure
Introduction Machine Learning by MyLittleAdventureIntroduction Machine Learning by MyLittleAdventure
Introduction Machine Learning by MyLittleAdventure
 
Python for Data Science - Python Brasil 11 (2015)
Python for Data Science - Python Brasil 11 (2015)Python for Data Science - Python Brasil 11 (2015)
Python for Data Science - Python Brasil 11 (2015)
 
Intro to the Distributed Version of TensorFlow
Intro to the Distributed Version of TensorFlowIntro to the Distributed Version of TensorFlow
Intro to the Distributed Version of TensorFlow
 
Predictive Analytics: Why (I)IoT Is Different
Predictive Analytics: Why (I)IoT Is DifferentPredictive Analytics: Why (I)IoT Is Different
Predictive Analytics: Why (I)IoT Is Different
 
Introduction to Microsoft Azure IoT
Introduction to Microsoft Azure IoTIntroduction to Microsoft Azure IoT
Introduction to Microsoft Azure IoT
 
A (Very) Gentle Introduction to Generative Adversarial Networks (a.k.a GANs)
 A (Very) Gentle Introduction to Generative Adversarial Networks (a.k.a GANs) A (Very) Gentle Introduction to Generative Adversarial Networks (a.k.a GANs)
A (Very) Gentle Introduction to Generative Adversarial Networks (a.k.a GANs)
 
Azure and Predix
Azure and PredixAzure and Predix
Azure and Predix
 
Security of IoT Data: Implementing Data-Centric Security and User Access Stra...
Security of IoT Data: Implementing Data-Centric Security and User Access Stra...Security of IoT Data: Implementing Data-Centric Security and User Access Stra...
Security of IoT Data: Implementing Data-Centric Security and User Access Stra...
 
Blockchain Experiments in Trade Finance and IoT
Blockchain Experiments in Trade Finance and IoTBlockchain Experiments in Trade Finance and IoT
Blockchain Experiments in Trade Finance and IoT
 
Deep Learning with TensorFlow: Understanding Tensors, Computations Graphs, Im...
Deep Learning with TensorFlow: Understanding Tensors, Computations Graphs, Im...Deep Learning with TensorFlow: Understanding Tensors, Computations Graphs, Im...
Deep Learning with TensorFlow: Understanding Tensors, Computations Graphs, Im...
 
Learning Financial Market Data with Recurrent Autoencoders and TensorFlow
Learning Financial Market Data with Recurrent Autoencoders and TensorFlowLearning Financial Market Data with Recurrent Autoencoders and TensorFlow
Learning Financial Market Data with Recurrent Autoencoders and TensorFlow
 
Python for Data Science - TDC 2015
Python for Data Science - TDC 2015Python for Data Science - TDC 2015
Python for Data Science - TDC 2015
 
Hyperledger Sawtooth Lake Intel's OSS Contribution to Enterprise Blockchain
Hyperledger Sawtooth Lake Intel's OSS Contribution to Enterprise BlockchainHyperledger Sawtooth Lake Intel's OSS Contribution to Enterprise Blockchain
Hyperledger Sawtooth Lake Intel's OSS Contribution to Enterprise Blockchain
 

Similaire à lsrs15_ciandt

Epam BI - Near Realtime Marketing Support System
Epam BI - Near Realtime Marketing Support SystemEpam BI - Near Realtime Marketing Support System
Epam BI - Near Realtime Marketing Support SystemDmitry Tolpeko
 
Productionalize content recommendation engine
Productionalize content recommendation engine Productionalize content recommendation engine
Productionalize content recommendation engine Kim Ming Teh
 
Vijayasarathy_Ranganathan-Portfolio-Apr2022.pdf
Vijayasarathy_Ranganathan-Portfolio-Apr2022.pdfVijayasarathy_Ranganathan-Portfolio-Apr2022.pdf
Vijayasarathy_Ranganathan-Portfolio-Apr2022.pdfVijayasarathy Ranganathan
 
Microsoft Dynamics 365 for Customer Service
Microsoft Dynamics 365 for Customer ServiceMicrosoft Dynamics 365 for Customer Service
Microsoft Dynamics 365 for Customer ServiceDynamics Square
 
Matthias Bettag - Challenges for each the multi-channel, multi-device and mul...
Matthias Bettag - Challenges for each the multi-channel, multi-device and mul...Matthias Bettag - Challenges for each the multi-channel, multi-device and mul...
Matthias Bettag - Challenges for each the multi-channel, multi-device and mul...Marketing Festival
 
Crowdtesting 2.0 - From Anonymous Crowd to Target Audience & Customer Community
Crowdtesting 2.0 - From Anonymous Crowd to Target Audience & Customer CommunityCrowdtesting 2.0 - From Anonymous Crowd to Target Audience & Customer Community
Crowdtesting 2.0 - From Anonymous Crowd to Target Audience & Customer CommunityCrowdsourcing Week
 
Time-to-Event Models, presented by DataSong and Revolution Analytics
Time-to-Event Models, presented by DataSong and Revolution AnalyticsTime-to-Event Models, presented by DataSong and Revolution Analytics
Time-to-Event Models, presented by DataSong and Revolution AnalyticsRevolution Analytics
 
Connecting the "dots" around your Consumers
Connecting the "dots" around your ConsumersConnecting the "dots" around your Consumers
Connecting the "dots" around your ConsumersDigital Air Strike
 
Planning For The Personalization Journey: From Empathy to Engagement
 Planning For The Personalization Journey: From Empathy to Engagement Planning For The Personalization Journey: From Empathy to Engagement
Planning For The Personalization Journey: From Empathy to EngagementRachel Wandishin
 
Tools for customer engagement
Tools for customer engagement Tools for customer engagement
Tools for customer engagement Ankit Chaudhary
 
User definition and user journey poc ux with marketing approach
User definition and user journey poc ux with marketing approachUser definition and user journey poc ux with marketing approach
User definition and user journey poc ux with marketing approachSushmita Dutt
 
Boosting Personalization In SaaS Using Machine Learning
Boosting Personalization  In SaaS Using Machine LearningBoosting Personalization  In SaaS Using Machine Learning
Boosting Personalization In SaaS Using Machine LearningGlorium Tech
 
A Modern Digital Experience Platform
A Modern Digital Experience PlatformA Modern Digital Experience Platform
A Modern Digital Experience PlatformPhase2
 
Tarun datascientist affle
Tarun datascientist affleTarun datascientist affle
Tarun datascientist affleTarun Aditya
 
Customer Experience Management
Customer Experience ManagementCustomer Experience Management
Customer Experience ManagementTigerGraph
 
Boosting Personalization In SaaS Using Machine Learning.pdf
Boosting Personalization  In SaaS Using Machine Learning.pdfBoosting Personalization  In SaaS Using Machine Learning.pdf
Boosting Personalization In SaaS Using Machine Learning.pdfReza Rahimi
 

Similaire à lsrs15_ciandt (20)

Epam BI - Near Realtime Marketing Support System
Epam BI - Near Realtime Marketing Support SystemEpam BI - Near Realtime Marketing Support System
Epam BI - Near Realtime Marketing Support System
 
Productionalize content recommendation engine
Productionalize content recommendation engine Productionalize content recommendation engine
Productionalize content recommendation engine
 
Analytics in Online Retail
Analytics in Online RetailAnalytics in Online Retail
Analytics in Online Retail
 
ROI on Personalized Experiences - Greg Kihlstrom, GK5A
ROI on Personalized Experiences - Greg Kihlstrom, GK5AROI on Personalized Experiences - Greg Kihlstrom, GK5A
ROI on Personalized Experiences - Greg Kihlstrom, GK5A
 
Vijayasarathy_Ranganathan-Portfolio-Apr2022.pdf
Vijayasarathy_Ranganathan-Portfolio-Apr2022.pdfVijayasarathy_Ranganathan-Portfolio-Apr2022.pdf
Vijayasarathy_Ranganathan-Portfolio-Apr2022.pdf
 
Microsoft Dynamics 365 for Customer Service
Microsoft Dynamics 365 for Customer ServiceMicrosoft Dynamics 365 for Customer Service
Microsoft Dynamics 365 for Customer Service
 
Cam specialist-unit-web-analytics-and-social-media
Cam specialist-unit-web-analytics-and-social-mediaCam specialist-unit-web-analytics-and-social-media
Cam specialist-unit-web-analytics-and-social-media
 
Matthias Bettag - Challenges for each the multi-channel, multi-device and mul...
Matthias Bettag - Challenges for each the multi-channel, multi-device and mul...Matthias Bettag - Challenges for each the multi-channel, multi-device and mul...
Matthias Bettag - Challenges for each the multi-channel, multi-device and mul...
 
Crowdtesting 2.0 - From Anonymous Crowd to Target Audience & Customer Community
Crowdtesting 2.0 - From Anonymous Crowd to Target Audience & Customer CommunityCrowdtesting 2.0 - From Anonymous Crowd to Target Audience & Customer Community
Crowdtesting 2.0 - From Anonymous Crowd to Target Audience & Customer Community
 
Time-to-Event Models, presented by DataSong and Revolution Analytics
Time-to-Event Models, presented by DataSong and Revolution AnalyticsTime-to-Event Models, presented by DataSong and Revolution Analytics
Time-to-Event Models, presented by DataSong and Revolution Analytics
 
Gartner-Digital-Experience-Platforms-MQ-q118
Gartner-Digital-Experience-Platforms-MQ-q118Gartner-Digital-Experience-Platforms-MQ-q118
Gartner-Digital-Experience-Platforms-MQ-q118
 
Connecting the "dots" around your Consumers
Connecting the "dots" around your ConsumersConnecting the "dots" around your Consumers
Connecting the "dots" around your Consumers
 
Planning For The Personalization Journey: From Empathy to Engagement
 Planning For The Personalization Journey: From Empathy to Engagement Planning For The Personalization Journey: From Empathy to Engagement
Planning For The Personalization Journey: From Empathy to Engagement
 
Tools for customer engagement
Tools for customer engagement Tools for customer engagement
Tools for customer engagement
 
User definition and user journey poc ux with marketing approach
User definition and user journey poc ux with marketing approachUser definition and user journey poc ux with marketing approach
User definition and user journey poc ux with marketing approach
 
Boosting Personalization In SaaS Using Machine Learning
Boosting Personalization  In SaaS Using Machine LearningBoosting Personalization  In SaaS Using Machine Learning
Boosting Personalization In SaaS Using Machine Learning
 
A Modern Digital Experience Platform
A Modern Digital Experience PlatformA Modern Digital Experience Platform
A Modern Digital Experience Platform
 
Tarun datascientist affle
Tarun datascientist affleTarun datascientist affle
Tarun datascientist affle
 
Customer Experience Management
Customer Experience ManagementCustomer Experience Management
Customer Experience Management
 
Boosting Personalization In SaaS Using Machine Learning.pdf
Boosting Personalization  In SaaS Using Machine Learning.pdfBoosting Personalization  In SaaS Using Machine Learning.pdf
Boosting Personalization In SaaS Using Machine Learning.pdf
 

Plus de Gabriel Moreira

[Phd Thesis Defense] CHAMELEON: A Deep Learning Meta-Architecture for News Re...
[Phd Thesis Defense] CHAMELEON: A Deep Learning Meta-Architecture for News Re...[Phd Thesis Defense] CHAMELEON: A Deep Learning Meta-Architecture for News Re...
[Phd Thesis Defense] CHAMELEON: A Deep Learning Meta-Architecture for News Re...Gabriel Moreira
 
PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...
PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...
PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...Gabriel Moreira
 
Deep Learning for Recommender Systems @ TDC SP 2019
Deep Learning for Recommender Systems @ TDC SP 2019Deep Learning for Recommender Systems @ TDC SP 2019
Deep Learning for Recommender Systems @ TDC SP 2019Gabriel Moreira
 
PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...
PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...
PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...Gabriel Moreira
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data ScienceGabriel Moreira
 
Sistemas de Recomendação sem Enrolação
Sistemas de Recomendação sem Enrolação Sistemas de Recomendação sem Enrolação
Sistemas de Recomendação sem Enrolação Gabriel Moreira
 
Deep Recommender Systems - PAPIs.io LATAM 2018
Deep Recommender Systems - PAPIs.io LATAM 2018Deep Recommender Systems - PAPIs.io LATAM 2018
Deep Recommender Systems - PAPIs.io LATAM 2018Gabriel Moreira
 
CI&T Tech Summit 2017 - Machine Learning para Sistemas de Recomendação
CI&T Tech Summit 2017 - Machine Learning para Sistemas de RecomendaçãoCI&T Tech Summit 2017 - Machine Learning para Sistemas de Recomendação
CI&T Tech Summit 2017 - Machine Learning para Sistemas de RecomendaçãoGabriel Moreira
 
Feature Engineering - Getting most out of data for predictive models - TDC 2017
Feature Engineering - Getting most out of data for predictive models - TDC 2017Feature Engineering - Getting most out of data for predictive models - TDC 2017
Feature Engineering - Getting most out of data for predictive models - TDC 2017Gabriel Moreira
 
Feature Engineering - Getting most out of data for predictive models
Feature Engineering - Getting most out of data for predictive modelsFeature Engineering - Getting most out of data for predictive models
Feature Engineering - Getting most out of data for predictive modelsGabriel Moreira
 
Using Neural Networks and 3D sensors data to model LIBRAS gestures recognitio...
Using Neural Networks and 3D sensors data to model LIBRAS gestures recognitio...Using Neural Networks and 3D sensors data to model LIBRAS gestures recognitio...
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
Developing GeoGames for Education with Kinect and Android for ArcGIS RuntimeDeveloping GeoGames for Education with Kinect and Android for ArcGIS Runtime
Developing GeoGames for Education with Kinect and Android for ArcGIS RuntimeGabriel Moreira
 
Dojo Imagem de Android - 19/06/2012
Dojo Imagem de Android - 19/06/2012Dojo Imagem de Android - 19/06/2012
Dojo Imagem de Android - 19/06/2012Gabriel Moreira
 
Agile Testing e outros amendoins
Agile Testing e outros amendoinsAgile Testing e outros amendoins
Agile Testing e outros amendoinsGabriel Moreira
 
ArcGIS Runtime For Android
ArcGIS Runtime For AndroidArcGIS Runtime For Android
ArcGIS Runtime For AndroidGabriel Moreira
 
EARLY-FIX: Um Framework para Predição de Manutenção Corretiva de Software uti...
EARLY-FIX: Um Framework para Predição de Manutenção Corretiva de Software uti...EARLY-FIX: Um Framework para Predição de Manutenção Corretiva de Software uti...
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...
Continuous Inspection - An effective approch towards Software Quality Product...Continuous Inspection - An effective approch towards Software Quality Product...
Continuous Inspection - An effective approch towards Software Quality Product...Gabriel Moreira
 
An Investigation Of EXtreme Programming Practices
An Investigation Of EXtreme Programming PracticesAn Investigation Of EXtreme Programming Practices
An Investigation Of EXtreme Programming PracticesGabriel Moreira
 
METACOM – Uma análise de correlação entre métricas de produto e propensão à m...
METACOM – Uma análise de correlação entre métricas de produto e propensão à m...METACOM – Uma análise de correlação entre métricas de produto e propensão à m...
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...
Software Product Measurement and Analysis in a Continuous Integration Environ...Software Product Measurement and Analysis in a Continuous Integration Environ...
Software Product Measurement and Analysis in a Continuous Integration Environ...Gabriel Moreira
 

Plus de Gabriel Moreira (20)

[Phd Thesis Defense] CHAMELEON: A Deep Learning Meta-Architecture for News Re...
[Phd Thesis Defense] CHAMELEON: A Deep Learning Meta-Architecture for News Re...[Phd Thesis Defense] CHAMELEON: A Deep Learning Meta-Architecture for News Re...
[Phd Thesis Defense] CHAMELEON: A Deep Learning Meta-Architecture for News Re...
 
PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...
PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...
PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...
 
Deep Learning for Recommender Systems @ TDC SP 2019
Deep Learning for Recommender Systems @ TDC SP 2019Deep Learning for Recommender Systems @ TDC SP 2019
Deep Learning for Recommender Systems @ TDC SP 2019
 
PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...
PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...
PAPIs LATAM 2019 - Training and deploying ML models with Kubeflow and TensorF...
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Sistemas de Recomendação sem Enrolação
Sistemas de Recomendação sem Enrolação Sistemas de Recomendação sem Enrolação
Sistemas de Recomendação sem Enrolação
 
Deep Recommender Systems - PAPIs.io LATAM 2018
Deep Recommender Systems - PAPIs.io LATAM 2018Deep Recommender Systems - PAPIs.io LATAM 2018
Deep Recommender Systems - PAPIs.io LATAM 2018
 
CI&T Tech Summit 2017 - Machine Learning para Sistemas de Recomendação
CI&T Tech Summit 2017 - Machine Learning para Sistemas de RecomendaçãoCI&T Tech Summit 2017 - Machine Learning para Sistemas de Recomendação
CI&T Tech Summit 2017 - Machine Learning para Sistemas de Recomendação
 
Feature Engineering - Getting most out of data for predictive models - TDC 2017
Feature Engineering - Getting most out of data for predictive models - TDC 2017Feature Engineering - Getting most out of data for predictive models - TDC 2017
Feature Engineering - Getting most out of data for predictive models - TDC 2017
 
Feature Engineering - Getting most out of data for predictive models
Feature Engineering - Getting most out of data for predictive modelsFeature Engineering - Getting most out of data for predictive models
Feature Engineering - Getting most out of data for predictive models
 
Using Neural Networks and 3D sensors data to model LIBRAS gestures recognitio...
Using Neural Networks and 3D sensors data to model LIBRAS gestures recognitio...Using Neural Networks and 3D sensors data to model LIBRAS gestures recognitio...
Using Neural Networks and 3D sensors data to model LIBRAS gestures recognitio...
 
Developing GeoGames for Education with Kinect and Android for ArcGIS Runtime
Developing GeoGames for Education with Kinect and Android for ArcGIS RuntimeDeveloping GeoGames for Education with Kinect and Android for ArcGIS Runtime
Developing GeoGames for Education with Kinect and Android for ArcGIS Runtime
 
Dojo Imagem de Android - 19/06/2012
Dojo Imagem de Android - 19/06/2012Dojo Imagem de Android - 19/06/2012
Dojo Imagem de Android - 19/06/2012
 
Agile Testing e outros amendoins
Agile Testing e outros amendoinsAgile Testing e outros amendoins
Agile Testing e outros amendoins
 
ArcGIS Runtime For Android
ArcGIS Runtime For AndroidArcGIS Runtime For Android
ArcGIS Runtime For Android
 
EARLY-FIX: Um Framework para Predição de Manutenção Corretiva de Software uti...
EARLY-FIX: Um Framework para Predição de Manutenção Corretiva de Software uti...EARLY-FIX: Um Framework para Predição de Manutenção Corretiva de Software uti...
EARLY-FIX: Um Framework para Predição de Manutenção Corretiva de Software uti...
 
Continuous Inspection - An effective approch towards Software Quality Product...
Continuous Inspection - An effective approch towards Software Quality Product...Continuous Inspection - An effective approch towards Software Quality Product...
Continuous Inspection - An effective approch towards Software Quality Product...
 
An Investigation Of EXtreme Programming Practices
An Investigation Of EXtreme Programming PracticesAn Investigation Of EXtreme Programming Practices
An Investigation Of EXtreme Programming Practices
 
METACOM – Uma análise de correlação entre métricas de produto e propensão à m...
METACOM – Uma análise de correlação entre métricas de produto e propensão à m...METACOM – Uma análise de correlação entre métricas de produto e propensão à m...
METACOM – Uma análise de correlação entre métricas de produto e propensão à m...
 
Software Product Measurement and Analysis in a Continuous Integration Environ...
Software Product Measurement and Analysis in a Continuous Integration Environ...Software Product Measurement and Analysis in a Continuous Integration Environ...
Software Product Measurement and Analysis in a Continuous Integration Environ...
 

lsrs15_ciandt

  • 1. Smart Canvas® Hybrid Recommender System Architecture and Evaluation Gilmar Souza Gabriel Moreira
  • 2. We are global with people in Brazil, USA, Europe, Australia, Japan and China Our excellence has been recognized by the market with awards since our foundation in 1995 We are truly multi-cultural, an army of over 2000 talented employees and their great stories
  • 3. Strong presence in strategic regions USA • Atlanta • Philadelphia • Houston • San Francisco • Somerset NJ • New York Brazil • Campinas (headquarters) • Belo Horizonte • Rio de Janeiro • São Paulo UK • London China • Ningbo • Shanghai Japan • Tokyo 3 Australia • Sydney
  • 4.
  • 5. Smart Canvas is a platform that delivers web and mobile user experiences using machine learning algorithms.
  • 6. Smart CanvasReordered Stacks Desktop mobile sites and mobile apps Card deck (Chronological content inventory) Big Picture: 1 aggregate -> 2. cardify -> 3. curate Your environment (internal and external) Public Data RSS Social Networks All of your portals, apps and people 3rd party systems through custom connections 1 3 2 metrics and insights Algorithms
  • 8. ● Cloud-based SaaS, hosted on Google ● Multi-tenant ● Used in different domains (websites, intranets, collaboration portals) ● Content produced by the users or ingested from external services. ● Hybrid recommender system ● Implicit and explicit feedback (touchpoints) Some Context
  • 9. Following concepts of material design, presents content as cards and allow like, dislike, pins and share interactions. Curation merges search relevance with personalized recommendations. Smart Canvas User Interface
  • 10. Websites: Ancar Ivanhoe Shopping Malls Digital strategy revamp
  • 11. Collaboration Portal: Whirpool Winning Workplace Transformation The place to learn about Google Apps
  • 12. Collaboration Portal: SulAmérica Seguros: Innovation Portal Capturing ideas and inspiration to overcome new market challenges
  • 13. Collaboration Portal: Motorola Smart Analytics Portal Reports repository reimagined Designing for Choice: The Making of the Wood-Back Moto X [VIDEO]New Year, New You Publisher Name 30 december 2014 Get to Know Rhea Jeong, a Motorola Designer of Moto Hint Search Analytics 999 999 999 Inside Motorola Inside Motorola Inside Motorola Inside Motorola 999 999 999 999 999 999 999 999 999 ... ... Smart Analytics Moto X Device Activations: Latin America North source.com Customer Satisfaction 4Q2014 source.com Model Sales per region source.com All Number of support calls per region source.com What's new Communities AnalyticsPeople ToolsEvents Smart Analytics Inside Motorola 999 999 999 Number of support calls per region source.com
  • 14. ● 23 Tenants (customer portals). ● 33K cards ingested. ● 8.5M users (anonymous and logged). ● 30M touchpoints (user events) captured. ● 14M recommendations provided. ● 300 ms average recommendation response time. Last 12 months In Numbers
  • 16. Cards Touchpoints Users Data Layer Batch Layer Recommenders Offline Components Similarity Algorithms Serving Layer Recommenders Online Components Hybrid Composition Recommendation Layers
  • 17. Search Engine search by terms. (context: url, locale device and person id) cards satisfying the search criteria Dynamic Recommender Strategy Recommenders cards reordered by relevance. Recommenders are created and configured based the context pattern (locale, device, time) 1 2 3 4 5 search results curated by personalized recommenders 6 user clickstream (touchpoints) is used to refine recommendations Recommendation Process
  • 18. Online Serving Google App Engine (Java) Batch Processing Google Compute Engine Google Cloud Storage Dynamic Recommender Factory Recommenders HDFS Memcache On-demand Jobs Datastore (NoSQL) The recommender system is implemented on Google Cloud Platform and Hadoop Ecosystem to ensure its scalability and performance at large. Pig Mahout Python Smart Canvas Users Technology Components
  • 20. HYBRID RECOMMENDER STRATEGY IS AN AGGREGATION OF THESE ALGORITHMS Personalized USER-BASED CF - Find similar users and recommend cards those users liked CONTENT-BASED FILTERING - Recommends cards with content similar to the user's preference vector (weighted average of the most relevant words in the content of the cards user interacted with). ITEM-ITEM FREQUENCY - Recommends X cards frequently read together with the last Y cards user has read. DISLIKE FILTER - Reduces relevance of cards user has disliked Non-Personalized POPULARITY - Recommends most popular cards, decreasing its relevance as them become older RECENCY - Recommends most recent cards FIXED PACK - Human curation, where cards are fixed on top by the admin users (marketers) ESSENTIALS PACK - Recommends a defined set of cards for new users (< Z interactions) Recommender Algorithms Overview
  • 22. ● Normalized Discounted Cumulative Gain (nDCG) Verify whether the cards are ranked accordingly to the relevance for the users ● Top-N Accuracy Verify whether the more relevant cards for the user are among the Top-N ○ Precision - How many Top-N cards are relevant? ○ Recall - How many relevant cards are among the Top-N? Offline Metrics
  • 23. Cognition Trainer Offline Evaluation workflow Offline Evaluator 1 - Filters touchpoints from train and test sets periods 2 - Run cognition job 3 - Gets recommendations for each user using a SmartCanvas WebService Users Items Interactions Cognition WebService Pre-generated recommendations (Utility Matrix) 2 1 3 4 5 4 - Compare recommendations ranking with real user interactions in test set, and calculate offline metrics and statistical significance 5 - Stores results in BigQuery tables, which can be accessed by a Tableau dashboard Offline Metrics Database
  • 24. 1 - Users sessions are split among control group and variants of hybrid recommender settings 2 - User interactions and recommendation logs are recorded as touchpoints in BigQuery 3 - Online Evaluator Job calculates engagement, accuracy, and coverage metrics 4 - Results are stored in BigQuery and accessible from Tableau Dashboards Online metrics extraction workflow 4 1 3 Online Evaluator Job Traffic Split (A/B Tests) Touchpoints bigquery 2
  • 25. Online Metrics - Engagement 1. Average sessions by user Considers only engagement of active users - with at least one visit (session) in the period 2. Average PageViews by session Objective: Improve User Engagement with best Recommendations Aggregation: Daily and Weekly 3. Average session strength where S are the sessions and w the interaction strength 4. Average session minimum navigation time Minimum navigation is calculated taking elapsed seconds between the first and last touchpoints in the session. When there is only one touchpoint in the session, 60 seconds will be considered as navigation time.
  • 26. Online Metrics - Engagement
  • 27. Online Metrics - Conversion 2. CTR for Personalized and Non- Personalized recommendations Objective: Increase Click-Through Rate (CTR) for cards recommended to the user 1. CTR by Recommender #interactions / #visualizations where # visualizations assumes that all cards were viewed till at least the last card position (ranking order) the user has interacted in the page, or a minimum position of 10, considering the user has made at least one scroll in the page on a desktop browser.
  • 28. Online Metrics - Conversion
  • 29. Online Metrics - Conversion
  • 30. Online Metrics - Conversion
  • 31. Online Metrics - Coverage 3. General Users Coverage % of the users that receives at list one personalized recommendation during a given period Objective: Increase the number of users and cards with personalized recommendations 1. Users Coverage by Recommender #unique_users_with_at_least_a_personalized_ recommendation / #unique_users_accesses 2. Cards Coverage by Recommender #cards_with_at_least_a_personalized_recomme ndation / #active_recommendable_cards where #active_recommendable_cards assumes all cards that were active (status=CREATED, approvalStatus=APPROVED) at a given date
  • 32. Online Metrics - Coverage
  • 34. ● Recommendations embedded in the search results using elasticsearch ● Real-time and Near real-time recommendations delivered via message bus. ● New product focused on enterprise collaboration Under Construction
  • 35. ● Cloud computing allow us to scale up and down easily ● A hybrid approach helped us to deal with a multi-domain scenario and to balance algorithms pros and cons. ● Our evaluation framework (offline and online) allows us to assess hypothesis, tune hyperparameters, and provides a deep understanding of recommenders effectiveness. Conclusions