Skip to content

Latest commit

 

History

History
25 lines (18 loc) · 1.74 KB

README.md

File metadata and controls

25 lines (18 loc) · 1.74 KB

Movie-Recommendation-System

Our Deep Learning Model will predict which user is going to like which movie using the recommendation system using Boltzmann Machine So we are going to build this two models with Restricted Boltzmann machines and Auto encoders and we are going to calculate the train loss and test loss we are going to use average distance to evalute our RBM. We obtained the loss of 0.25 which means we have obtained 75% of accuracy. I would like other developers to run it on the 1 million data set provided and test the code via pull request. I am open to modifications of code for improvements

If you want to check that 0.25 corresponds to 75% of success, you can run the following test:
                import numpy as np
                u = np.random.choice([0,1], 100000)
                v = np.random.choice([0,1], 100000)
                u[:50000] = v[:50000]
                sum(u==v)/float(len(u)) # -> you get 0.75
                np.mean(np.abs(u-v)) # -> you get 0.25

I dive into dataset and we preprocessed the dataset into a list of users and user ratings for different movies. we converted training set and test into torch tensors.

I have built a class of RBM using using pytorch libraries and created a RBM class with contrastive divergence to approximate gradient and update weights

Dataset Courtesy: Dataset Courtesy

Additional Resources:

Pytorch Documentation

Introduction to Restricted Boltzmann Machines