SlideShare a Scribd company logo
1 of 91
Download to read offline
Personalized review
recommendation
Part 2
M.Chelliah and Sudeshna Sarkar
1
Deep Learning in Review Recommendation
2
Feed forward network
● An artificial neuron
β—‹ Receives inputs
β—‹ Summation followed by a nonlinear activation.
β—‹ Produces an output for next layer neurons
● Weights learnt through back propagation
Source:https://en.wikipedia.org/wiki/Connectionism
MultiLayer Perceptron
xn
x2
x1
am
a1
o output
x1
x2
xn
Hidden neuron
z1 a1= g(z1)
w11
w12
w13
x W z|a
sigmoid tanh ReLU
gradient ~ 0
xn
x2
x1
x W[1] z[1]|a[1] W[2] output
oK
o2
o1
softmax
MultiLayer Perceptron - loss functions
Learn weights by minimizing the loss
DL in Recommendation Systems
● Deep learning based models achieved the best performances and is a promising tool
for recommender problems
● Representation plays an important role in Recommender Systems. Multiple sources
of data may be leveraged for rich representation
β—‹ Representation of users and items
β—‹ Transactions
β—‹ Content: Product description, Metadata, Reviews, Product Image
β—‹ User demography
β—‹ Product ontology
6
Using all embeddings
β€’ Multiple ways of learning/combining
representations
β€’ Example 1: (Adapted from one experiment at
Flipkart Recommender System)
β€’ Concatenate different pre-trained
embeddings into a single vector
β€’ Learn a simple Logistic Regression
OR
β€’ Feed into another ANN with softmax
output (corresponding to purchase or
clicks)
β€’ Example 2: Joint learning of the embeddings
β€’ Similar products - Locality Sensitive Hashing
(LSH) on embeddings
CF embedding Image embedding Text embedding
Hidden layer
Output layer
Representation of Items, Users, Reviews
Representation of items and/or
users is necessary for getting a
recommender system to work.
β€’ One-hot representation
β€’ Embedding as vectors: pre-
trained
β€’ Embedding can be learned on
the task
β€’ Item Representation
1. Based on item interaction
sequences and item properties
– Prod2vec, Meta Prod2vec etc
2. Based on user-item interaction
β€’ Neural collaborative filtering: Model
user-item interactions
3. User and item information
(content)
β€’ Review representation
β€’ User representation
Product Embedding
Prod2vec or Item2vec : Product embedding
β€’ Based on item-item co-occurrence from transaction sequences
co-purhased products)
β€’ Uses method of word embedding: low-dimensional, distributed
embeddings of words based on word sequences in text documents
1. Barkan, Oren, and Noam Koenigstein. "Item2vec: neural item embedding for collaborative filtering."
Machine Learning for Signal Processing (MLSP), 2016 IEEE 26th International Workshop on. IEEE,
2016.
2. Grbovic, Mihajlo, et al. "E-commerce in your inbox: Product recommendations at
scale." Proceedings of the 21th ACM SIGKDD International Conference on Knowledge Discovery and
Data Mining. ACM, 2015.
β€’ Representation of words
``Similar words have similar contexts”
1. CBOW: P Word Context
2. Skipgram: P(Context|Word)
Word2vec
Input Projection Output
Input Projection Output
Skipgram Model
β€’ Input: Central word 𝑀𝑀𝑑𝑑
β€’ Output: Words in its context: π’˜π’˜πœπœπœπœπœπœ
π‘€π‘€π‘‘π‘‘βˆ’π‘π‘, … , π‘€π‘€π‘‘π‘‘βˆ’1 , 𝑀𝑀𝑑𝑑+1, … , 𝑀𝑀𝑑𝑑+𝑐𝑐
β€’ Each input word represented by a 1-hot
encoding of size V
Source Text:
Deep Learning attempts to learn multiple
levels of representation from data.
Input output pairs :
Positive samples:
β€’ (representation, levels)
β€’ (representation, of)
β€’ (representation, from)
β€’ (representation, data)
Negative samples:
β€’ (representation, x)
[x: all other words except the 4
positive]
𝑀𝑀𝑑𝑑
𝑀𝑀𝑑𝑑+1
𝑀𝑀𝑑𝑑+𝑐𝑐
π‘€π‘€π‘‘π‘‘βˆ’π‘π‘
π‘€π‘€π‘‘π‘‘βˆ’1
INPUT PROJECTION OUTPUT
Prod2vec
Use word2vec on co-purchased products
Purchase sequence of user u
𝑝𝑝𝑒𝑒𝑒, 𝑝𝑝𝑒𝑒𝑒, … , 𝑝𝑝𝑒𝑒𝑒𝑒
Skipgram applied on transaction sequence
𝑝𝑝𝑑𝑑
𝑝𝑝𝑑𝑑+1
𝑝𝑝𝑑𝑑+𝑐𝑐
π‘π‘π‘‘π‘‘βˆ’π‘π‘
π‘π‘π‘‘π‘‘βˆ’1
Input Projection Output
Positive samples: Negative
samples
𝑝𝑝𝑒𝑒,𝑑𝑑, 𝑝𝑝𝑒𝑒,π‘‘π‘‘βˆ’π‘π‘
𝑝𝑝𝑒𝑒,𝑑𝑑, 𝑝𝑝𝑒𝑒,π‘‘π‘‘βˆ’1
𝑝𝑝𝑒𝑒,𝑑𝑑, 𝑝𝑝𝑒𝑒,𝑑𝑑+1
𝑝𝑝𝑒𝑒,𝑑𝑑, 𝑝𝑝𝑒𝑒,𝑑𝑑+𝑐𝑐
𝒑𝒑𝒕𝒕, 𝒑𝒑𝒄𝒄𝒄𝒄𝒄𝒄
𝑝𝑝𝑒𝑒,𝑑𝑑, p
p is any product
other than 𝑝𝑝𝑐𝑐𝑐𝑐𝑐𝑐
Extensions of prod2vec
1. Meta prod2vec
β€’ Use product metadata in
addition to transaction
sequence
– Category, Brand, Description, etc
– Embedded metadata added both
to input and context
2. Several other *2vec models
𝑝𝑝𝑑𝑑
𝑝𝑝𝑑𝑑+1
𝑀𝑀𝑑𝑑+1
π‘π‘π‘‘π‘‘βˆ’1
Input Projection Output
𝑀𝑀𝑑𝑑
π‘€π‘€π‘‘π‘‘βˆ’1
π‘Šπ‘Šπ‘ƒπ‘ƒ
π‘Šπ‘Šπ‘€π‘€
Review Representation
● Word2vec for word representation (concept representation)
● Document or paragraph representation
● Averaging or summing of word vectors
● Paragraph or document vector using CNN, RNN, etc
17
Convolution for Text
this
sequence
of
word
vectors
represents
a
text
𝑛𝑛 Γ— π‘˜π‘˜ representation of sentence
𝑐𝑐1
𝑐𝑐2
Filter of size 2 Γ— π‘˜π‘˜
Feature map
of 1 filter
π‘₯π‘₯1
π‘₯π‘₯2
π‘₯π‘₯𝑛𝑛
π‘₯π‘₯3
𝑐𝑐𝑖𝑖 = 𝑓𝑓 𝑀𝑀 βˆ™ π‘₯π‘₯𝑖𝑖:𝑖𝑖+β„Žβˆ’1 + 𝑏𝑏
CNN for Text
this
sequence
of
word
vectors
represents
a
text
𝑛𝑛 Γ— π‘˜π‘˜ representation of sentence
Feature maps
of 𝑑𝑑 filters
…….…
π‘₯π‘₯1
π‘₯π‘₯2
π‘₯π‘₯𝑛𝑛
π‘₯π‘₯3
CNN for Text: Kim’s CNN
Kim, Yoon. "Convolutional neural networks for sentence classification." arXiv
preprint arXiv:1408.5882 (2014).
Kim’s CNN
● Word embedding
● Padding to size n
Dropout
Rescale the weight
vectors of each class to
fixed number s
1. Convolution layer
2. Max-pooling layer
𝑐𝑐̂ = max 𝑐𝑐
3. Fully connected layer with
softmax output
Dynamic k-max pooling
Handles sentences of varying length
k is a function of the sentence
length and network depth
π‘˜π‘˜π‘™π‘™ = max π‘˜π‘˜π‘‘π‘‘π‘‘π‘‘π‘‘π‘‘,
𝐿𝐿 βˆ’ 𝑙𝑙
𝐿𝐿
βˆ™ 𝑠𝑠
π‘™π‘™οΌšcurrent convolution layer
𝐿𝐿:Number of convolutional layers
𝑠𝑠: Sentence length
π‘˜π‘˜π‘‘π‘‘π‘‘π‘‘π‘‘π‘‘οΌšfixed pooling parameter for the
topmost convolutional layer
Neural Network for Modeling
Sentences” by Nal Kalchbrenner, Edward
Grefenstette, Phil Blunsom arXiv, 2014
CNN to find Document Latent Vector
β€’ CNN Architecture to generate
document latent vector.
23
Item Text
Review, etc.
Convolution
Maxpooling
.
.
..
.
..
.
..
.
.
.
.
..
.
..
.
..
.
.
.
.
..
.
..
.
..
.
.
.
.
..
.
..
.
..
.
.
βˆ— π‘˜π‘˜π‘—π‘—β€¦
Output layer
Projection
Document Latent Vector
Recurrent Neural Networks: make use of sequential information
24
Input at time step 𝑑𝑑 βˆ’ 1
Hidden state at time step t
Output state at time step t
Activation function
25
Bidirectional RNNs
Long term dependencies
● In practice, RNNs cannot capture long term dependencies.
26
RNN and LSTM
27
Long Short Term Memory (LSTMs)
28
● Provide highway to pass cell state (or memory).
● LSTM can add or remove information to the cell state through regulated
structures called gates. LSTM has three gates to protect and control cell
state
f u
LSTMs – Details
Forget Update
+
tanh output
tanh
softmax
o
Ct-1
ht-1
xt
Ct
ht
C~
t
yt
Forget gate
● Forget gate layer decides what information will be thrown away
● Looks at β„Žπ‘‘π‘‘βˆ’1 and π‘₯π‘₯𝑑𝑑 and outputs a number between 0 and 1
● 1 represents completely keep this, 0 represents completely get rid of this
● Example: forget the gender of the old subject, when we see a new subject
30
Update
● A sigmoid layer (input gate layer): decides what values we’ll update
● A tanh layer: creates a vector of new candidate values, 𝐢𝐢𝑑𝑑
οΏ½
31
Input gate layer tanh layer
Update
32
β€’ Update old state by πΆπΆπ‘‘π‘‘βˆ’1 into the new cell state 𝐢𝐢𝑑𝑑
β€’ Multiply old state by 𝑓𝑓𝑑𝑑
β€’ Forgetting the things we decided to forget earlier
β€’ Then we add 𝑖𝑖𝑑𝑑 βˆ— 𝐢𝐢𝑑𝑑
οΏ½
Output
● A sigmoid layer decides what parts of the cell state to output
● Put the cell state through tanh and multiply it by the output of the sigmoid gate
33
Gated Recurrent Unit
● Replace forget (f) and input (i)
gates with an update gate (z)
● Introduce a reset gate (r ) that
modifies ht-1
● Eliminate internal memory ct
Source: http://colah.github.io/posts/2015-08-Understanding-LSTMs/
Bidirectional LSTM
w1 w2 w3 wn
Attention Mechanism
● Pool of source states
● Retrieve as needed
36
Attention - Context
37
𝑐𝑐𝑑𝑑 = οΏ½ π‘Žπ‘Žπ‘‘π‘‘ 𝑠𝑠 β„ŽοΏ½π‘ π‘ 
𝑠𝑠
β„Žπ‘‘π‘‘ = 𝑓𝑓(β„Žπ‘‘π‘‘βˆ’1, 𝑐𝑐𝑑𝑑, 𝑒𝑒𝑑𝑑)
Sentence Modeling
● Word Average
● CNN
● LSTM: A sentence 𝑠𝑠 is transformed to a fix-length vector 𝑒𝑒𝑠𝑠 by recursively
applying a LSTM unit to each word embedding 𝑒𝑒𝑀𝑀𝑑𝑑
and the previous step
β„Žπ‘‘π‘‘βˆ’1.
● BiLSTM: Bi-directional LSTM (BiLSTM) captures both the left and right
context.
β—‹ Two hidden states β„Žπ‘‘π‘‘
𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓
and β„Žπ‘‘π‘‘
𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑀𝑀𝑀𝑀𝑀𝑀𝑀𝑀
are concatenated into a
final hidden state β„Žπ‘‘π‘‘
𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏
38
Joint deep modelling of Users and Items using
Review for Recommendation
● A shared layer helps couple latent factors learned for user behavior and item
properties from reviews by two parallel networks
39
Joint deep modelling of Users and Items using Review for
Recommendation, Lei Zheng, Vahid Noroozi, Philip S. Yu, WSDM 2017
DeepCONN Architecture
40
User Review Text Item Review Text
Factorization Machine
TCNNu
TCNNi
π‘₯π‘₯𝑒𝑒 𝑦𝑦𝑖𝑖
User Network Item Network
41
Li P, Wang Z, Ren Z, Bing L, Lam W. Neural rating
regression with abstractive tips generation for
recommendation, SIGIR 2017.
Abstractive Tips Generation
● Gated recurrent neural networks help translate
user and item latent representations into concise
abstractive tips with good linguistic quality
simulating user experience and feelings
● Deep Composite Model : MLP and RNN
● Two Tasks
1. Rating prediction with MLP
2. Tips Generation
42
Neural Rating Tips
● Examples of the predicted ratings
and the generated tips.
● The first line of each group shows
the generated rating and tips.
● The second line shows the ground
truth.
43
Unified Representation
By translating various sources
(e.g., review, rating) into a
unified representation space,
heterogeneous information can
be integrated for informed
recommendation.
44
Zhang Y, Ai Q, Chen X, Croft WB.
Joint representation learning for
top-n recommendation with
heterogeneous information
sources, CIKM 2017.
NAPRE: Neural Attentional Rating Regression with Review-level Explanations
● To predict a rating given a user and an
item, as well as to select both useful
and representative reviews.
● Useful reviews are obtained through a
attention mechanism and provide
explanations for users to make better and
faster decisions.
● NAPRE learns the usefulness of each
review.
45
Chen C, Zhang M, Liu Y, Ma S. Neural Attentional Rating Regression with Review-level
Explanations, WWW 2018.
TextCNN
● CNN text Processor: inputs a
sequence of words and
outputs a n-dimensional
vector representation for the
input.
46
NAPRE
● Utilize the attention mechanism to assign
weights to reviews when modeling users
and items.
● Two parallel neural networks for user
modeling and item modeling.
● A prediction layer to let the hidden latent
factors of user and item interact.
● The training data consists of users,
items, and text reviews.
● Test stage: only users and items are
available.
47
Item Modelling
● CNN Text Processor is applied to process the
textual reviews of item i.
● Each review of i is transformed into a matrix of
word vectors, (Vi1, Vi2,...Vik).
● These matrixes are sent to the convolutional
layer and the feature vectors of them can be
obtained from the output as (Oi1, Oi2, ...Oi j) .
● Attention mechanism is used to learn the weight
of each review.
48
Attention-based Review Pooling
● Select reviews that are representative to item i’s
features
● Aggregate the representation of informative reviews to
characterize item i.
● A two-layer network is applied to compute the
attention score π‘Žπ‘Žπ‘–π‘–π‘–π‘– .
● The input contains the feature vector of the lth review
of item i (𝑂𝑂𝑖𝑖𝑖𝑖) and the user who wrote it
● (ID embedding, 𝑒𝑒𝑖𝑖𝑖𝑖 ) models the quality of users, helps
identify users who always write less-useful reviews.
49
Attention-based Review Pooling
● The attention network:
π‘Žπ‘Žβˆ—
𝑖𝑖𝑖𝑖 = β„Žπ‘‡π‘‡ π‘Ÿπ‘Ÿπ‘Ÿπ‘Ÿπ‘Ÿπ‘Ÿπ‘Ÿπ‘Ÿ π‘Šπ‘Šπ‘‚π‘‚ 𝑂𝑂𝑖𝑖𝑖𝑖 + π‘Šπ‘Šπ‘’π‘’ 𝑒𝑒𝑖𝑖𝑖𝑖 + 𝑏𝑏1 + 𝑏𝑏2
● Normalize: π‘Žπ‘Žπ‘–π‘–π‘–π‘– =
exp(π‘Žπ‘Žβˆ—
𝑖𝑖𝑖𝑖)
βˆ‘ exp(π‘Žπ‘Žβˆ—
𝑖𝑖𝑖𝑖)π‘˜π‘˜
𝑖𝑖=0
● the feature vector of item i: 𝑂𝑂𝑖𝑖 = βˆ‘ π‘Žπ‘Žπ‘–π‘–π‘–π‘– 𝑂𝑂𝑖𝑖𝑖𝑖𝑙𝑙=1β€¦π‘˜π‘˜
● The output of the attention-based pooling layer is a
k1 dimensional vector
● A fully connected layer computes the final
representation of item i: π‘Œπ‘Œπ‘–π‘– = π‘Šπ‘Š0 𝑂𝑂𝑖𝑖 + 𝑏𝑏0
50
NAPRE: Prediction Layer
● NAPRE extends user preferences and item
features in LFM model to two components: one
based on ratings while the other based on
reviews.
● A neural form LFM used for predicting ratings.
● the latent factors of user and item are mapped
to a shared hidden space.
● The interaction between u and i is modelled
as:
β„Ž0 = (π‘žπ‘žπ‘’π‘’ + 𝑋𝑋𝑒𝑒)⨀(𝑝𝑝𝑖𝑖 + π‘Œπ‘Œπ‘–π‘–)
51
NAPRE: Prediction Layer
● The interaction between u and i is modelled as:
β„Ž0 = (π‘žπ‘žπ‘’π‘’ + 𝑋𝑋𝑒𝑒)⨀(𝑝𝑝𝑖𝑖 + π‘Œπ‘Œπ‘–π‘–)
● π‘žπ‘žπ‘’π‘’ and 𝑝𝑝𝑖𝑖 are user preferences and item features
based on ratings from LFM
● 𝑋𝑋𝑒𝑒 and π‘Œπ‘Œπ‘–π‘– are user preferences and item features
obtained from the above method
● ⨀ denotes the element-wise product of vectors.
● The output is a n-d vector, passed to prediction
layer:
𝑅𝑅�𝑒𝑒,𝑖𝑖 = 𝑀𝑀1
𝑇𝑇
β„Ž0 + 𝑏𝑏𝑒𝑒 + 𝑏𝑏𝑖𝑖 + πœ‡πœ‡
52
Usefulness of reviews
53
Aspect Similarity Recognition using Deep Learning
● Two sentences are identified as
aspect similar if they mention at
least one aspect in common
55
A Deep Learning Study of Aspect
Similarity Recognition Huy-Tien
Nguyen, Quan-Hoang Vo, and Minh-
Le Nguyen, 2018
Recommendation of High Quality Representative Reviews in E-commerce
Recsys 2017, Debanjan Paul, Sudeshna Sarkar (IIT Kharagpur)
Muthusamy Chelliah, Chetan Kalyan, Prajit Nadkarni (Flipkart)
Product
Reviews
Aspect and
Sentiment
Extraction
Review
Selection
Preserves
Statistical
Distribution
Subset of
β€˜k’
Reviews
Aspect
Synonymy
Detection
Review Quality
Estimation
Set of annotated review data
Distribution of aspects and
sentiments
Product
aspects and
sentiments
Review
quality score
System Architecture
Product
Reviews
Aspect and
Sentiment
Extraction
Review
Selection
Preserves
Statistical
Distribution
Subset
of β€˜k’
Review
s
Aspect
Synonymy
Detection
Review Quality
Estimation
Set of annotated review data
Distribution of aspects and
sentiments
Product
aspects and
sentiments
Review
quality score
Extracts product aspect phrases along with the
corresponding sentiments from each reviews of
the item.
E.g. The lens of this camera is great.
Considers semantic similarity between
aspects to merge similar aspects.
E.g. β€˜Photo’, β€˜Picture’, β€˜camera’ refer to the
same feature of a mobile phone.
Estimates review quality
score from its textual
content
Representative Reviews
Covers different product aspects and
sentiments.
Preserves the statistical distribution of product
aspects and opinions.
Aspect Extraction
Extracts product aspect phrases from each reviews of the item along with
the sentiments expressed about them.
Sample Input: The picture quality is great. It
also has cool looks. But the phone hangs
sometimes, if you install too many apps.
Output:
picture quality,+1 ;
looks,+1 ;
processor,-1
Qiu, Guang, et al. "Opinion word expansion and target extraction through double propagation."
Computational linguistics 37.1 (2011)
Use a semi-supervised technique
based on bootstrapping from a small
opinion lexicon.
Utilize several syntactic relations that
link opinion words and targets to
expand the initial opinion lexicon and
to extract targets.
Evaluation of Aspect and Sentiment Extraction Module
β€’ Used 300 reviews from
mobile phone, camera and
blue tooth headsets product
in Amazon dataset
β€’ Manually annotated to find
the correct aspect phrases
and corresponding
sentiment
No. of reviews 300
Actual no of aspect phrases 660
No of extracted aspect phrases 630
Correctly extracted aspect phrases 468
Precision 70.90%
Aspect Synonymy Detection
General Display Processor Memory Camera Connectivity Multimedia Charging
56% 47% 16% 6% 29% 49% 34% 36%
Audio
quality
Video
Recording
Sound
quality
Photo Camera Bluetooth
headset
RAM Picture
quality
Touch
Screen
Battery
life
…
2% 0% 1% 1% 10% 6% 0% 2% 1% 7%
β€’ 125 reviews of an β€œAsus Zenfone Max”.
β€’ 35 aspects before: audio quality, video recording, sound, photo, camera, bluetooth headset, RAM,
picture quality, touch screen, battery life, picture, clock speed, frequency, OS, SIM, packaging,
network, model, ROM, pixel, LED, button, power, price, formats, display, disk, processing,
configuration, thing, smartphone, support, resolution.
Use word embeddings of words and phrases. Merge phrases with similar word vectors.
8 aspects obtained.
Evaluation of Aspect Similarity Detection Module
β€’ We extracted aspect phrases for
10 products in mobile phone
domain and mapped the
extracted aspect phrases with
the Flipkart catalogue aspects.
β€’ We have manually evaluated
the correctness of the mappings
obtained.
β€’ The accuracy of our aspect
similarity detection module is
83.75%.
Aspect
Category
#Extracted
aspect
phrases
Correctly
mapped
Incorrectly
mapped
Camera 360 342 18
Connectivity 135 63 72
Dimension 99 45 54
Display 306 198 108
General 423 333 90
Memory 27 27 0
Multimedia 45 27 18
OS 207 207 0
Others 1062 963 99
Not Mapped 216 207 9
Total 2880 2412 468
Review Quality Estimation
β€’ Some review recommendation systems use review helpfulness
score as the parameter to judge review quality.
β€’ New reviews do not have any helpfulness score (cold start).
β€’ Not all sites capture helpfulness score.
β€’ We develop a CNN (convolutional neural network) to estimate the
quality score of the textual reviews.
– Simple CNN
– Dynamic CNN with k-max pooling
Dynamic Convolutional Neural Network Architecture
Input Layer
β€’ All reviews of a product (length s)
β€’ Each word is embedded as a d-dim vector.
Convolutional Layer
β€’ A convolution matrix is applied to input
matrix S (filter size of m)
Dynamic K-max pooling layer
β€’ Selects K most active features.
β€’ K is determined dynamically as a function of
the length of the sentence and depth of the
network .
𝐾𝐾𝑙𝑙 = max 𝐾𝐾𝑑𝑑𝑑𝑑𝑑𝑑, 𝐿𝐿 βˆ’ 𝑙𝑙 βˆ— 𝑠𝑠
𝐿𝐿�
Dynamic Convolutional Neural Network Architecture
Folding
β€’ Elements in two rows of the matrix are added
component wise in order to obtain a reduced
matrix of dimension d/2.
Fully Connected Layer
β€’ Fully connected softmax layer.
Experiments
β€’ Amazon dataset.
β€’ Reviews from six different product
domains
– electronics, clothing, books,
shoes, music, watches
β€’ Accuracy:
– CNN: 71%
– DCNN: 83%
Number of
reviews
34,686,770
Number of users 6,643,669
Number of
products
2,441,053
Users with > 50
reviews
56,772
Median number of
words per review
82
Timespan Jun 1995 –
Mar 2013
Review Selection
β€’ Given a corpus of reviews R on an item, find a k-size subset S βŠ† R of
reviews that accurately capture the proportion of opinions of the item’s
features.
β€’ For t = 1 to k
1. Pick one review r Ο΅ R to form subset S(t) βŠ† R
2. so that the distance D( Ο€( S(tβˆ’1) βˆͺ {r}), Ο„) is minimized, where 𝝅𝝅 is the
percentage distribution of the aspects in the set 𝝅𝝅(S) and D is the L2
2 norm
of their difference i.e. 𝑫𝑫 𝝅𝝅, 𝝉𝝉 = π‘³π‘³πŸπŸ
2 𝝅𝝅 βˆ’ 𝝉𝝉 = βˆ‘ 𝝅𝝅 π’Šπ’Š βˆ’ 𝝉𝝉 π’Šπ’Š πŸπŸπ’Žπ’Ž
π’Šπ’Š=𝟏𝟏 , where
m is the total number of extracted aspects.
Lappas, Theodoros, Mark Crovella, and Evimaria Terzi. "Selecting a characteristic set of reviews."
Proceedings of the 18th ACM SIGKDD international conference on Knowledge discovery and data mining.
ACM, 2012
Sample Output
β€’ Product Name: Plantronics Voyager 510 Bluetooth Headset
β€’ Number of Reviews : 465
β€’ Number of Attributes (Catalogue Attributes) : 8
β€’ Original attribute distribution:
General Display Processor Memory &
Storage
Camera Connectivity Multimedia Charging
60% 60% 20% 0% 20% 40% 40% 40%
General Display Processor Memory &
Storage
Camera Connectivity Multimedia Charging
56% 47% 16% 6% 29% 49% 34% 36%
Resulting attribute distribution in recommended reviews:
System Evaluation
We have recommended three sets of reviews for 8
products based on:
β€’ RQS: Explicit review helpfulness score.
β€’ CNN: Quality score of review estimated by CNN
β€’ DCNN: Quality score of review estimated by
DCNN
β€’ CRS: Characteristic Review Selection algorithm.
β€’ COMB: Combined approach
β€’ 3 sets of 5 reviews
from the methods are
given to 10 human
annotators to rank the
methods from 1 to 3.
β€’ Ranking done on basis
of which set of reviews
defines the product
best
Comparison of RQS,CNN and DCNN method
β€’ DCNN has an accuracy of 83% wrt RQS
β€’ Plain CNN has 70%.
β€’ COMB is declared as the best method in
60% of the reports obtained from
annotators.
β€’ COMB approach has the lowest rank.
Method Percentage Average Rank
RQS 35 1.925
CNN 20 2.2625
DCNN 45 1.7875
Method Percentage Average Rank
CRS 15 2.175
CNN 25 2.2125
COMB 60 1.6125
Live Evaluation of the system at Flipkart
Live Evaluation of COMB method against
default recommendation system at Flipkart
β€’ 100 sorted reviews recommended by
COMB method for 24 random
products in mobile phone category.
β€’ 25% of users experience the reviews
recommended by our method while
rest experience the default behavior.
β€’ Impact is measured in number of
transactions (Txns) per product page
visit (PPV).
0
0.5
1
1.5
2
Product1
Product3
Product5
Product7
Product9
Product11
Product13
Product15
Product17
Product19
Product21
Product23
Default
COMB
β€’ COMB shows an increase in product
purchase for 10 products.
β€’ Default recommendation system performs
better in case of 5 products.
β€’ Similar performance in case of 9 products.
Live Evaluation of the system at Flipkart
β€’ Net product transaction increase by 1.85%
out of 1 million product units by using
COMB.
β€’ COMB combines quality score of reviews
with the product aspects and sentiments
along with maintaining statistical
distribution of opinions found in
underlying corpus.
β€’ COMB has performed better than both
CNN and default recommendation system
at Flipkart live testing.
Algorithm Txns PPV
Default 1777 313776
COMB 1781 308782
Increase in conversion by 1.85%
List of reviews recommended by CRS method Current List of reviews recommended by COMB
I love my headset. It is clear and comfortable. I could
wear it all day.
Works well, good audio quality, battery lasts a long
time.
I bought this model for my wife after her last one died.
It was her third or fourth..? I've lost track. This model
does not compare to the others; it's much better. It
hooked up easy to her Verizon phone and sounds
clear on BOTH ends. I hear her fine and her voice is
crisp and clear. What else is there? Oh yes, price....
around $40...Buy one, you will not be sorry.
I have been using this headset for about a month. The
sound quality is better than most headsets that I have
used. One day when it was very windy there was a
little too much wind noise in the mic for the person that
I was speaking to. The device automatically connected
to my RAVR phone so connection was not an issue. I
am not crazy about the connect button on the mic arm,
and open the phone to connect to calls The set comes
with three different sizes of ear pieces which makes it
fit well for almost everyone. The battery life on this
device is amazing
Doesn't work. Will be sending back---home. Tried
pairing it up over 10 times with Iphone, which is with
Verizon, and it did not work with phone. Expecting a
refund back when I get the CD back to send with the
rest of items. Thank you anyway.
I bought the 510 based on the volume of positive
reviews. Well if this truly is the best Bluetooth headset
then I'm going back to using a wired headset. Sound
quality was poor, people couldn't hear me if there was
any background noise and the ear pieces were all
uncomfortable.
Personalised review recommendation in e-commerce
74
Mtech thesis of Surjodoy Ghosh Dastider, IIT Kharagpur, 2018
Review 1: Good UI, user-friendly, sturdy
Review 2: Poor battery life and performance of
apps
...
User 1: Prefers user-
friendly phones
User 2: Prefers high-
performance phones
Product: Mobile Phone XYZ
Methodology
Our proposed review recommendation system performs the following tasks:
1. Extract aspects and corresponding sentiments from all reviews and questions in a
given product domain.
2. Represent each review, product and user as a probability distribution over topics.
3. Generate helpfulness/quality score for each review.
4. Generate the desired aspect distribution in the recommended set of reviews, using
product and user profiles.
5. Select an optimal subset of reviews to recommend to a user.
6. Use user cluster profiles instead of individual user profiles.
75
System
Architecture
76
Domain Topic Identification
● We use a topic model, Sentiment-LDA (Li ’10) for aspect based
sentiment analysis (ABSA), to extract product aspects and corresponding
sentiments.
● Given a product domain, we discover the optimal number of global
topics T for all product reviews in that domain.
● For each topic-sentiment pair, we retrieve the top 30 words
77
ABSA Architecture
78
Representation of Reviews and Products
We analyze each review r to get a vector V(r) of size 2*T. Similarly, we find
vectors from questions available in the e-commerce platform.
For each product P, we aggregate vectors of all reviews Rev(P) written for that
product to generate the product vector V(P).
V (P) = Σr∈Rev(P) V (r)
79
Representation of Users
For each user U, we used three sources of information:
● Reviews written by that user Revu(u)
UR(u) = Σr ∈ Revu(u)V (r)
● Questions asked by that user Ques(u)
UQ(u) = Σq ∈ Ques(u)V (q)
● Reviews up-voted/down-voted by that user Vote(u)
UV(u) = Σr ∈ Vote(u) V (r)
Each such user vector gives the distribution of topics over each user, or the aspects that
each user is interested in. Some or all of them can be used to build the user profile U(u).
80
Personalization Strategy
The base review recommendation model considers the product vector V(P) as the
desired distribution of topics with sentiments in the recommended review set.
A personalized system needs to take the user interests into consideration. For this
we use the user profile U(u).
We felt that it is important to balance the inputs from U(u) as well as V(P) to form
the desired topic distribution in the recommended review set.
Thus the desired distribution is given by D(p, u) = f(V(p), U(u)).
81
Personalization Strategy (contd.)
We considered the following forms for the composition:
D(p, u) = V(p)Ξ± . U(u)Ξ²
1. V(p): Ξ± = 1, Ξ² = 0.
2. U(u): Ξ± = 0, Ξ² = 1.
3. A combination of both the terms, obtained by keeping Ξ± = 1 and varying Ξ². A
higher value of Ξ² corresponds to more aggressive personalization.
82
Review Selection
83
User Clustering
Drawback: Latency issues when used in a online e-commerce platform.
The reviews to be recommended to a user may be pre-computed in order to serve users in
real time.
Workaround: Group users based on the similarity of their user profiles so that different
review recommendations may be associated with each group.
Used a clustering algorithm (k-means) to group the users based on their aspect preferences
for each domain and created c groups of users.
Computed the mean vector U(Ci) of each group, and replaced the user's own vector U(u)
with the mean vector U(Ci) of the user's group.
84
Dataset
Mobile Phones
Number of Reviews: 100000
Number of Products: 5987
Number of Users: 93434
85
Computers
Number of Reviews: 40958
Number of Products: 3455
Number of Users: 39336
● Used reviews from the product review dataset of Flipkart.
● Each review item includes product title, user info, review rating, and plaintext review.
● Reviews chosen from two popular product domains - mobile phones and computers.
Evaluation Strategy
A way to evaluate the system is to check whether the reviews recommended by
the system are found to be helpful to the user.
We can find whether the reviews of a product that a user actually up-voted were
recommended by the review recommendation algorithm. We used the offline
review up-vote data by users for this purpose.
86
Evaluation Strategy
Supposing that from the review set R = Rev(p), RU is the set up-voted by the user,
and S is the set recommended. We evaluate the performance of our system using
average Precision and average Recall.
Precision: Percentage of reviews in the recommended set S which have been
up-voted.
Recall: Percentage of up-voted reviews RU returned in the recommended set S.
87
Experiments
1. For aspect-sentiment extraction, 6 topics were taken for cell phones and 8 topics were
taken for computers. Number of sentiments was taken as 2.
2. We used the following Dirichlet priors for our topic model: Ξ± = 0.1, Ξ² = 0.01, Ξ³ = 1.
3. Using the resulting global topics, we created vectors of size 6*2=12 for each mobile
phone review, and of size 8*2=16 for each computer review. Based on this we created
product profiles for each product using Rev(p), and user profiles for each user by using
three sources of information: UR(u), UQ(u) and UV(u).
88
Experiments
4. We used the following different combinations of the aforementioned user vectors to
obtain the final user vector U(u) for our personalization step:
a. UR = UR(u)
b. URQ = UR(u) + UQ(u)
c. URV = UR(u) + UV(u)
d. URQV = UR(u) + UQ(u) + UV(u)
5. Given a user u, a product p, its reviews Rev(p), we recommended a subset SK
u,p of K
reviews using our algorithm based on our desired distribution D(p, u).
89
Testing
We took N=1000 products from each domain with the highest review count.
For each product, we randomly selected one user who has up-voted more than
three reviews of that product, thus creating N product-user pairs.
For each product-user pair, we generated K recommendations. We experimented
with the recommendation set size K, using values of 5, 10 and 15.
90
Results
● The system's recall for both domains increases with increase in K.
● We found that the user profile URQV computed using all information works best.
● We next ran the grouping based recommendation and experimented for group
sizes of 5, 10 and 15. We found that the results using the group profile is better
than the non-personalized case even for 5 groups. In most cases the results are
better with more number of groups (c).
● For the mobile phone domain with K=5, the best precision was 11.57% for c=15
as compared to 12.04% for the individual approach.
● The best recall obtained for K=15 is 26.76% for mobile phones and 23.85% for
computers.
91
Results for mobile phone domain, K = 15, individual profiles
92
Results for computer domain, K = 15, individual profiles
93
Group Personalization Results, K = 15, D(p,u) = V(p) Β· U(u)5
94
Mobile
Phones
Computers
Conclusions and Future Work
● Our system for personalized review recommendation using individual profiles
performs better than other proposed systems addressing the same problem.
● The group based implementation is novel and makes our system practical.
● We plan to perform live testing and check the effectiveness of our method in
increasing product purchases.
95

