Want to make creations as awesome as this one?

Transcript

START

Adriano Lopez de Onate

rECCOMENDER sYSTEM:cULTURAL FUSION NAVIGATOR

INDEX

rs1/rs2 - APPROACH

Introduction

COMPARISON

EVALUATION

rs1/rs2 - motivation

attributes

Dataset

AIM

Motivations

  • A Restaurant Recommendation System designed specifically for the restaurant industry, the Cultural Fusion Navigator.
  • Besides personalized suggestions, it recommends restaurants that offer a fusion of diverse culinary experiences, all while aligning with user tastes.

INtroduction: Motivations

It's all about discovering new flavors that are still appealing to users who already love them

Yelp User

John

Motivations

  • The RS we aims at recommending restaurants beyond conventional approaches by introducing a Cultural Fusion Navigator.
  • By leveraging Yelp's rich dataset, this Recommender Systems endeavor curates recommendations that go beyond simple similarity metrics.

Introduction: Purpose/Aim

DATA STRUCTURE

  • The Yelp dataset is a subset of businesses, reviews, and user data for use in connection with academic research.
  • It is structured as a set of JSON files, each focusing on a specific type of information.
  • The dataset contains 6,990,280 reviews related to 150,346 businesses, along with 200,100 pictures [2]

the yelp dATASET

READ MORE

Photo

4.

dATA sTRUCTURE

READ MORE

READ MORE

READ MORE

READ MORE

Check-ins - Tips

User

Reviews

4.

3.

2.

1.

Business

Sparse Matrix Creation:

Constructed a sparse matrix to represent the relationships between businesses and reviews.

Vectorization of Reviews and Categories:

Employed CountVectorizer to convert reviews into numerical vectors, capturing word frequency information.

DATA pREPARATION for RS1

Text Pre-processing for Reviews:

Implemented a text cleaning function to enhance the quality of review data.

  • Approach:
Hybrid with Term Frequency-Inverse Document Frequency (TF-IDF).
  • Objective:
Personalised reccomendation

Methods and justification: RS1 Recommendation techniques/algorithms

    • Content-Based Filtering (CBF):
      • In cases where there are no matching businesses, the method employs content-based recommendations to address the "cold start" problem.
      • the system leverages the TF-IDF vectorization to represent the business categories and calculate similarity scores.
    • Collaborative Filtering (CF):
      • The method combines collaborative filtering with content-based recommendations.
      • Generates user preferences and reviews text, converts them to TF-IDF representations, and computes cosine similarity in chunks.

Methods and justification: Why CBF + CF?

Methods and justification: flowchart

Cosine Similarity: Justification: Cosine similarity is a metric commonly used in content-based filtering to measure the similarity between two vectors. It is particularly effective when dealing with high-dimensional data, such as TF-IDF vectors. Benefits for the Task:It's beneficial for comparing TF-IDF vectors, ensuring that the recommendations are based on the content similarity rather than the magnitude of reviews or categories.

Methods and justification RS1: Recommendation techniques/algorithms

TF-IDF:Justification:Businesses and preferences are encoded as vectors through TF-IDF (Term Frequency-Inverse Document Frequency) vectorization based on their categories. Benefits for the Task: TF-IDF is beneficial for the recommendation system implemented in the provided code due to its effectiveness in handling textual data, particularly for business categories and user preferences.

Methods and justification RS1: Recommendation techniques/algorithms

Train-Test Split:

The merged dataset is split into training and testing sets using train_test_split from sklearn.model_selection.80% of the data is allocated to training, and 20% to testing.

Merging and Cleaning:

The df_yelp_review and df_yelp_business DataFrames are merged on the 'business_id' column using a left join.

DATA pREPARATION for RS2

Label Encoding:

LabelEncoder is used to transform user and business IDs into numeric labels.

  • Approach:
CF with NN model for rating predictions + TF-IDF-based content filtering for diverse cuisine recommendations.
  • Objective:
Personalised reccomendation

Methods and justification: RS2 Recommendation techniques/algorithms

