Skip to content

🎡 A hybrid recommendation system for Amazon Digital Music (2023) combining TF-IDF, collaborative filtering, and popularity models into an interactive Streamlit app.

Notifications You must be signed in to change notification settings

VK-Venkatesh/digital-music-hybrid-recommender

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

20 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🎡 digital-music-hybrid-recommender

This project implements a hybrid recommender system trained on the Amazon Reviews 2023 Digital Music dataset by McAuley Lab. It integrates content-based (TF-IDF + cosine), collaborative (item-based + SVD), and popularity-based (Bayesian weighted) recommendation techniques to produce personalized digital music recommendations.

The system provides an interactive Streamlit web interface that allows users to upload .jsonl review and metadata files, explore top-rated songs or albums, and adjust model weights dynamically to balance content, collaborative, and popularity signals.

Built for reproducible RecSys benchmarking, it features:

  • Fine-grained data cleaning and merging of reviews and metadata

  • TF-IDF text vectorization on titles, categories, and descriptions

  • Sparse cosine similarity and latent SVD embeddings for collaborative filtering

  • Weighted hybrid blending with user-adjustable sliders

  • Tabbed visualization for Popular, Content-based, Collaborative, and Hybrid recommendations

    Excellent β€” I’ve reviewed your uploaded Time_Series_Model.py script. It’s a Streamlit-based hybrid recommender system (Content-based + Collaborative + Popularity + Hybrid blend) built for the Amazon Digital Music dataset (2023) from McAuley Lab.


🎡 Digital Music Hybrid Recommender System

Streamlit App License Python

A hybrid recommendation system for Amazon Digital Music Reviews (2023), built using Streamlit, TF-IDF, and Collaborative Filtering.
This project blends popularity, content-based, and collaborative approaches to generate personalized digital music recommendations.


πŸ“˜ Dataset

This model uses the Amazon Reviews 2023 β€” Digital Music dataset from McAuley Lab:

Feature Description
Reviews 571M+ user-item interactions (May 1996 – Sep 2023)
Metadata Rich item info (title, category, description, etc.)
Granularity Timestamps at the second-level
Splits Standard RecSys train/test splits

βš™οΈ Features

βœ… Load and clean .jsonl reviews and metadata
βœ… TF–IDF based content similarity model
βœ… Item–item collaborative filtering (cosine + SVD)
βœ… Popularity (Bayesian weighted mean) ranking
βœ… Hybrid weighted recommender (configurable weights)
βœ… Fully interactive Streamlit interface
βœ… User-controlled tuning sliders and data uploads


🧠 Model Architecture

Module Technique Description
Popularity Bayesian average Weighted rating using vote counts
Content-based TF-IDF + Cosine similarity Textual similarity on title + category + description
Collaborative Sparse cosine NN + SVD Item–item matrix factorization
Hybrid Weighted fusion Combines all scores via linear weights

🧩 Tech Stack

  • Python 3.9+
  • Streamlit for deployment/UI
  • scikit-learn (TF-IDF, SVD, NearestNeighbors)
  • pandas, NumPy, SciPy
  • McAuley Lab Amazon Dataset (2023)

Launch the app

streamlit run Time_Series_Model.py

Upload Data

You can:

  • Use default file paths (if placed in data/)
  • Or upload .jsonl review and meta files via the Streamlit sidebar

πŸ§ͺ Example Weights for Hybrid Blend

Component Default Weight
Content-based 0.45
Collaborative 0.45
Popularity 0.10

πŸ“ˆ Output Tabs

Tab Description
Popular Top-N Bayesian weighted items
Content-based TF-IDF cosine recommendations
Collaborative Item–item cosine + SVD latent factors
Hybrid Final blended recommendations

🧾 Citation

If you use this dataset or pipeline, please cite:

He, Ruining, McAuley, Julian. Amazon Product Data 2023 (McAuley Lab, UCSD). πŸ“‘ Paper


πŸ“Έ Demo Screenshot

Streamlit Demo


🧰 Folder Structure

.
β”œβ”€β”€ Time_Series_Model.py     # Streamlit app
β”œβ”€β”€ requirements.txt
β”œβ”€β”€ data/                    # Example .jsonl data
β”œβ”€β”€ assets/                  # Screenshots or demo
β”œβ”€β”€ notebooks/               # Optional exploration
└── models/                  # Saved models (TF-IDF, SVD, etc.)

πŸͺ„ Future Improvements

  • βœ… Integrate HuggingFace embeddings for better semantic similarity
  • βœ… Add session-based or sequence models (e.g., SASRec, BERT4Rec)
  • πŸ”œ Deploy on Streamlit Cloud or HuggingFace Spaces
  • πŸ”œ Add user profiling and A/B testing

πŸ“œ License

This project is licensed under the MIT License.


πŸ‘¨β€πŸ’» Author

Venkatesh Data Science | Machine Learning | Recommender Systems πŸ“§ venkateshvarada56@gmail.com 🌐 LinkedIn Profile

About

🎡 A hybrid recommendation system for Amazon Digital Music (2023) combining TF-IDF, collaborative filtering, and popularity models into an interactive Streamlit app.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages