Skip to content
SukhdeepGill edited this page Apr 23, 2018 · 42 revisions

Get Recced: App Recommendation using Reviews and Ratings

Abstract:

In this project we examined how recommender systems work (better or worse) if we take advantage of the review texts along with the review ratings. We aimed to combine latent ratings with latent review topics and analyze the results. Our assumption was that combining the review text with ratings would help the recommender system make better predictions. Hence, we compared different models on Amazon Apps dataset and calculated RMSE.

We Compared and evaluated the following recommendation models:

  • Baseline model
  • Collaborative Filtering
  • Latent Dirichlet Allocation (LDA)
  • Hidden Factors as Topics (HFT)

Datasets Used:

Amazon App Dataset:

{
“reviewerID”: “A1N4O8VOJZTDVB”,
“asin”: “B004A9SDD8”,
“reviewerName”: “Annette Yancey”,
“helpful”: [1, 1],
“reviewText”: “Loves the song, so he really couldn’t wait to play this. A little less interesting for him so he doesn’t play long, but he is almost 3 and likes to play the older games, but really cute for a younger child.”, “overall”: 3.0,
“summary”: “Really cute”,
“unixReviewTime”: 1383350400,
“reviewTime”: “11 2, 2013”
}

{
“reviewerID”: “A2HQWU6HUKIEC7”,
“asin”: “B004A9SDD8”,
“reviewerName”: “Audiobook lover \”Kathy\"",
“helpful”: [0, 0],
“reviewText”: “Oh, how my little grandson loves this app. He’s always asking for \”Monkey.\" Grandma has tired of it long before he has. Finding the items on each page that he can touch and activate is endlessly entertaining for him, at least for now. Well worth the $.99.", “overall”: 5.0, “summary”: “2-year-old loves it”,
“unixReviewTime”: 1323043200,
“reviewTime”: “12 5, 2011”
}

Data Distribution:

About half of the items have ratings of 5.

Average rating is 3.96.

As shown in the second graph, most of the items have ratings around or over 4.

User Rating Behavior and Item Rating Relationship:

On an average, an item has 57 ratings. On an average, a user rates about 9 items.

Latent Dirichlet Allocation (LDA)

Every word in a review texts belongs to one or more topics. Using LDA, we can only observe the text and words, not the topic themselves. We tried to find these hidden topics in the text reviews and below is the distribution of these topics.

Results

Results on full dataset

Approach 0 (Global Mean) Approach 1 (Biases) Approach 2 (CF) Approach 3 (SVD) Approach 4 (LDA) Approach 5 (HFT)
RMSE 1.32 1.23 Mexico 1.1822 Francisco Chang 1.56
MAE 1.06 0.93 Mexico 0.9127 Francisco Chang 1.13

Results on small dataset

Approach 0 (Global Mean) Approach 1 (Biases) Approach 2 (CF) Approach 3 (SVD) Approach 4 (LDA) Approach 5 (HFT)
RMSE 1.26 1.37 1.33 1.1854 1.4 1.7405
MAE 0.98 1.00 0.93 0.9112 1.03 1.285548

Discussion

HFT is dataset size dependent. As the dataset size increases, the value of “ratings” over “reviews” decreases, that is, reviews become more important. Thus, when we ran on the 5-core dataset, we got better results for baseline methods as compared to HFT. But on the complete datasets, the HFT model got better results as seen in the Julian’s paper.

Challenges

  • Creating a test set such that all items & users are in the train set too.
  • LDA Topics are not well defined for the dataset we chose.
  • No ground truth for the predictions by using review texts only.

Ethical Considerations

  • Recommending violent/inappropriate apps to children?
  • User profiles used for personalized recommendation may be used for malicious purposes like
  • Profile injection is also a possible attack to push or nuke items.

References

Julian McAuley and Jure Leskovec. 2013. Hidden factors and hidden topics: understanding rating dimensions
with review text. In Proceedings of the 7th ACM conference on Recommender systems (RecSys ’13). ACM, New
York, NY, USA, 165-172. DOI=http://dx.doi.org/10.1145/2507157.2507163

Clone this wiki locally