This project implements a collaborative recommendation engine using a Gaussian-Bernoulli Restricted Boltzmann Machine (RBM).
The model is a Restricted Boltzmann Machine (RBM) optimized for collaborative filtering. A Gaussian-Bernoulli variant was chosen to handle continuous movie ratings (0.5 to 5.0) instead of simple binary inputs.
The system uses the MovieLens small dataset.
- Python 3.x
- PyTorch
- Pandas
- NumPy
- Matplotlib
- Seaborn
- Scikit-learn
- Ipywidgets
- Open
rbmRecommender.ipynbin a Jupyter environment. - Run the notebook cells to:
- Download and preprocess the dataset.
- Train the RBM model.
- Generate and evaluate recommendations.
- Use the interactive search box to get top 10 recommendations for a specific User ID.