Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Hybrid Recommendation Systems in News Media usi...

Tuhin Sharma
September 01, 2018

Hybrid Recommendation Systems in News Media using Probabilistic Graphical Models

A typical undertaking of recommender frameworks is to enhance customer experience through prior implicit feedback, by providing relevant content from time to time. These systems actively track different sorts of user behavior, such as buying pattern, watching habits browsing activity etc., in order to model user preferences. Unlike the much more extensively explored explicit feedback, we do not have any direct input from the users regarding their preferences. Where understanding the content is important, it is non-trivial to explain the recommendations to the users.

When a new customer comes to the system it is very difficult to provide relevant recommendations to the customer by traditional state-of-art collaborative filtering based recommendation systems, where content-based recommendation does not suffer from this problem. On the other hand, content-based recommendation systems fail to achieve good performance when the user profile is not very well defined, where collaborative filtering does not suffer from this problem. So, there is a need to combine the power of these two recommendation systems and create a hybrid recommendation system which can address this problem in a more effective and robust way. Large media and edtech companies in emerging markets are using a version of this approach.

Tuhin Sharma

September 01, 2018
Tweet

More Decks by Tuhin Sharma

Other Decks in Technology

Transcript

  1. • Why Hybrid RecSys? • What is PGM? • Our

    Approach. • Implementation. • Future Scope.
  2. Why Hybrid Recommender System? • Content Based ◦ No scope

    of serendipity ◦ Over-specialization ◦ Does not use the interaction information between users • Collaborative Filtering ◦ Content is unpopular. ◦ Cold start problem.
  3. Probabilistic Graphical Model P(A,B,C) = P(A) * P(B) * P(C|A,B)

    P(B=1|C=1) = !(#$%,'$%) !('$%) = ! )$*,#$%,'$% +!()$%,#$%,'$%) ! )$*,#$*,'$% +! )$%,#$*,'$% +! )$*,#$%,'$% +!()$%,#$%,'$%) = *.*-./+*.***. *.*0.%+*.**/-+*.*-./+*.***. = 0.3478
  4. Why we need PGM? • Latent similarity and dependency between

    genres/categories. • Easy to explain recommendation. • Handles cold-start problem. • Easy to add new items/contents.
  5. Approach • Unweighted dependency graph (UDG) ◦ LDA (Latent Dirichlet

    Allocation) ◦ Content Based • Probabilistic Graphical Model ◦ Co-occurrence Matrix ◦ Bayesian Network ◦ Collaborative Based
  6. UDG and PGM (Approach contd.) content_id_5 genre_1 genre_2 topic_1 topic_2

    topic_3 topic_4 content_id_1 content_id_2 content_id_3 content_id_4 genre_1 genre_2 content_id_1 content_id_2 content_id_5 content_id_3 content_id_4 Explicit Connections Derived Connections
  7. Implementation • Vertically Scalable ◦ Pgmpy ◦ Pymc ◦ Libpgm

    ◦ Pomegranate • Horizontally Scalable ◦ Edward on Tensorflow. ◦ Pymc3 on Theano Available at https://github.com/tuhinsharma/recsys-pgm/blob/master/hybrid-pgm-recsys.ipynb
  8. Pomegranate Performance content count (number of nodes in PGM) Number

    of user viewership Model Size Training Time Prediction Time 20K 5K 18.3 MB 508 sec 4 sec 30K 5K 27.4 MB 749 sec 9 sec 40K 5K 36.6 MB 1049 sec 16 sec 50K 5K 45.8 MB 1347 sec 26 sec 200K 5K 183.4 MB 5833 sec / 1.6 hrs ~2 min 300K 5K 274.4 MB 10732 sec / 2.9 hrs ~3 min 400K 5K 366.5 MB 18901 sec / 5.3 hrs ~5 min Performance of Pomegranate CPU – 8, Memory – 16 GB
  9. Summary • Size of CPT for node n with m

    number of parents is 234%. ◦ Ontology creation should be smart enough. • DAG (Directed Acyclic Graph) ◦ Bayesian Belief Propagation. (pomegranate) • Scalability ◦ Variational inference. (edward)