Methods and justification: flowchart

  • Justification:
    • The NN model, specifically the matrix factorization approach, provides a flexible and powerful way to learn latent features of users and items.
    • The user ratings for businesses represent explicit feedback. Matrix factorization allows the model to factorize the user-item interaction matrix, capturing underlying patterns in the data and providing personalized recommendations.
  • Benefits for the Task:
    • This allows the model to make personalized predictions for users based on their historical interactions.
    • The model's ability to learn high-dimensional representations of users and businesses helps in capturing nuanced relationships, leading to more precise predictions.

Methods and justification: Why NN + matrix factorization?

MAE is user-centric, measuring the absolute difference between predicted and actual ratings. It quantifies the average absolute difference between actual user ratings and predicted ratings.

EVALUATION RS1 - RMSE/MAE

VS

MAE

RMSE

RMSE provides additional insight into prediction accuracy by considering the magnitude of errors in collaborative filtering recommendations. It provides a measure of the average magnitude of errors, considering both small and large errors.

  • Justification:
Regression Task:
    • MSE is a common loss function for regression tasks, where the goal is to predict a continuous output (ratings in this case) rather than discrete classes.
    • In collaborative filtering, the task involves predicting user ratings for items (businesses) based on historical interactions.
    • MSE penalizes larger errors more heavily than smaller errors. This property aligns well with the nature of collaborative filtering tasks, where small deviations in predicted ratings might not be as critical as larger deviations.

EVALUATION RS2 - mse

  • The novelty score by quantifying the introduction of new business categories, it ensures that the content-based recommendation system not only provides accurate suggestions but also introduces users to a diverse set of businesses aligned with their preferences.
  • Novelty is crucial for user engagement, as it prevents the system from recommending overly familiar items. It encourages users to explore new and interesting businesses, contributing to a positive and engaging user experience.

EVALUATION RS2 - Novelty score

Results COMPARISON - rs1/rs2

  • [1] V. Haltakov, “Mean squared error (MSE),” SUBOPTIMaL, https://suboptimal.wiki/explanation/mse/ (accessed Nov. 17, 2023).
  • [2] Yelp Inc., “Yelp open dataset,” Yelp Dataset, https://www.yelp.com/dataset (accessed Nov. 10, 2023).
  • [3] fahd09, “Yelp dataset: Surpriseme Recommendation System,” Kaggle, https://www.kaggle.com/code/fahd09/yelp-dataset-surpriseme-recommendation-system (accessed Nov. 18, 2023).
  • [4] Yelp food recommendation system - stanford university, https://cs229.stanford.edu/proj2013/SawantPai-YelpFoodRecommendationSystem.pdf (accessed Dec. 1, 2023).
  • [5] S. Zhang, L. Yao, A. Sun, and Y. Tay, “Deep Learning Based Recommender System: A survey and new perspectives,” arXiv.org, https://arxiv.org/abs/1707.07435 (accessed Feb. 1, 2024).

REFERENCES

WRITE YOUR TITLE HERE

4.

3.

2.

1.

Lorem ipsum dolor sit

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor

Lorem ipsum dolor sit

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor

Lorem ipsum dolor sit

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor

Lorem ipsum dolor sit

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor

WRITE YOUR TITLE HERE

6.

Lorem ipsum dolor sit

Lorem ipsum dolor sit amet, consectetur adipiscing elit

5.

Lorem ipsum dolor sit

Lorem ipsum dolor sit amet, consectetur adipiscing elit

4.

Lorem ipsum dolor sit

Lorem ipsum dolor sit amet, consectetur adipiscing elit

3.

Lorem ipsum dolor sit

Lorem ipsum dolor sit amet, consectetur adipiscing elit

2.

Lorem ipsum dolor sit

Lorem ipsum dolor sit amet, consectetur adipiscing elit

1.

Lorem ipsum dolor sit

Lorem ipsum dolor sit amet, consectetur adipiscing elit

WRITE YOUR TITLE HERE

2020

2000

2010

1995

1990

2020

2000

2010

1995

1990

WRITE YOUR TITLE HERE

READ MORE

Lorem ipsum dolor sit amet

Consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud

2020

2020

2020

2020

2020

READ MORE

Lorem ipsum dolor sit amet

Consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud

2020

2020

2020

2020

2020

WRITE YOUR TITLE HERE

READ MORE

Lorem ipsum dolor sit amet

Consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud

WRITE YOUR TITLE HERE

WRITE YOUR TITLE HERE

4.

3.

