Explainable Restricted Boltzmann Machine for Collaborative Filtering

Tanay Karmarkar
Aug 20, 2018 · 3 min read

Restricted Boltzmann Machine is a type of artificial neural network which is stochastic in nature. Restricted Boltzmann Machine is a special type of Boltzmann Machine.

What’s Boltzmann Machine?

Boltzmann Machine is a neural network with only one visible layer commonly referred as “Input Layer” and one “Hidden Layer”. So there is no output layer. It was used to solve combinatoric problems. The neurons within the hidden layers and visible layers were also connected in between.

What is Restricted Boltzmann Machine?

There is some restriction on the Boltzmann Machine and that is that there are no connections within visible and hidden layer. Visible and hidden layers would a fully connected layer with this restriction to top it.

RBMs are also used in dimensionality reduction, topic modeling, collaborative filtering. Collaborative filtering is a method very popular among recommendation systems.

The Famous Case of Netflix Recommender System:

A researcher called Salakhutdinov et al in 2007 proposed a method to Netflix for the recommender system using Restricted Boltzmann Machine. It turned that this model outperformed their own recommender engine.

Problem with this model: The mail goal of this model was the prediction accuracy and not the explainability that why top-k recommendations are generated for a particular user.

In 2016, Behnoush Abdollahi and Olfa Nasraoui proposed a method of explainable RBM which is the topic for this Article.

The following was the Explainability Score what they defined to improve the model:

where “i” represents item which in this case is movies, “u” is for the user, N is set of user u’s k-neighbors, Rmax is the maximum rating obtained by the item in N.

Neighbors are determined on the basis of cosine similarity, missing ratings were considered 0.

Interpretation of Explainability Score:

Explainability Score lies between zero and one. If there is no explanation of the recommendation, then the score will be zero and if there is a full explanation of the recommendation, then it will 1. Explanation comes from the fact that they have included the neighbors of the user and rating for the movie as well and then it is taking into account the gold standard rating for that group and if that value is zero then there is a pretty good chance that the item should not be recommended.

This value is also fed along with the movie ratings to predict the ratings of the movie for users. So, this model is known to outperform the previous methods in different cases.

How did they evaluated the model performance?

RMSE was calculated for the rating prediction on the test set. It performed better than every other model for f > 20, f is the hidden units. This was the metrics for rating prediction but to evaluate top-n recommendations that were generated, they have used normalised discounted cumulative gain (nDCG@10) that is specifically used to determine the relevance of the position. It outperformed for f < 20 than other models.

Link to the research paper: https://arxiv.org/pdf/1606.07129.pdf

Also tagged Data Analysis

Also tagged Data Analysis

Pandas Cheat Sheet

Also tagged Data Science

Also tagged Data Science

K-Means Clustering From Scratch