← All Projects

Yelp Restaurant Recommendation System

Recommending restaurants from Yelp reviews using both collaborative filtering and content-based NLP

Overview

Help Yelp users discover restaurants they will love by learning from the reviews and ratings other diners have already left.

Methodology

flowchart LR
  A["User-Item Ratings"] --> B[EDA & Filtering]
  B --> C["Approaches: Popularity / Collaborative Filtering / SVD"]
  C --> D["Evaluate: RMSE / Precision@K"]
  D --> E[Top-N Recommendations]

The Data (Yelp Reviews)

The dataset is hundreds of thousands of Yelp restaurant ratings, where each row is one diner rating one restaurant.

Exploratory Analysis

Looking at the ratings shows most diners only post when they love a place, and a handful of restaurants dominate the reviews.

Collaborative Filtering

These models predict how a user would rate a restaurant by learning patterns from similar users and similar restaurants.

Content-Based (TF-IDF / NLP)

This approach reads the actual review text to recommend restaurants that are described in similar ways.

Key Takeaways

Combining what diners rate with what they write about produces stronger, more flexible restaurant recommendations.

Tech Stack

Attribution

This project was completed as part of the MIT Applied Data Science Program (MIT IDSS / Great Learning). The program provided the case-study scaffolding; the analysis, code, and results are my own. Published with permission, for portfolio use only.