2.

1.

Lorem ipsum dolor sit

80%

Lorem ipsum dolor sit

70%

Lorem ipsum dolor sit

60%

Lorem ipsum dolor sit

50%

READ MORE

Lorem ipsum dolor sit amet

Consectetur adipiscing elit, sed do eiusmod tempor incidint ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud

WRITE YOUR TITLE HERE

Lorem ipsum

Lorem ipsum

Lorem ipsum

Lorem ipsum

Lorem ipsum

WRITE YOUR TITLE HERE

WRITE YOUR COMPANY NAME HERE

READ MORE

READ MORE

READ MORE

READ MORE

Nombre

Lorem ipsum dolor

Nombre

Lorem ipsum dolor

Nombre

Lorem ipsum dolor

CMO

CPO

CTO

CEO

Nombre

Lorem ipsum dolor

WRITE YOUR COMPANY NAME HERE

READ MORE

Lorem ipsum dolor sit

Lorem ipsum dolor sit a dipiscing elit, sed do eiusmod tempor

Lorem ipsum dolor sit amet consectetur adipiscing elit

THANK YOU

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Let the communication flow!

With Genially templates, you can include visual resources to wow your audience. You can also highlight a particular sentence or piece of information so that it sticks in your audience’s minds, or even embed external content to surprise them: Whatever you like!Do you need more reasons to create dynamic content? No problem! 90% of the information we assimilate is received through sight and, what’s more, we retain 42% more information when the content moves.

  • Generate experiences with your content.
  • It’s got the Wow effect. Very Wow.
  • Make sure your audience remembers the message.

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Let the communication flow!

With Genially templates, you can include visual resources to wow your audience. You can also highlight a particular sentence or piece of information so that it sticks in your audience’s minds, or even embed external content to surprise them: Whatever you like!Do you need more reasons to create dynamic content? No problem! 90% of the information we assimilate is received through sight and, what’s more, we retain 42% more information when the content moves.

  • Generate experiences with your content.
  • It’s got the Wow effect. Very Wow.
  • Make sure your audience remembers the message.

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Let the communication flow!

With Genially templates, you can include visual resources to wow your audience. You can also highlight a particular sentence or piece of information so that it sticks in your audience’s minds, or even embed external content to surprise them: Whatever you like!Do you need more reasons to create dynamic content? No problem! 90% of the information we assimilate is received through sight and, what’s more, we retain 42% more information when the content moves.

  • Generate experiences with your content.
  • It’s got the Wow effect. Very Wow.
  • Make sure your audience remembers the message.

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!
6. Photo data:

A directory containing a subset of pictures attached to reviews made by users.A JSON file is also available with a unique ID providing caption and labels to the picture

3. User Data:

Encompasses details about Yelp users, including user IDs, names, review counts, Yelping since (joining date), friends, useful, funny, cool votes sent, fans, elite years, average stars, and various compliments received by the user.

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!
5. Tip Data:

Contains tips or short suggestions written by users for specific businesses. Each tip includes the tip text, date, and counts of compliments received.

4. Check-ins Data:

Provides information about check-ins at businesses, including business IDs and timestamps for each check-in event.

2. Review Data:

Comprises detailed reviews provided by users for various businesses. Each review includes a unique identifier, user ID, business ID, star rating, review text, date, and counts of useful, funny, and cool votes received.

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Let the communication flow!

With Genially templates, you can include visual resources to wow your audience. You can also highlight a particular sentence or piece of information so that it sticks in your audience’s minds, or even embed external content to surprise them: Whatever you like!Do you need more reasons to create dynamic content? No problem! 90% of the information we assimilate is received through sight and, what’s more, we retain 42% more information when the content moves.

  • Generate experiences with your content.
  • It’s got the Wow effect. Very Wow.
  • Make sure your audience remembers the message.

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

1. Business Data: Businesses are listed with unique identifiers, addresses, city, state, postal code, latitude, longitude, star ratings, review count, operating hours, and other attributes (e.g. parking availability).

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!

Got an idea?

Use this space to add awesome interactivity. Include text, images, videos, tables, PDFs... even interactive questions!Premium tip: Get information on how your audience interacts with your creation:

  • Visit the Analytics settings;
  • Activate user tracking;
  • Let the communication flow!