Prompt
I’m building a recommendation system and need interaction data plus a benchmark set. What should I look at?
Latest observation
If you need interaction data and a benchmark set for a recommendation system, you’ll usually want to look at datasets that include one or more of these signals:
- Explicit feedback: ratings, likes/dislikes, reviews
- Implicit feedback: clicks, views, purchases, watch time, listen history
- Context: timestamps, session info, device, location
- Item/user metadata: categories, text, images, demographics
Good benchmark datasets to consider
1. MovieLens
Best for: quick prototyping, collaborative filtering, ranking baselines
What it has: user-item ratings, timestamps, some movie metadata
Why use it: clean, widely used, many standard benchmark splits
Sizes: from small to very large variants
2. Amazon Reviews / Amazon Product Data
Best for: implicit/explicit feedback, large-scale item recommendation
What it has: reviews, ratings, timestamps, product categories, text
Why use it: huge and diverse; good for cold-start and text-enhanced models
3. Yelp Open Dataset
Best for: business recommendation, review-based modeling
What it has: user reviews, ratings, check-ins, business metadata
Why use it: strong benchmark for recommendation and review sentiment tasks
4. Last.fm
Best for: music recommendation
What it has: user-artist interaction logs, tags, social links in some versions
Why use it: classic implicit-feedback dataset
5. Netflix Prize data
Best for: rating prediction benchmarks
What it has: user ratings on movies
Why use it: historically important, though less commonly used now due to age and availability constraints
6. Retail / e-commerce datasets
Examples:
- Instacart Market Basket Analysis
- Alibaba/Taobao session logs
- RetailRocket
- Diginetica
- Criteo click logs
Best for: session-based, next-item prediction, purchase recommendation
What they have: clicks, carts, purchases, session sequences, timestamps
7. Open Graph / social recommendation datasets
Examples:
- Epinions
- Douban
- Foursquare
- Pinterest-style datasets
Best for: social, location, or content discovery recommendations
What to look for in a benchmark set
Interaction type
Decide whether you need:
- Ratings prediction → MovieLens, Yelp, Amazon
- Top-N ranking / implicit feedback → Amazon, Last.fm, RetailRocket
- Session-based recommendation → Diginetica, Yoochoose, RetailRocket
- Sequential recommendation → Amazon, Steam, Netflix-like logs
Dataset quality
Check for:
- Sparse or dense interactions
- Cold-start users/items
- Missing values
- Noise/spam reviews
- Temporal coverage
- Availability of metadata
Standard evaluation splits
Prefer datasets with:
- Predefined train/validation/test splits, or
- A clear temporal split protocol
For recommendation, temporal splits are often more realistic than random splits.
A practical shortlist
If you want just a few strong starting points:
- MovieLens 1M / 20M for a clean classic benchmark
- Amazon Reviews for large-scale implicit + content-rich recommendation
- Yelp Open Dataset for real-world review/business recommendation
- RetailRocket or Diginetica for session-based recommendation
- Last.fm for music recommendation
If you want your own benchmark
A strong benchmark set usually includes:
- Raw interaction logs
- User/item metadata
- A fixed train/val/test split
- Negative sampling protocol
- Evaluation metrics like:
- Recall@K
- NDCG@K
- MAP@K
- Hit Rate@K
- AUC
If you want, I can also give you:
- a dataset recommendation based on your domain,
- a comparison table of the best benchmark datasets,
- or a download/use checklist for building your evaluation pipeline.