More Related Content

What's hot

Convolutional Neural Networks - Veronica Vilaplana - UPC Barcelona 2018
Convolutional Neural Networks - Veronica Vilaplana - UPC Barcelona 2018Convolutional Neural Networks - Veronica Vilaplana - UPC Barcelona 2018
Convolutional Neural Networks - Veronica Vilaplana - UPC Barcelona 2018Universitat Politècnica de Catalunya
Β 
TypeScript and Deep Learning
TypeScript and Deep LearningTypeScript and Deep Learning
TypeScript and Deep LearningOswald Campesato
Β 
Recurrent Neural Networks, LSTM and GRU
Recurrent Neural Networks, LSTM and GRURecurrent Neural Networks, LSTM and GRU
Recurrent Neural Networks, LSTM and GRUananth
Β 
Recent Progress in RNN and NLP
Recent Progress in RNN and NLPRecent Progress in RNN and NLP
Recent Progress in RNN and NLPhytae
Β 
Tg noh jeju_workshop
Tg noh jeju_workshopTg noh jeju_workshop
Tg noh jeju_workshopTae-Gil Noh
Β 
The Munich LSTM-RNN Approach to the MediaEval 2014 β€œEmotion in Music” Task
The Munich LSTM-RNN Approach to the MediaEval 2014 β€œEmotion in Music” TaskThe Munich LSTM-RNN Approach to the MediaEval 2014 β€œEmotion in Music” Task
The Munich LSTM-RNN Approach to the MediaEval 2014 β€œEmotion in Music” Taskmultimediaeval
Β 
Neural Machine Translation (D3L4 Deep Learning for Speech and Language UPC 2017)
Neural Machine Translation (D3L4 Deep Learning for Speech and Language UPC 2017)Neural Machine Translation (D3L4 Deep Learning for Speech and Language UPC 2017)
Neural Machine Translation (D3L4 Deep Learning for Speech and Language UPC 2017)Universitat Politècnica de Catalunya
Β 
Deep Learning: Recurrent Neural Network (Chapter 10)
Deep Learning: Recurrent Neural Network (Chapter 10) Deep Learning: Recurrent Neural Network (Chapter 10)
Deep Learning: Recurrent Neural Network (Chapter 10) Larry Guo
Β 
Ask Me Any Rating: A Content-based Recommender System based on Recurrent Neur...
Ask Me Any Rating: A Content-based Recommender System based on Recurrent Neur...Ask Me Any Rating: A Content-based Recommender System based on Recurrent Neur...
Ask Me Any Rating: A Content-based Recommender System based on Recurrent Neur...Claudio Greco
Β 
Week 3 Deep Learning And POS Tagging Hands-On
Week 3 Deep Learning And POS Tagging Hands-OnWeek 3 Deep Learning And POS Tagging Hands-On
Week 3 Deep Learning And POS Tagging Hands-OnSARCCOM
Β 
Recurrent Neural Networks
Recurrent Neural NetworksRecurrent Neural Networks
Recurrent Neural NetworksCloudxLab
Β 
Learning Communication with Neural Networks
Learning Communication with Neural NetworksLearning Communication with Neural Networks
Learning Communication with Neural Networkshytae
Β 
Use CNN for Sequence Modeling
Use CNN for Sequence ModelingUse CNN for Sequence Modeling
Use CNN for Sequence ModelingDongang (Sean) Wang
Β 
Transfer Learning and Domain Adaptation (DLAI D5L2 2017 UPC Deep Learning for...
Transfer Learning and Domain Adaptation (DLAI D5L2 2017 UPC Deep Learning for...Transfer Learning and Domain Adaptation (DLAI D5L2 2017 UPC Deep Learning for...
Transfer Learning and Domain Adaptation (DLAI D5L2 2017 UPC Deep Learning for...Universitat Politècnica de Catalunya
Β 
[Introduction] Neural Network-Based Abstract Generation for Opinions and Argu...
[Introduction] Neural Network-Based Abstract Generation for Opinions and Argu...[Introduction] Neural Network-Based Abstract Generation for Opinions and Argu...
[Introduction] Neural Network-Based Abstract Generation for Opinions and Argu...Kodaira Tomonori
Β 
Deep Learning without Annotations - Xavier Giro - UPC Barcelona 2018
Deep Learning without Annotations - Xavier Giro - UPC Barcelona 2018Deep Learning without Annotations - Xavier Giro - UPC Barcelona 2018
Deep Learning without Annotations - Xavier Giro - UPC Barcelona 2018Universitat Politècnica de Catalunya
Β 
Lifelong / Incremental Deep Learning - Ramon Morros - UPC Barcelona 2018
Lifelong / Incremental Deep Learning - Ramon Morros - UPC Barcelona 2018Lifelong / Incremental Deep Learning - Ramon Morros - UPC Barcelona 2018
Lifelong / Incremental Deep Learning - Ramon Morros - UPC Barcelona 2018Universitat Politècnica de Catalunya
Β 

What's hot (19)

Convolutional Neural Networks - Veronica Vilaplana - UPC Barcelona 2018
Convolutional Neural Networks - Veronica Vilaplana - UPC Barcelona 2018Convolutional Neural Networks - Veronica Vilaplana - UPC Barcelona 2018
Convolutional Neural Networks - Veronica Vilaplana - UPC Barcelona 2018
Β 
TypeScript and Deep Learning
TypeScript and Deep LearningTypeScript and Deep Learning
TypeScript and Deep Learning
Β 
Recurrent Neural Networks, LSTM and GRU
Recurrent Neural Networks, LSTM and GRURecurrent Neural Networks, LSTM and GRU
Recurrent Neural Networks, LSTM and GRU
Β 
Recent Progress in RNN and NLP
Recent Progress in RNN and NLPRecent Progress in RNN and NLP
Recent Progress in RNN and NLP
Β 
Tg noh jeju_workshop
Tg noh jeju_workshopTg noh jeju_workshop
Tg noh jeju_workshop
Β 
The Munich LSTM-RNN Approach to the MediaEval 2014 β€œEmotion in Music” Task
The Munich LSTM-RNN Approach to the MediaEval 2014 β€œEmotion in Music” TaskThe Munich LSTM-RNN Approach to the MediaEval 2014 β€œEmotion in Music” Task
The Munich LSTM-RNN Approach to the MediaEval 2014 β€œEmotion in Music” Task
Β 
Neural Machine Translation (D3L4 Deep Learning for Speech and Language UPC 2017)
Neural Machine Translation (D3L4 Deep Learning for Speech and Language UPC 2017)Neural Machine Translation (D3L4 Deep Learning for Speech and Language UPC 2017)
Neural Machine Translation (D3L4 Deep Learning for Speech and Language UPC 2017)
Β 
Deep Learning: Recurrent Neural Network (Chapter 10)
Deep Learning: Recurrent Neural Network (Chapter 10) Deep Learning: Recurrent Neural Network (Chapter 10)
Deep Learning: Recurrent Neural Network (Chapter 10)
Β 
Ask Me Any Rating: A Content-based Recommender System based on Recurrent Neur...
Ask Me Any Rating: A Content-based Recommender System based on Recurrent Neur...Ask Me Any Rating: A Content-based Recommender System based on Recurrent Neur...
Ask Me Any Rating: A Content-based Recommender System based on Recurrent Neur...
Β 
Week 3 Deep Learning And POS Tagging Hands-On
Week 3 Deep Learning And POS Tagging Hands-OnWeek 3 Deep Learning And POS Tagging Hands-On
Week 3 Deep Learning And POS Tagging Hands-On
Β 
Recurrent Neural Networks
Recurrent Neural NetworksRecurrent Neural Networks
Recurrent Neural Networks
Β 
Learning Communication with Neural Networks
Learning Communication with Neural NetworksLearning Communication with Neural Networks
Learning Communication with Neural Networks
Β 
Use CNN for Sequence Modeling
Use CNN for Sequence ModelingUse CNN for Sequence Modeling
Use CNN for Sequence Modeling
Β 
Transfer Learning and Domain Adaptation (DLAI D5L2 2017 UPC Deep Learning for...
Transfer Learning and Domain Adaptation (DLAI D5L2 2017 UPC Deep Learning for...Transfer Learning and Domain Adaptation (DLAI D5L2 2017 UPC Deep Learning for...
Transfer Learning and Domain Adaptation (DLAI D5L2 2017 UPC Deep Learning for...
Β 
The Transformer - Xavier GirΓ³ - UPC Barcelona 2021
The Transformer - Xavier GirΓ³ - UPC Barcelona 2021The Transformer - Xavier GirΓ³ - UPC Barcelona 2021
The Transformer - Xavier GirΓ³ - UPC Barcelona 2021
Β 
The Perceptron (D1L1 Insight@DCU Machine Learning Workshop 2017)
The Perceptron (D1L1 Insight@DCU Machine Learning Workshop 2017)The Perceptron (D1L1 Insight@DCU Machine Learning Workshop 2017)
The Perceptron (D1L1 Insight@DCU Machine Learning Workshop 2017)
Β 
[Introduction] Neural Network-Based Abstract Generation for Opinions and Argu...
[Introduction] Neural Network-Based Abstract Generation for Opinions and Argu...[Introduction] Neural Network-Based Abstract Generation for Opinions and Argu...
[Introduction] Neural Network-Based Abstract Generation for Opinions and Argu...
Β 
Deep Learning without Annotations - Xavier Giro - UPC Barcelona 2018
Deep Learning without Annotations - Xavier Giro - UPC Barcelona 2018Deep Learning without Annotations - Xavier Giro - UPC Barcelona 2018
Deep Learning without Annotations - Xavier Giro - UPC Barcelona 2018
Β 
Lifelong / Incremental Deep Learning - Ramon Morros - UPC Barcelona 2018
Lifelong / Incremental Deep Learning - Ramon Morros - UPC Barcelona 2018Lifelong / Incremental Deep Learning - Ramon Morros - UPC Barcelona 2018
Lifelong / Incremental Deep Learning - Ramon Morros - UPC Barcelona 2018
Β 

Similar to Icon18revrec sudeshna

Understanding Large Social Networks | IRE Major Project | Team 57 | LINE
Understanding Large Social Networks | IRE Major Project | Team 57 | LINEUnderstanding Large Social Networks | IRE Major Project | Team 57 | LINE
Understanding Large Social Networks | IRE Major Project | Team 57 | LINERaj Patel
Β 
CNN for modeling sentence
CNN for modeling sentenceCNN for modeling sentence
CNN for modeling sentenceANISH BHANUSHALI
Β 
Deep Neural Networks (D1L2 Insight@DCU Machine Learning Workshop 2017)
Deep Neural Networks (D1L2 Insight@DCU Machine Learning Workshop 2017)Deep Neural Networks (D1L2 Insight@DCU Machine Learning Workshop 2017)
Deep Neural Networks (D1L2 Insight@DCU Machine Learning Workshop 2017)Universitat Politècnica de Catalunya
Β 
Scene understanding
Scene understandingScene understanding
Scene understandingMohammed Shoaib
Β 
Hate speech detection
Hate speech detectionHate speech detection
Hate speech detectionNASIM ALAM
Β 
Understanding Large Social Networks | IRE Major Project | Team 57
Understanding Large Social Networks | IRE Major Project | Team 57 Understanding Large Social Networks | IRE Major Project | Team 57
Understanding Large Social Networks | IRE Major Project | Team 57 Raj Patel
Β 
Neural machine translation by jointly learning to align and translate.pptx
Neural machine translation by jointly learning to align and translate.pptxNeural machine translation by jointly learning to align and translate.pptx
Neural machine translation by jointly learning to align and translate.pptxssuser2624f71
Β 
NS-CUK Journal club: HBKim, Review on "Neural Graph Collaborative Filtering",...
NS-CUK Journal club: HBKim, Review on "Neural Graph Collaborative Filtering",...NS-CUK Journal club: HBKim, Review on "Neural Graph Collaborative Filtering",...
NS-CUK Journal club: HBKim, Review on "Neural Graph Collaborative Filtering",...ssuser4b1f48
Β 
Convolutional Neural Networks (CNN)
Convolutional Neural Networks (CNN)Convolutional Neural Networks (CNN)
Convolutional Neural Networks (CNN)Gaurav Mittal
Β 
Artificial Intelligence, Machine Learning and Deep Learning
Artificial Intelligence, Machine Learning and Deep LearningArtificial Intelligence, Machine Learning and Deep Learning
Artificial Intelligence, Machine Learning and Deep LearningSujit Pal
Β 
convolutional_neural_networks in deep learning
convolutional_neural_networks in deep learningconvolutional_neural_networks in deep learning
convolutional_neural_networks in deep learningssusere5ddd6
Β 
SummaRuNNer: A Recurrent Neural Network based Sequence Model for Extractive S...
SummaRuNNer: A Recurrent Neural Network based Sequence Model for Extractive S...SummaRuNNer: A Recurrent Neural Network based Sequence Model for Extractive S...
SummaRuNNer: A Recurrent Neural Network based Sequence Model for Extractive S...Sharath TS
Β 
Java and Deep Learning (Introduction)
Java and Deep Learning (Introduction)Java and Deep Learning (Introduction)
Java and Deep Learning (Introduction)Oswald Campesato
Β 
Deep learning from a novice perspective
Deep learning from a novice perspectiveDeep learning from a novice perspective
Deep learning from a novice perspectiveAnirban Santara
Β 
Deep Learning for Personalized Search and Recommender Systems
Deep Learning for Personalized Search and Recommender SystemsDeep Learning for Personalized Search and Recommender Systems
Deep Learning for Personalized Search and Recommender SystemsBenjamin Le
Β 
Introduction to deep learning
Introduction to deep learningIntroduction to deep learning
Introduction to deep learningJunaid Bhat
Β 
Fundamental of deep learning
Fundamental of deep learningFundamental of deep learning
Fundamental of deep learningStanley Wang
Β 
Molecular autoencoder
Molecular autoencoderMolecular autoencoder
Molecular autoencoderDan Elton
Β 

Similar to Icon18revrec sudeshna (20)

Understanding Large Social Networks | IRE Major Project | Team 57 | LINE
Understanding Large Social Networks | IRE Major Project | Team 57 | LINEUnderstanding Large Social Networks | IRE Major Project | Team 57 | LINE
Understanding Large Social Networks | IRE Major Project | Team 57 | LINE
Β 
CNN for modeling sentence
CNN for modeling sentenceCNN for modeling sentence
CNN for modeling sentence
Β 
Deep Neural Networks (D1L2 Insight@DCU Machine Learning Workshop 2017)
Deep Neural Networks (D1L2 Insight@DCU Machine Learning Workshop 2017)Deep Neural Networks (D1L2 Insight@DCU Machine Learning Workshop 2017)
Deep Neural Networks (D1L2 Insight@DCU Machine Learning Workshop 2017)
Β 
Scene understanding
Scene understandingScene understanding
Scene understanding
Β 
Hate speech detection
Hate speech detectionHate speech detection
Hate speech detection
Β 
WaveNet
WaveNetWaveNet
WaveNet
Β 
Understanding Large Social Networks | IRE Major Project | Team 57
Understanding Large Social Networks | IRE Major Project | Team 57 Understanding Large Social Networks | IRE Major Project | Team 57
Understanding Large Social Networks | IRE Major Project | Team 57
Β 
Neural machine translation by jointly learning to align and translate.pptx
Neural machine translation by jointly learning to align and translate.pptxNeural machine translation by jointly learning to align and translate.pptx
Neural machine translation by jointly learning to align and translate.pptx
Β 
NS-CUK Journal club: HBKim, Review on "Neural Graph Collaborative Filtering",...
NS-CUK Journal club: HBKim, Review on "Neural Graph Collaborative Filtering",...NS-CUK Journal club: HBKim, Review on "Neural Graph Collaborative Filtering",...
NS-CUK Journal club: HBKim, Review on "Neural Graph Collaborative Filtering",...
Β 
Convolutional Neural Networks (CNN)
Convolutional Neural Networks (CNN)Convolutional Neural Networks (CNN)
Convolutional Neural Networks (CNN)
Β 
Artificial Intelligence, Machine Learning and Deep Learning
Artificial Intelligence, Machine Learning and Deep LearningArtificial Intelligence, Machine Learning and Deep Learning
Artificial Intelligence, Machine Learning and Deep Learning
Β 
convolutional_neural_networks in deep learning
convolutional_neural_networks in deep learningconvolutional_neural_networks in deep learning
convolutional_neural_networks in deep learning
Β 
SummaRuNNer: A Recurrent Neural Network based Sequence Model for Extractive S...
SummaRuNNer: A Recurrent Neural Network based Sequence Model for Extractive S...SummaRuNNer: A Recurrent Neural Network based Sequence Model for Extractive S...
SummaRuNNer: A Recurrent Neural Network based Sequence Model for Extractive S...
Β 
Java and Deep Learning (Introduction)
Java and Deep Learning (Introduction)Java and Deep Learning (Introduction)
Java and Deep Learning (Introduction)
Β 
Deep learning from a novice perspective
Deep learning from a novice perspectiveDeep learning from a novice perspective
Deep learning from a novice perspective
Β 
Deep Learning for Personalized Search and Recommender Systems
Deep Learning for Personalized Search and Recommender SystemsDeep Learning for Personalized Search and Recommender Systems
Deep Learning for Personalized Search and Recommender Systems
Β 
Introduction to deep learning
Introduction to deep learningIntroduction to deep learning
Introduction to deep learning
Β 
Fundamental of deep learning
Fundamental of deep learningFundamental of deep learning
Fundamental of deep learning
Β 
Molecular autoencoder
Molecular autoencoderMolecular autoencoder
Molecular autoencoder
Β 
ai7.ppt
ai7.pptai7.ppt
ai7.ppt
Β 

Recently uploaded

Delhi Call Girls Punjabi Bagh 9711199171 β˜Žβœ”πŸ‘Œβœ” Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 β˜Žβœ”πŸ‘Œβœ” Whatsapp Hard And Sexy Vip CallDelhi Call Girls Punjabi Bagh 9711199171 β˜Žβœ”πŸ‘Œβœ” Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 β˜Žβœ”πŸ‘Œβœ” Whatsapp Hard And Sexy Vip Callshivangimorya083
Β 
Invezz.com - Grow your wealth with trading signals
Invezz.com - Grow your wealth with trading signalsInvezz.com - Grow your wealth with trading signals
Invezz.com - Grow your wealth with trading signalsInvezz1
Β 
Generative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and MilvusGenerative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and MilvusTimothy Spann
Β 
April 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's AnalysisApril 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's Analysismanisha194592
Β 
Vip Model Call Girls (Delhi) Karol Bagh 9711199171βœ”οΈBody to body massage wit...
Vip Model  Call Girls (Delhi) Karol Bagh 9711199171βœ”οΈBody to body massage wit...Vip Model  Call Girls (Delhi) Karol Bagh 9711199171βœ”οΈBody to body massage wit...
Vip Model Call Girls (Delhi) Karol Bagh 9711199171βœ”οΈBody to body massage wit...shivangimorya083
Β 
Call Girls Hsr Layout Just Call πŸ‘— 7737669865 πŸ‘— Top Class Call Girl Service Ba...
Call Girls Hsr Layout Just Call πŸ‘— 7737669865 πŸ‘— Top Class Call Girl Service Ba...Call Girls Hsr Layout Just Call πŸ‘— 7737669865 πŸ‘— Top Class Call Girl Service Ba...
Call Girls Hsr Layout Just Call πŸ‘— 7737669865 πŸ‘— Top Class Call Girl Service Ba...amitlee9823
Β 
BabyOno dropshipping via API with DroFx.pptx
BabyOno dropshipping via API with DroFx.pptxBabyOno dropshipping via API with DroFx.pptx
BabyOno dropshipping via API with DroFx.pptxolyaivanovalion
Β 
BPAC WITH UFSBI GENERAL PRESENTATION 18_05_2017-1.pptx
BPAC WITH UFSBI GENERAL PRESENTATION 18_05_2017-1.pptxBPAC WITH UFSBI GENERAL PRESENTATION 18_05_2017-1.pptx
BPAC WITH UFSBI GENERAL PRESENTATION 18_05_2017-1.pptxMohammedJunaid861692
Β 
Junnasandra Call Girls: πŸ“ 7737669865 πŸ“ High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: πŸ“ 7737669865 πŸ“ High Profile Model Escorts | Bangalore...Junnasandra Call Girls: πŸ“ 7737669865 πŸ“ High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: πŸ“ 7737669865 πŸ“ High Profile Model Escorts | Bangalore...amitlee9823
Β 
Best VIP Call Girls Noida Sector 22 Call Me: 8448380779
Best VIP Call Girls Noida Sector 22 Call Me: 8448380779Best VIP Call Girls Noida Sector 22 Call Me: 8448380779
Best VIP Call Girls Noida Sector 22 Call Me: 8448380779Delhi Call girls
Β 
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al BarshaAl Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al BarshaAroojKhan71
Β 
Halmar dropshipping via API with DroFx
Halmar  dropshipping  via API with DroFxHalmar  dropshipping  via API with DroFx
Halmar dropshipping via API with DroFxolyaivanovalion
Β 
BigBuy dropshipping via API with DroFx.pptx
BigBuy dropshipping via API with DroFx.pptxBigBuy dropshipping via API with DroFx.pptx
BigBuy dropshipping via API with DroFx.pptxolyaivanovalion
Β 
BDSM⚑Call Girls in Mandawali Delhi >ΰΌ’8448380779 Escort Service
BDSM⚑Call Girls in Mandawali Delhi >ΰΌ’8448380779 Escort ServiceBDSM⚑Call Girls in Mandawali Delhi >ΰΌ’8448380779 Escort Service
BDSM⚑Call Girls in Mandawali Delhi >ΰΌ’8448380779 Escort ServiceDelhi Call girls
Β 
Mature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptxMature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptxolyaivanovalion
Β 
Delhi Call Girls CP 9711199171 β˜Žβœ”πŸ‘Œβœ” Whatsapp Hard And Sexy Vip Call
Delhi Call Girls CP 9711199171 β˜Žβœ”πŸ‘Œβœ” Whatsapp Hard And Sexy Vip CallDelhi Call Girls CP 9711199171 β˜Žβœ”πŸ‘Œβœ” Whatsapp Hard And Sexy Vip Call
Delhi Call Girls CP 9711199171 β˜Žβœ”πŸ‘Œβœ” Whatsapp Hard And Sexy Vip Callshivangimorya083
Β 
Midocean dropshipping via API with DroFx
Midocean dropshipping via API with DroFxMidocean dropshipping via API with DroFx
Midocean dropshipping via API with DroFxolyaivanovalion
Β 
Market Analysis in the 5 Largest Economic Countries in Southeast Asia.pdf
Market Analysis in the 5 Largest Economic Countries in Southeast Asia.pdfMarket Analysis in the 5 Largest Economic Countries in Southeast Asia.pdf
Market Analysis in the 5 Largest Economic Countries in Southeast Asia.pdfRachmat Ramadhan H
Β 

Recently uploaded (20)

Delhi Call Girls Punjabi Bagh 9711199171 β˜Žβœ”πŸ‘Œβœ” Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 β˜Žβœ”πŸ‘Œβœ” Whatsapp Hard And Sexy Vip CallDelhi Call Girls Punjabi Bagh 9711199171 β˜Žβœ”πŸ‘Œβœ” Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 β˜Žβœ”πŸ‘Œβœ” Whatsapp Hard And Sexy Vip Call
Β 
Invezz.com - Grow your wealth with trading signals
Invezz.com - Grow your wealth with trading signalsInvezz.com - Grow your wealth with trading signals
Invezz.com - Grow your wealth with trading signals
Β 
Generative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and MilvusGenerative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and Milvus
Β 
April 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's AnalysisApril 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's Analysis
Β 
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts ServiceCall Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
Β 
Vip Model Call Girls (Delhi) Karol Bagh 9711199171βœ”οΈBody to body massage wit...
Vip Model  Call Girls (Delhi) Karol Bagh 9711199171βœ”οΈBody to body massage wit...Vip Model  Call Girls (Delhi) Karol Bagh 9711199171βœ”οΈBody to body massage wit...
Vip Model Call Girls (Delhi) Karol Bagh 9711199171βœ”οΈBody to body massage wit...
Β 
Call Girls Hsr Layout Just Call πŸ‘— 7737669865 πŸ‘— Top Class Call Girl Service Ba...
Call Girls Hsr Layout Just Call πŸ‘— 7737669865 πŸ‘— Top Class Call Girl Service Ba...Call Girls Hsr Layout Just Call πŸ‘— 7737669865 πŸ‘— Top Class Call Girl Service Ba...
Call Girls Hsr Layout Just Call πŸ‘— 7737669865 πŸ‘— Top Class Call Girl Service Ba...
Β 
BabyOno dropshipping via API with DroFx.pptx
BabyOno dropshipping via API with DroFx.pptxBabyOno dropshipping via API with DroFx.pptx
BabyOno dropshipping via API with DroFx.pptx
Β 
BPAC WITH UFSBI GENERAL PRESENTATION 18_05_2017-1.pptx
BPAC WITH UFSBI GENERAL PRESENTATION 18_05_2017-1.pptxBPAC WITH UFSBI GENERAL PRESENTATION 18_05_2017-1.pptx
BPAC WITH UFSBI GENERAL PRESENTATION 18_05_2017-1.pptx
Β 
Junnasandra Call Girls: πŸ“ 7737669865 πŸ“ High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: πŸ“ 7737669865 πŸ“ High Profile Model Escorts | Bangalore...Junnasandra Call Girls: πŸ“ 7737669865 πŸ“ High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: πŸ“ 7737669865 πŸ“ High Profile Model Escorts | Bangalore...
Β 
Best VIP Call Girls Noida Sector 22 Call Me: 8448380779
Best VIP Call Girls Noida Sector 22 Call Me: 8448380779Best VIP Call Girls Noida Sector 22 Call Me: 8448380779
Best VIP Call Girls Noida Sector 22 Call Me: 8448380779
Β 
(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7
(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7
(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7
Β 
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al BarshaAl Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
Β 
Halmar dropshipping via API with DroFx
Halmar  dropshipping  via API with DroFxHalmar  dropshipping  via API with DroFx
Halmar dropshipping via API with DroFx
Β 
BigBuy dropshipping via API with DroFx.pptx
BigBuy dropshipping via API with DroFx.pptxBigBuy dropshipping via API with DroFx.pptx
BigBuy dropshipping via API with DroFx.pptx
Β 
BDSM⚑Call Girls in Mandawali Delhi >ΰΌ’8448380779 Escort Service
BDSM⚑Call Girls in Mandawali Delhi >ΰΌ’8448380779 Escort ServiceBDSM⚑Call Girls in Mandawali Delhi >ΰΌ’8448380779 Escort Service
BDSM⚑Call Girls in Mandawali Delhi >ΰΌ’8448380779 Escort Service
Β 
Mature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptxMature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptx
Β 
Delhi Call Girls CP 9711199171 β˜Žβœ”πŸ‘Œβœ” Whatsapp Hard And Sexy Vip Call
Delhi Call Girls CP 9711199171 β˜Žβœ”πŸ‘Œβœ” Whatsapp Hard And Sexy Vip CallDelhi Call Girls CP 9711199171 β˜Žβœ”πŸ‘Œβœ” Whatsapp Hard And Sexy Vip Call
Delhi Call Girls CP 9711199171 β˜Žβœ”πŸ‘Œβœ” Whatsapp Hard And Sexy Vip Call
Β 
Midocean dropshipping via API with DroFx
Midocean dropshipping via API with DroFxMidocean dropshipping via API with DroFx
Midocean dropshipping via API with DroFx
Β 
Market Analysis in the 5 Largest Economic Countries in Southeast Asia.pdf
Market Analysis in the 5 Largest Economic Countries in Southeast Asia.pdfMarket Analysis in the 5 Largest Economic Countries in Southeast Asia.pdf
Market Analysis in the 5 Largest Economic Countries in Southeast Asia.pdf
Β 

Icon18revrec sudeshna

  • 2. Deep Learning in Review Recommendation 2
  • 3. Feed forward network ● An artificial neuron β—‹ Receives inputs β—‹ Summation followed by a nonlinear activation. β—‹ Produces an output for next layer neurons ● Weights learnt through back propagation Source:https://en.wikipedia.org/wiki/Connectionism
  • 4. MultiLayer Perceptron xn x2 x1 am a1 o output x1 x2 xn Hidden neuron z1 a1= g(z1) w11 w12 w13 x W z|a sigmoid tanh ReLU gradient ~ 0
  • 5. xn x2 x1 x W[1] z[1]|a[1] W[2] output oK o2 o1 softmax MultiLayer Perceptron - loss functions Learn weights by minimizing the loss
  • 6. DL in Recommendation Systems ● Deep learning based models achieved the best performances and is a promising tool for recommender problems ● Representation plays an important role in Recommender Systems. Multiple sources of data may be leveraged for rich representation β—‹ Representation of users and items β—‹ Transactions β—‹ Content: Product description, Metadata, Reviews, Product Image β—‹ User demography β—‹ Product ontology 6
  • 7. Using all embeddings β€’ Multiple ways of learning/combining representations β€’ Example 1: (Adapted from one experiment at Flipkart Recommender System) β€’ Concatenate different pre-trained embeddings into a single vector β€’ Learn a simple Logistic Regression OR β€’ Feed into another ANN with softmax output (corresponding to purchase or clicks) β€’ Example 2: Joint learning of the embeddings β€’ Similar products - Locality Sensitive Hashing (LSH) on embeddings CF embedding Image embedding Text embedding Hidden layer Output layer
  • 8. Representation of Items, Users, Reviews Representation of items and/or users is necessary for getting a recommender system to work. β€’ One-hot representation β€’ Embedding as vectors: pre- trained β€’ Embedding can be learned on the task β€’ Item Representation 1. Based on item interaction sequences and item properties – Prod2vec, Meta Prod2vec etc 2. Based on user-item interaction β€’ Neural collaborative filtering: Model user-item interactions 3. User and item information (content) β€’ Review representation β€’ User representation
  • 9. Product Embedding Prod2vec or Item2vec : Product embedding β€’ Based on item-item co-occurrence from transaction sequences co-purhased products) β€’ Uses method of word embedding: low-dimensional, distributed embeddings of words based on word sequences in text documents 1. Barkan, Oren, and Noam Koenigstein. "Item2vec: neural item embedding for collaborative filtering." Machine Learning for Signal Processing (MLSP), 2016 IEEE 26th International Workshop on. IEEE, 2016. 2. Grbovic, Mihajlo, et al. "E-commerce in your inbox: Product recommendations at scale." Proceedings of the 21th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. ACM, 2015.
  • 10. β€’ Representation of words ``Similar words have similar contexts” 1. CBOW: P Word Context 2. Skipgram: P(Context|Word) Word2vec Input Projection Output Input Projection Output
  • 11. Skipgram Model β€’ Input: Central word 𝑀𝑀𝑑𝑑 β€’ Output: Words in its context: π’˜π’˜πœπœπœπœπœπœ π‘€π‘€π‘‘π‘‘βˆ’π‘π‘, … , π‘€π‘€π‘‘π‘‘βˆ’1 , 𝑀𝑀𝑑𝑑+1, … , 𝑀𝑀𝑑𝑑+𝑐𝑐 β€’ Each input word represented by a 1-hot encoding of size V Source Text: Deep Learning attempts to learn multiple levels of representation from data. Input output pairs : Positive samples: β€’ (representation, levels) β€’ (representation, of) β€’ (representation, from) β€’ (representation, data) Negative samples: β€’ (representation, x) [x: all other words except the 4 positive] 𝑀𝑀𝑑𝑑 𝑀𝑀𝑑𝑑+1 𝑀𝑀𝑑𝑑+𝑐𝑐 π‘€π‘€π‘‘π‘‘βˆ’π‘π‘ π‘€π‘€π‘‘π‘‘βˆ’1 INPUT PROJECTION OUTPUT
  • 12. Prod2vec Use word2vec on co-purchased products Purchase sequence of user u 𝑝𝑝𝑒𝑒𝑒, 𝑝𝑝𝑒𝑒𝑒, … , 𝑝𝑝𝑒𝑒𝑒𝑒 Skipgram applied on transaction sequence 𝑝𝑝𝑑𝑑 𝑝𝑝𝑑𝑑+1 𝑝𝑝𝑑𝑑+𝑐𝑐 π‘π‘π‘‘π‘‘βˆ’π‘π‘ π‘π‘π‘‘π‘‘βˆ’1 Input Projection Output Positive samples: Negative samples 𝑝𝑝𝑒𝑒,𝑑𝑑, 𝑝𝑝𝑒𝑒,π‘‘π‘‘βˆ’π‘π‘ 𝑝𝑝𝑒𝑒,𝑑𝑑, 𝑝𝑝𝑒𝑒,π‘‘π‘‘βˆ’1 𝑝𝑝𝑒𝑒,𝑑𝑑, 𝑝𝑝𝑒𝑒,𝑑𝑑+1 𝑝𝑝𝑒𝑒,𝑑𝑑, 𝑝𝑝𝑒𝑒,𝑑𝑑+𝑐𝑐 𝒑𝒑𝒕𝒕, 𝒑𝒑𝒄𝒄𝒄𝒄𝒄𝒄 𝑝𝑝𝑒𝑒,𝑑𝑑, p p is any product other than 𝑝𝑝𝑐𝑐𝑐𝑐𝑐𝑐
  • 13. Extensions of prod2vec 1. Meta prod2vec β€’ Use product metadata in addition to transaction sequence – Category, Brand, Description, etc – Embedded metadata added both to input and context 2. Several other *2vec models 𝑝𝑝𝑑𝑑 𝑝𝑝𝑑𝑑+1 𝑀𝑀𝑑𝑑+1 π‘π‘π‘‘π‘‘βˆ’1 Input Projection Output 𝑀𝑀𝑑𝑑 π‘€π‘€π‘‘π‘‘βˆ’1 π‘Šπ‘Šπ‘ƒπ‘ƒ π‘Šπ‘Šπ‘€π‘€
  • 14. Review Representation ● Word2vec for word representation (concept representation) ● Document or paragraph representation ● Averaging or summing of word vectors ● Paragraph or document vector using CNN, RNN, etc 17
  • 15. Convolution for Text this sequence of word vectors represents a text 𝑛𝑛 Γ— π‘˜π‘˜ representation of sentence 𝑐𝑐1 𝑐𝑐2 Filter of size 2 Γ— π‘˜π‘˜ Feature map of 1 filter π‘₯π‘₯1 π‘₯π‘₯2 π‘₯π‘₯𝑛𝑛 π‘₯π‘₯3 𝑐𝑐𝑖𝑖 = 𝑓𝑓 𝑀𝑀 βˆ™ π‘₯π‘₯𝑖𝑖:𝑖𝑖+β„Žβˆ’1 + 𝑏𝑏
  • 16. CNN for Text this sequence of word vectors represents a text 𝑛𝑛 Γ— π‘˜π‘˜ representation of sentence Feature maps of 𝑑𝑑 filters …….… π‘₯π‘₯1 π‘₯π‘₯2 π‘₯π‘₯𝑛𝑛 π‘₯π‘₯3
  • 17. CNN for Text: Kim’s CNN Kim, Yoon. "Convolutional neural networks for sentence classification." arXiv preprint arXiv:1408.5882 (2014).
  • 18. Kim’s CNN ● Word embedding ● Padding to size n Dropout Rescale the weight vectors of each class to fixed number s 1. Convolution layer 2. Max-pooling layer 𝑐𝑐̂ = max 𝑐𝑐 3. Fully connected layer with softmax output
  • 19. Dynamic k-max pooling Handles sentences of varying length k is a function of the sentence length and network depth π‘˜π‘˜π‘™π‘™ = max π‘˜π‘˜π‘‘π‘‘π‘‘π‘‘π‘‘π‘‘, 𝐿𝐿 βˆ’ 𝑙𝑙 𝐿𝐿 βˆ™ 𝑠𝑠 π‘™π‘™οΌšcurrent convolution layer 𝐿𝐿:Number of convolutional layers 𝑠𝑠: Sentence length π‘˜π‘˜π‘‘π‘‘π‘‘π‘‘π‘‘π‘‘οΌšfixed pooling parameter for the topmost convolutional layer Neural Network for Modeling Sentences” by Nal Kalchbrenner, Edward Grefenstette, Phil Blunsom arXiv, 2014
  • 20. CNN to find Document Latent Vector β€’ CNN Architecture to generate document latent vector. 23 Item Text Review, etc. Convolution Maxpooling . . .. . .. . .. . . . . .. . .. . .. . . . . .. . .. . .. . . . . .. . .. . .. . . βˆ— π‘˜π‘˜π‘—π‘—β€¦ Output layer Projection Document Latent Vector
  • 21. Recurrent Neural Networks: make use of sequential information 24 Input at time step 𝑑𝑑 βˆ’ 1 Hidden state at time step t Output state at time step t Activation function
  • 23. Long term dependencies ● In practice, RNNs cannot capture long term dependencies. 26
  • 25. Long Short Term Memory (LSTMs) 28 ● Provide highway to pass cell state (or memory). ● LSTM can add or remove information to the cell state through regulated structures called gates. LSTM has three gates to protect and control cell state
  • 26. f u LSTMs – Details Forget Update + tanh output tanh softmax o Ct-1 ht-1 xt Ct ht C~ t yt
  • 27. Forget gate ● Forget gate layer decides what information will be thrown away ● Looks at β„Žπ‘‘π‘‘βˆ’1 and π‘₯π‘₯𝑑𝑑 and outputs a number between 0 and 1 ● 1 represents completely keep this, 0 represents completely get rid of this ● Example: forget the gender of the old subject, when we see a new subject 30
  • 28. Update ● A sigmoid layer (input gate layer): decides what values we’ll update ● A tanh layer: creates a vector of new candidate values, 𝐢𝐢𝑑𝑑 οΏ½ 31 Input gate layer tanh layer
  • 29. Update 32 β€’ Update old state by πΆπΆπ‘‘π‘‘βˆ’1 into the new cell state 𝐢𝐢𝑑𝑑 β€’ Multiply old state by 𝑓𝑓𝑑𝑑 β€’ Forgetting the things we decided to forget earlier β€’ Then we add 𝑖𝑖𝑑𝑑 βˆ— 𝐢𝐢𝑑𝑑 οΏ½
  • 30. Output ● A sigmoid layer decides what parts of the cell state to output ● Put the cell state through tanh and multiply it by the output of the sigmoid gate 33
  • 31. Gated Recurrent Unit ● Replace forget (f) and input (i) gates with an update gate (z) ● Introduce a reset gate (r ) that modifies ht-1 ● Eliminate internal memory ct Source: http://colah.github.io/posts/2015-08-Understanding-LSTMs/
  • 33. Attention Mechanism ● Pool of source states ● Retrieve as needed 36
  • 34. Attention - Context 37 𝑐𝑐𝑑𝑑 = οΏ½ π‘Žπ‘Žπ‘‘π‘‘ 𝑠𝑠 β„ŽοΏ½π‘ π‘  𝑠𝑠 β„Žπ‘‘π‘‘ = 𝑓𝑓(β„Žπ‘‘π‘‘βˆ’1, 𝑐𝑐𝑑𝑑, 𝑒𝑒𝑑𝑑)
  • 35. Sentence Modeling ● Word Average ● CNN ● LSTM: A sentence 𝑠𝑠 is transformed to a fix-length vector 𝑒𝑒𝑠𝑠 by recursively applying a LSTM unit to each word embedding 𝑒𝑒𝑀𝑀𝑑𝑑 and the previous step β„Žπ‘‘π‘‘βˆ’1. ● BiLSTM: Bi-directional LSTM (BiLSTM) captures both the left and right context. β—‹ Two hidden states β„Žπ‘‘π‘‘ 𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓 and β„Žπ‘‘π‘‘ 𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑀𝑀𝑀𝑀𝑀𝑀𝑀𝑀 are concatenated into a final hidden state β„Žπ‘‘π‘‘ 𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏 38
  • 36. Joint deep modelling of Users and Items using Review for Recommendation ● A shared layer helps couple latent factors learned for user behavior and item properties from reviews by two parallel networks 39 Joint deep modelling of Users and Items using Review for Recommendation, Lei Zheng, Vahid Noroozi, Philip S. Yu, WSDM 2017
  • 37. DeepCONN Architecture 40 User Review Text Item Review Text Factorization Machine TCNNu TCNNi π‘₯π‘₯𝑒𝑒 𝑦𝑦𝑖𝑖 User Network Item Network
  • 38. 41 Li P, Wang Z, Ren Z, Bing L, Lam W. Neural rating regression with abstractive tips generation for recommendation, SIGIR 2017. Abstractive Tips Generation ● Gated recurrent neural networks help translate user and item latent representations into concise abstractive tips with good linguistic quality simulating user experience and feelings ● Deep Composite Model : MLP and RNN ● Two Tasks 1. Rating prediction with MLP 2. Tips Generation
  • 39. 42
  • 40. Neural Rating Tips ● Examples of the predicted ratings and the generated tips. ● The first line of each group shows the generated rating and tips. ● The second line shows the ground truth. 43
  • 41. Unified Representation By translating various sources (e.g., review, rating) into a unified representation space, heterogeneous information can be integrated for informed recommendation. 44 Zhang Y, Ai Q, Chen X, Croft WB. Joint representation learning for top-n recommendation with heterogeneous information sources, CIKM 2017.
  • 42. NAPRE: Neural Attentional Rating Regression with Review-level Explanations ● To predict a rating given a user and an item, as well as to select both useful and representative reviews. ● Useful reviews are obtained through a attention mechanism and provide explanations for users to make better and faster decisions. ● NAPRE learns the usefulness of each review. 45 Chen C, Zhang M, Liu Y, Ma S. Neural Attentional Rating Regression with Review-level Explanations, WWW 2018.
  • 43. TextCNN ● CNN text Processor: inputs a sequence of words and outputs a n-dimensional vector representation for the input. 46
  • 44. NAPRE ● Utilize the attention mechanism to assign weights to reviews when modeling users and items. ● Two parallel neural networks for user modeling and item modeling. ● A prediction layer to let the hidden latent factors of user and item interact. ● The training data consists of users, items, and text reviews. ● Test stage: only users and items are available. 47
  • 45. Item Modelling ● CNN Text Processor is applied to process the textual reviews of item i. ● Each review of i is transformed into a matrix of word vectors, (Vi1, Vi2,...Vik). ● These matrixes are sent to the convolutional layer and the feature vectors of them can be obtained from the output as (Oi1, Oi2, ...Oi j) . ● Attention mechanism is used to learn the weight of each review. 48
  • 46. Attention-based Review Pooling ● Select reviews that are representative to item i’s features ● Aggregate the representation of informative reviews to characterize item i. ● A two-layer network is applied to compute the attention score π‘Žπ‘Žπ‘–π‘–π‘–π‘– . ● The input contains the feature vector of the lth review of item i (𝑂𝑂𝑖𝑖𝑖𝑖) and the user who wrote it ● (ID embedding, 𝑒𝑒𝑖𝑖𝑖𝑖 ) models the quality of users, helps identify users who always write less-useful reviews. 49
  • 47. Attention-based Review Pooling ● The attention network: π‘Žπ‘Žβˆ— 𝑖𝑖𝑖𝑖 = β„Žπ‘‡π‘‡ π‘Ÿπ‘Ÿπ‘Ÿπ‘Ÿπ‘Ÿπ‘Ÿπ‘Ÿπ‘Ÿ π‘Šπ‘Šπ‘‚π‘‚ 𝑂𝑂𝑖𝑖𝑖𝑖 + π‘Šπ‘Šπ‘’π‘’ 𝑒𝑒𝑖𝑖𝑖𝑖 + 𝑏𝑏1 + 𝑏𝑏2 ● Normalize: π‘Žπ‘Žπ‘–π‘–π‘–π‘– = exp(π‘Žπ‘Žβˆ— 𝑖𝑖𝑖𝑖) βˆ‘ exp(π‘Žπ‘Žβˆ— 𝑖𝑖𝑖𝑖)π‘˜π‘˜ 𝑖𝑖=0 ● the feature vector of item i: 𝑂𝑂𝑖𝑖 = βˆ‘ π‘Žπ‘Žπ‘–π‘–π‘–π‘– 𝑂𝑂𝑖𝑖𝑖𝑖𝑙𝑙=1β€¦π‘˜π‘˜ ● The output of the attention-based pooling layer is a k1 dimensional vector ● A fully connected layer computes the final representation of item i: π‘Œπ‘Œπ‘–π‘– = π‘Šπ‘Š0 𝑂𝑂𝑖𝑖 + 𝑏𝑏0 50
  • 48. NAPRE: Prediction Layer ● NAPRE extends user preferences and item features in LFM model to two components: one based on ratings while the other based on reviews. ● A neural form LFM used for predicting ratings. ● the latent factors of user and item are mapped to a shared hidden space. ● The interaction between u and i is modelled as: β„Ž0 = (π‘žπ‘žπ‘’π‘’ + 𝑋𝑋𝑒𝑒)⨀(𝑝𝑝𝑖𝑖 + π‘Œπ‘Œπ‘–π‘–) 51
  • 49. NAPRE: Prediction Layer ● The interaction between u and i is modelled as: β„Ž0 = (π‘žπ‘žπ‘’π‘’ + 𝑋𝑋𝑒𝑒)⨀(𝑝𝑝𝑖𝑖 + π‘Œπ‘Œπ‘–π‘–) ● π‘žπ‘žπ‘’π‘’ and 𝑝𝑝𝑖𝑖 are user preferences and item features based on ratings from LFM ● 𝑋𝑋𝑒𝑒 and π‘Œπ‘Œπ‘–π‘– are user preferences and item features obtained from the above method ● ⨀ denotes the element-wise product of vectors. ● The output is a n-d vector, passed to prediction layer: 𝑅𝑅�𝑒𝑒,𝑖𝑖 = 𝑀𝑀1 𝑇𝑇 β„Ž0 + 𝑏𝑏𝑒𝑒 + 𝑏𝑏𝑖𝑖 + πœ‡πœ‡ 52
  • 51. Aspect Similarity Recognition using Deep Learning ● Two sentences are identified as aspect similar if they mention at least one aspect in common 55 A Deep Learning Study of Aspect Similarity Recognition Huy-Tien Nguyen, Quan-Hoang Vo, and Minh- Le Nguyen, 2018
  • 52. Recommendation of High Quality Representative Reviews in E-commerce Recsys 2017, Debanjan Paul, Sudeshna Sarkar (IIT Kharagpur) Muthusamy Chelliah, Chetan Kalyan, Prajit Nadkarni (Flipkart)
  • 53. Product Reviews Aspect and Sentiment Extraction Review Selection Preserves Statistical Distribution Subset of β€˜k’ Reviews Aspect Synonymy Detection Review Quality Estimation Set of annotated review data Distribution of aspects and sentiments Product aspects and sentiments Review quality score System Architecture
  • 54. Product Reviews Aspect and Sentiment Extraction Review Selection Preserves Statistical Distribution Subset of β€˜k’ Review s Aspect Synonymy Detection Review Quality Estimation Set of annotated review data Distribution of aspects and sentiments Product aspects and sentiments Review quality score Extracts product aspect phrases along with the corresponding sentiments from each reviews of the item. E.g. The lens of this camera is great. Considers semantic similarity between aspects to merge similar aspects. E.g. β€˜Photo’, β€˜Picture’, β€˜camera’ refer to the same feature of a mobile phone. Estimates review quality score from its textual content Representative Reviews Covers different product aspects and sentiments. Preserves the statistical distribution of product aspects and opinions.
  • 55. Aspect Extraction Extracts product aspect phrases from each reviews of the item along with the sentiments expressed about them. Sample Input: The picture quality is great. It also has cool looks. But the phone hangs sometimes, if you install too many apps. Output: picture quality,+1 ; looks,+1 ; processor,-1 Qiu, Guang, et al. "Opinion word expansion and target extraction through double propagation." Computational linguistics 37.1 (2011) Use a semi-supervised technique based on bootstrapping from a small opinion lexicon. Utilize several syntactic relations that link opinion words and targets to expand the initial opinion lexicon and to extract targets.
  • 56. Evaluation of Aspect and Sentiment Extraction Module β€’ Used 300 reviews from mobile phone, camera and blue tooth headsets product in Amazon dataset β€’ Manually annotated to find the correct aspect phrases and corresponding sentiment No. of reviews 300 Actual no of aspect phrases 660 No of extracted aspect phrases 630 Correctly extracted aspect phrases 468 Precision 70.90%
  • 57. Aspect Synonymy Detection General Display Processor Memory Camera Connectivity Multimedia Charging 56% 47% 16% 6% 29% 49% 34% 36% Audio quality Video Recording Sound quality Photo Camera Bluetooth headset RAM Picture quality Touch Screen Battery life … 2% 0% 1% 1% 10% 6% 0% 2% 1% 7% β€’ 125 reviews of an β€œAsus Zenfone Max”. β€’ 35 aspects before: audio quality, video recording, sound, photo, camera, bluetooth headset, RAM, picture quality, touch screen, battery life, picture, clock speed, frequency, OS, SIM, packaging, network, model, ROM, pixel, LED, button, power, price, formats, display, disk, processing, configuration, thing, smartphone, support, resolution. Use word embeddings of words and phrases. Merge phrases with similar word vectors. 8 aspects obtained.
  • 58. Evaluation of Aspect Similarity Detection Module β€’ We extracted aspect phrases for 10 products in mobile phone domain and mapped the extracted aspect phrases with the Flipkart catalogue aspects. β€’ We have manually evaluated the correctness of the mappings obtained. β€’ The accuracy of our aspect similarity detection module is 83.75%. Aspect Category #Extracted aspect phrases Correctly mapped Incorrectly mapped Camera 360 342 18 Connectivity 135 63 72 Dimension 99 45 54 Display 306 198 108 General 423 333 90 Memory 27 27 0 Multimedia 45 27 18 OS 207 207 0 Others 1062 963 99 Not Mapped 216 207 9 Total 2880 2412 468
  • 59. Review Quality Estimation β€’ Some review recommendation systems use review helpfulness score as the parameter to judge review quality. β€’ New reviews do not have any helpfulness score (cold start). β€’ Not all sites capture helpfulness score. β€’ We develop a CNN (convolutional neural network) to estimate the quality score of the textual reviews. – Simple CNN – Dynamic CNN with k-max pooling
  • 60. Dynamic Convolutional Neural Network Architecture Input Layer β€’ All reviews of a product (length s) β€’ Each word is embedded as a d-dim vector. Convolutional Layer β€’ A convolution matrix is applied to input matrix S (filter size of m) Dynamic K-max pooling layer β€’ Selects K most active features. β€’ K is determined dynamically as a function of the length of the sentence and depth of the network . 𝐾𝐾𝑙𝑙 = max 𝐾𝐾𝑑𝑑𝑑𝑑𝑑𝑑, 𝐿𝐿 βˆ’ 𝑙𝑙 βˆ— 𝑠𝑠 𝐿𝐿�
  • 61. Dynamic Convolutional Neural Network Architecture Folding β€’ Elements in two rows of the matrix are added component wise in order to obtain a reduced matrix of dimension d/2. Fully Connected Layer β€’ Fully connected softmax layer.
  • 62. Experiments β€’ Amazon dataset. β€’ Reviews from six different product domains – electronics, clothing, books, shoes, music, watches β€’ Accuracy: – CNN: 71% – DCNN: 83% Number of reviews 34,686,770 Number of users 6,643,669 Number of products 2,441,053 Users with > 50 reviews 56,772 Median number of words per review 82 Timespan Jun 1995 – Mar 2013
  • 63. Review Selection β€’ Given a corpus of reviews R on an item, find a k-size subset S βŠ† R of reviews that accurately capture the proportion of opinions of the item’s features. β€’ For t = 1 to k 1. Pick one review r Ο΅ R to form subset S(t) βŠ† R 2. so that the distance D( Ο€( S(tβˆ’1) βˆͺ {r}), Ο„) is minimized, where 𝝅𝝅 is the percentage distribution of the aspects in the set 𝝅𝝅(S) and D is the L2 2 norm of their difference i.e. 𝑫𝑫 𝝅𝝅, 𝝉𝝉 = π‘³π‘³πŸπŸ 2 𝝅𝝅 βˆ’ 𝝉𝝉 = βˆ‘ 𝝅𝝅 π’Šπ’Š βˆ’ 𝝉𝝉 π’Šπ’Š πŸπŸπ’Žπ’Ž π’Šπ’Š=𝟏𝟏 , where m is the total number of extracted aspects. Lappas, Theodoros, Mark Crovella, and Evimaria Terzi. "Selecting a characteristic set of reviews." Proceedings of the 18th ACM SIGKDD international conference on Knowledge discovery and data mining. ACM, 2012
  • 64. Sample Output β€’ Product Name: Plantronics Voyager 510 Bluetooth Headset β€’ Number of Reviews : 465 β€’ Number of Attributes (Catalogue Attributes) : 8 β€’ Original attribute distribution: General Display Processor Memory & Storage Camera Connectivity Multimedia Charging 60% 60% 20% 0% 20% 40% 40% 40% General Display Processor Memory & Storage Camera Connectivity Multimedia Charging 56% 47% 16% 6% 29% 49% 34% 36% Resulting attribute distribution in recommended reviews:
  • 65. System Evaluation We have recommended three sets of reviews for 8 products based on: β€’ RQS: Explicit review helpfulness score. β€’ CNN: Quality score of review estimated by CNN β€’ DCNN: Quality score of review estimated by DCNN β€’ CRS: Characteristic Review Selection algorithm. β€’ COMB: Combined approach β€’ 3 sets of 5 reviews from the methods are given to 10 human annotators to rank the methods from 1 to 3. β€’ Ranking done on basis of which set of reviews defines the product best
  • 66. Comparison of RQS,CNN and DCNN method β€’ DCNN has an accuracy of 83% wrt RQS β€’ Plain CNN has 70%. β€’ COMB is declared as the best method in 60% of the reports obtained from annotators. β€’ COMB approach has the lowest rank. Method Percentage Average Rank RQS 35 1.925 CNN 20 2.2625 DCNN 45 1.7875 Method Percentage Average Rank CRS 15 2.175 CNN 25 2.2125 COMB 60 1.6125
  • 67. Live Evaluation of the system at Flipkart Live Evaluation of COMB method against default recommendation system at Flipkart β€’ 100 sorted reviews recommended by COMB method for 24 random products in mobile phone category. β€’ 25% of users experience the reviews recommended by our method while rest experience the default behavior. β€’ Impact is measured in number of transactions (Txns) per product page visit (PPV). 0 0.5 1 1.5 2 Product1 Product3 Product5 Product7 Product9 Product11 Product13 Product15 Product17 Product19 Product21 Product23 Default COMB β€’ COMB shows an increase in product purchase for 10 products. β€’ Default recommendation system performs better in case of 5 products. β€’ Similar performance in case of 9 products.
  • 68. Live Evaluation of the system at Flipkart β€’ Net product transaction increase by 1.85% out of 1 million product units by using COMB. β€’ COMB combines quality score of reviews with the product aspects and sentiments along with maintaining statistical distribution of opinions found in underlying corpus. β€’ COMB has performed better than both CNN and default recommendation system at Flipkart live testing. Algorithm Txns PPV Default 1777 313776 COMB 1781 308782 Increase in conversion by 1.85%
  • 69. List of reviews recommended by CRS method Current List of reviews recommended by COMB I love my headset. It is clear and comfortable. I could wear it all day. Works well, good audio quality, battery lasts a long time. I bought this model for my wife after her last one died. It was her third or fourth..? I've lost track. This model does not compare to the others; it's much better. It hooked up easy to her Verizon phone and sounds clear on BOTH ends. I hear her fine and her voice is crisp and clear. What else is there? Oh yes, price.... around $40...Buy one, you will not be sorry. I have been using this headset for about a month. The sound quality is better than most headsets that I have used. One day when it was very windy there was a little too much wind noise in the mic for the person that I was speaking to. The device automatically connected to my RAVR phone so connection was not an issue. I am not crazy about the connect button on the mic arm, and open the phone to connect to calls The set comes with three different sizes of ear pieces which makes it fit well for almost everyone. The battery life on this device is amazing Doesn't work. Will be sending back---home. Tried pairing it up over 10 times with Iphone, which is with Verizon, and it did not work with phone. Expecting a refund back when I get the CD back to send with the rest of items. Thank you anyway. I bought the 510 based on the volume of positive reviews. Well if this truly is the best Bluetooth headset then I'm going back to using a wired headset. Sound quality was poor, people couldn't hear me if there was any background noise and the ear pieces were all uncomfortable.
  • 70. Personalised review recommendation in e-commerce 74 Mtech thesis of Surjodoy Ghosh Dastider, IIT Kharagpur, 2018 Review 1: Good UI, user-friendly, sturdy Review 2: Poor battery life and performance of apps ... User 1: Prefers user- friendly phones User 2: Prefers high- performance phones Product: Mobile Phone XYZ
  • 71. Methodology Our proposed review recommendation system performs the following tasks: 1. Extract aspects and corresponding sentiments from all reviews and questions in a given product domain. 2. Represent each review, product and user as a probability distribution over topics. 3. Generate helpfulness/quality score for each review. 4. Generate the desired aspect distribution in the recommended set of reviews, using product and user profiles. 5. Select an optimal subset of reviews to recommend to a user. 6. Use user cluster profiles instead of individual user profiles. 75
  • 73. Domain Topic Identification ● We use a topic model, Sentiment-LDA (Li ’10) for aspect based sentiment analysis (ABSA), to extract product aspects and corresponding sentiments. ● Given a product domain, we discover the optimal number of global topics T for all product reviews in that domain. ● For each topic-sentiment pair, we retrieve the top 30 words 77
  • 75. Representation of Reviews and Products We analyze each review r to get a vector V(r) of size 2*T. Similarly, we find vectors from questions available in the e-commerce platform. For each product P, we aggregate vectors of all reviews Rev(P) written for that product to generate the product vector V(P). V (P) = Ξ£r∈Rev(P) V (r) 79
  • 76. Representation of Users For each user U, we used three sources of information: ● Reviews written by that user Revu(u) UR(u) = Ξ£r ∈ Revu(u)V (r) ● Questions asked by that user Ques(u) UQ(u) = Ξ£q ∈ Ques(u)V (q) ● Reviews up-voted/down-voted by that user Vote(u) UV(u) = Ξ£r ∈ Vote(u) V (r) Each such user vector gives the distribution of topics over each user, or the aspects that each user is interested in. Some or all of them can be used to build the user profile U(u). 80
  • 77. Personalization Strategy The base review recommendation model considers the product vector V(P) as the desired distribution of topics with sentiments in the recommended review set. A personalized system needs to take the user interests into consideration. For this we use the user profile U(u). We felt that it is important to balance the inputs from U(u) as well as V(P) to form the desired topic distribution in the recommended review set. Thus the desired distribution is given by D(p, u) = f(V(p), U(u)). 81
  • 78. Personalization Strategy (contd.) We considered the following forms for the composition: D(p, u) = V(p)Ξ± . U(u)Ξ² 1. V(p): Ξ± = 1, Ξ² = 0. 2. U(u): Ξ± = 0, Ξ² = 1. 3. A combination of both the terms, obtained by keeping Ξ± = 1 and varying Ξ². A higher value of Ξ² corresponds to more aggressive personalization. 82
  • 80. User Clustering Drawback: Latency issues when used in a online e-commerce platform. The reviews to be recommended to a user may be pre-computed in order to serve users in real time. Workaround: Group users based on the similarity of their user profiles so that different review recommendations may be associated with each group. Used a clustering algorithm (k-means) to group the users based on their aspect preferences for each domain and created c groups of users. Computed the mean vector U(Ci) of each group, and replaced the user's own vector U(u) with the mean vector U(Ci) of the user's group. 84
  • 81. Dataset Mobile Phones Number of Reviews: 100000 Number of Products: 5987 Number of Users: 93434 85 Computers Number of Reviews: 40958 Number of Products: 3455 Number of Users: 39336 ● Used reviews from the product review dataset of Flipkart. ● Each review item includes product title, user info, review rating, and plaintext review. ● Reviews chosen from two popular product domains - mobile phones and computers.
  • 82. Evaluation Strategy A way to evaluate the system is to check whether the reviews recommended by the system are found to be helpful to the user. We can find whether the reviews of a product that a user actually up-voted were recommended by the review recommendation algorithm. We used the offline review up-vote data by users for this purpose. 86
  • 83. Evaluation Strategy Supposing that from the review set R = Rev(p), RU is the set up-voted by the user, and S is the set recommended. We evaluate the performance of our system using average Precision and average Recall. Precision: Percentage of reviews in the recommended set S which have been up-voted. Recall: Percentage of up-voted reviews RU returned in the recommended set S. 87
  • 84. Experiments 1. For aspect-sentiment extraction, 6 topics were taken for cell phones and 8 topics were taken for computers. Number of sentiments was taken as 2. 2. We used the following Dirichlet priors for our topic model: Ξ± = 0.1, Ξ² = 0.01, Ξ³ = 1. 3. Using the resulting global topics, we created vectors of size 6*2=12 for each mobile phone review, and of size 8*2=16 for each computer review. Based on this we created product profiles for each product using Rev(p), and user profiles for each user by using three sources of information: UR(u), UQ(u) and UV(u). 88
  • 85. Experiments 4. We used the following different combinations of the aforementioned user vectors to obtain the final user vector U(u) for our personalization step: a. UR = UR(u) b. URQ = UR(u) + UQ(u) c. URV = UR(u) + UV(u) d. URQV = UR(u) + UQ(u) + UV(u) 5. Given a user u, a product p, its reviews Rev(p), we recommended a subset SK u,p of K reviews using our algorithm based on our desired distribution D(p, u). 89
  • 86. Testing We took N=1000 products from each domain with the highest review count. For each product, we randomly selected one user who has up-voted more than three reviews of that product, thus creating N product-user pairs. For each product-user pair, we generated K recommendations. We experimented with the recommendation set size K, using values of 5, 10 and 15. 90
  • 87. Results ● The system's recall for both domains increases with increase in K. ● We found that the user profile URQV computed using all information works best. ● We next ran the grouping based recommendation and experimented for group sizes of 5, 10 and 15. We found that the results using the group profile is better than the non-personalized case even for 5 groups. In most cases the results are better with more number of groups (c). ● For the mobile phone domain with K=5, the best precision was 11.57% for c=15 as compared to 12.04% for the individual approach. ● The best recall obtained for K=15 is 26.76% for mobile phones and 23.85% for computers. 91
  • 88. Results for mobile phone domain, K = 15, individual profiles 92
  • 89. Results for computer domain, K = 15, individual profiles 93
  • 90. Group Personalization Results, K = 15, D(p,u) = V(p) Β· U(u)5 94 Mobile Phones Computers
  • 91. Conclusions and Future Work ● Our system for personalized review recommendation using individual profiles performs better than other proposed systems addressing the same problem. ● The group based implementation is novel and makes our system practical. ● We plan to perform live testing and check the effectiveness of our method in increasing product purchases. 95