{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Content-Based Recommender System: Urban Bites\n", "\n", "**Data Analytics & Data Mining** \n", "**Created by: Dr. Yaa**
\n", "**Demo Notebook 5A: Recommendation Systems (Content-Based Filtering)**\n", "\n", "---\n", "\n", "## The Business Problem\n", "\n", "**Urban Bites** is a fast-casual restaurant chain with 64 menu items across 8 categories. They want to build a **personalized recommendation engine** that suggests menu items to customers based on their past order history.\n", "\n", "### Why does this matter?\n", "\n", "Think about your own experience — when you open DoorDash or UberEats, you see \"Recommended for You.\" Those aren't random picks. They're the result of a recommendation system analyzing what you've ordered (and rated) before.\n", "\n", "For Urban Bites, better recommendations mean:\n", "- **Higher average order value** (customers discover items they'll love)\n", "- **Lower decision fatigue** (a 64-item menu is overwhelming)\n", "- **Increased repeat visits** (personalized experience = loyalty)\n", "\n", "### PAIR Framework\n", "\n", "| Element | This Project |\n", "|---|---|\n", "| **P**rediction | Which menu items will a customer rate highly? |\n", "| **A**ction | Show personalized \"Top 5 For You\" on the app/kiosk |\n", "| **I**mpact | +15% average order value, +20% item discovery rate |\n", "| **R**isk | Filter bubble (never showing new items), recommending out-of-stock items |" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "---\n", "\n", "## Choosing the Right Technique\n", "\n", "There are two main approaches to building a recommendation system:\n", "\n", "| Approach | How It Works | Best When... |\n", "|---|---|---|\n", "| **Content-Based** | Looks at *item attributes* (spicy, vegetarian, premium) and matches them to what a user already likes | You have good item metadata; new items with no ratings yet |\n", "| **Collaborative** | Looks at *other users* who are similar to you and recommends what they liked | You have lots of user-item ratings; item attributes are hard to define |\n", "\n", "**Today's notebook: Content-Based Filtering.** We'll build a \"taste profile\" for each customer based on the *attributes* of items they've rated, then find new items that match that profile.\n", "\n", "> **Think of it this way:** If you've given 5 stars to three spicy items and two high-protein items, the system learns you like spicy + protein-packed food — and recommends other items with those same attributes." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "---\n", "\n", "## Phase 1: Load & Explore the Data\n", "\n", "We have three datasets:\n", "- `urban_bites_menu.csv` — 64 menu items with attributes (Spicy, Vegetarian, Premium, etc.)\n", "- `urban_bites_ratings.csv` — ~6,000 customer-item ratings (0.5 to 5.0 scale)\n", "- `urban_bites_customers.csv` — 200 customer profiles with segments" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Libraries loaded successfully!\n" ] } ], "source": [ "# ── Imports ──────────────────────────────────────────────────────\n", "import pandas as pd\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns\n", "from sklearn.metrics.pairwise import cosine_similarity\n", "import warnings\n", "warnings.filterwarnings('ignore')\n", "\n", "# Set a clean visual style\n", "plt.style.use('seaborn-v0_8-whitegrid')\n", "plt.rcParams['figure.figsize'] = (10, 5)\n", "plt.rcParams['font.size'] = 11\n", "\n", "print('Libraries loaded successfully!')" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Menu items: 64 rows × 14 columns\n", "Ratings: 6214 rows × 3 columns\n", "Customers: 200 rows × 5 columns\n" ] } ], "source": [ "# ── Load the data ───────────────────────────────────────────────\n", "menu_df = pd.read_csv('urban_bites_menu.csv')\n", "ratings_df = pd.read_csv('urban_bites_ratings.csv')\n", "customers_df = pd.read_csv('urban_bites_customers.csv')\n", "\n", "print(f'Menu items: {len(menu_df)} rows × {menu_df.shape[1]} columns')\n", "print(f'Ratings: {len(ratings_df)} rows × {ratings_df.shape[1]} columns')\n", "print(f'Customers: {len(customers_df)} rows × {customers_df.shape[1]} columns')" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
item_iditem_namecategorypriceSpicyVegetarianHighProteinGlutenFreeDairyFreeHeartyLightPremiumComfortInternational
01001Classic Smash BurgerBurger14.250000010010
11002BBQ Bacon BurgerBurger17.700010010010
21003Mushroom Swiss BurgerBurger16.390000010010
31004Spicy Jalapeño BurgerBurger15.591000010010
41005Veggie Black Bean BurgerBurger12.940100010010
51006Truffle BurgerBurger12.940000010110
61007Hawaiian Teriyaki BurgerBurger12.350000010011
71008Blue Cheese BurgerBurger17.200000010010
81009Margherita PizzaPizza17.611100000000
91010Pepperoni PizzaPizza18.250001100000
\n", "
" ], "text/plain": [ " item_id item_name category price Spicy Vegetarian \\\n", "0 1001 Classic Smash Burger Burger 14.25 0 0 \n", "1 1002 BBQ Bacon Burger Burger 17.70 0 0 \n", "2 1003 Mushroom Swiss Burger Burger 16.39 0 0 \n", "3 1004 Spicy Jalapeño Burger Burger 15.59 1 0 \n", "4 1005 Veggie Black Bean Burger Burger 12.94 0 1 \n", "5 1006 Truffle Burger Burger 12.94 0 0 \n", "6 1007 Hawaiian Teriyaki Burger Burger 12.35 0 0 \n", "7 1008 Blue Cheese Burger Burger 17.20 0 0 \n", "8 1009 Margherita Pizza Pizza 17.61 1 1 \n", "9 1010 Pepperoni Pizza Pizza 18.25 0 0 \n", "\n", " HighProtein GlutenFree DairyFree Hearty Light Premium Comfort \\\n", "0 0 0 0 1 0 0 1 \n", "1 1 0 0 1 0 0 1 \n", "2 0 0 0 1 0 0 1 \n", "3 0 0 0 1 0 0 1 \n", "4 0 0 0 1 0 0 1 \n", "5 0 0 0 1 0 1 1 \n", "6 0 0 0 1 0 0 1 \n", "7 0 0 0 1 0 0 1 \n", "8 0 0 0 0 0 0 0 \n", "9 0 1 1 0 0 0 0 \n", "\n", " International \n", "0 0 \n", "1 0 \n", "2 0 \n", "3 0 \n", "4 0 \n", "5 0 \n", "6 1 \n", "7 0 \n", "8 0 \n", "9 0 " ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Let's look at our menu — each item has binary attribute flags\n", "menu_df.head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Quick Exploration: What's on the menu?\n", "\n", "Before we build anything, let's understand our data. Good analysts always explore first." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABWkAAAHmCAYAAAABRAzBAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjgsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvwVt1zgAAAAlwSFlzAAAPYQAAD2EBqD+naQAApOhJREFUeJzt3QucTdX///HPuA+5SwmVFEUIEbkkUUIpolRCpQspt0IXlW6kUrnEt6ToSklS30QqoitKKBKSSyS3cjfj/3iv33/P98yYMbczs/c55/V8POYxM2fOnLPP2nufs/ZnfdZnxR05cuSIAQAAAAAAAAB8kcefpwUAAAAAAAAACEFaAAAAAAAAAPARQVoAAAAAAAAA8BFBWgAAAAAAAADwEUFaAAAAAAAAAPARQVoAAAAAAAAA8BFBWgAAAAAAAADwEUFaAAAAAAAAAPARQVoAAAAAAAAA8BFBWiDCdenSxapWreq+mjRpYkeOHDnqPoMGDUq6j76Crnnz5m479dpCffzxxzZq1Cjftita7N+/3yZPnmzXX3+9nXfeeXb22Wdb06ZNXXtPmTLFDhw4kOXHnjp1qr3yyith3V4AABB9fVf191IT2m8Nkm+//db69u1rF154odWoUcPq169vl112mT355JP2xx9/+L15EWPatGlJ+/ebb74Jy2OGXuek9XXuuedabrymDRs2ZOuxdCyFbveHH36Y5n1/+uknd22U8jl///13d/vPP/+coefU/3vPp9eS1m3hlN1rhn///ddGjx5tl19+udWuXdsaNWpk1113nX300UepXg8DkSKf3xsAIHy2bt1qS5cutVq1aiXdlpiYaF988UXEN7M+bB9//HHbsmWL9e7d2+/NiVhqv5tvvtlWrVrlfi9fvrxVrlzZdcR08aEvdcTGjRtnJUqUyHRnaejQoXb88cdbt27dcugVAAAA5K7hw4fbyy+/7H4uXLiwVa9e3fbu3Wu//vqr61O99dZbLiimQBH8oz7o6aefnurftN8iwQcffHDU723atEn1vgpyzpw50w0YVKhQIen2d99918aPH+/6+WeddVa6z1moUCFr2LCh+7ls2bKW07J7zaD/79y5szv38uTJ416jzsfvv//efX311Vf2yCOP5Mi2AzmNIC0QJYoXL267du2yTz/9NFmQdvHixbZ9+3YrVqyY7d692yKVgs8KMOLY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g+zLL7/0a7MAAAAAp0uXLta3b99UW0N91k6dOuVoS61atcr1kwEAABD9fAvS/vXXX/bnn3/aZZddZsWLF7d8+fLZpZde6n5etmyZX5sFAAAA+OrQoUPu+7Rp02zWrFnsDQAAgBiQz68nLlu2rCtxMHXqVKtRo4YVLVrUZs+ebfv27bNmzZql+X8JCQnuKyiUEaxsYH0HbcZxFgycl7QZx1nwcF5GV5sFqS8WBLt27bJhw4bZZ599ZgcPHrRKlSrZ7bffbi1atEi6z8SJE+2tt96yLVu22HHHHWfNmzd32biFCxd2f69ataoNHDjQ3n33XYuLi7PKlSu7AK1+njNnjt133332+OOP2/z5811Sg2fw4MG2evVq16cGAABA5PItSKsO55gxY+zmm2+2888/3/2uCxF1Ps8888xjTvvKrvz581v16tUsb97sv/y8efNatWrVLFwSEg7b8uUrkjIogkJtVq16dcuXN2/g2uxwQoKtWL48kG12dvVqlieAx1liwmFbFrDjLMjHWFCPM/deVq2a5c0XvGMs4fBhW74iWMfY/97/q7vXG7z3/wRbHsRjLKCfl0H9zAzye1kQ38eixT333GNHjhyx999/30qWLOkSD+688057/fXXXVLCJ598YsOHD3eB2gYNGtj69evtuuuus2LFitmAAQOSHkeB1pEjR1qVKlUsT548rtxCmTJl3G179+61ESNGuOe44YYb3P0VENZzKbgLAACA3E868B7nWI+X0efyLUirC4QePXrYKaecYuPHj3cZAXPnznUZBeqwNm3aNNX/U6fVyzjI7oXPhulj7MDfmywoCpY+ySpc0csFEIJIbTb16w9t6+6/LSjKFittHRu0CWyb5cmb13b9NsUO7/vLgiJf/PFWvHKnQLaZjrGx//3aNm3fbUFyUqli1vPSBoFts1Vvj7W9W4PzXla47ElW5eqegWwvr83+u3Sebf93lwVFqeOK26U1mwayzdzn5cI37MCurRYkBYuXtQrnXxvYNnvls6/tz53BeS87sUQx63Zh+N7HFDAMx8B5JFBNWGWypnT48GE3G0wL4X7++ec2c+ZMO+GEE9zf2rRpYzNmzHCZswrSKqP266+/thIlSri/q/973nnn2Y8//pjsMRs1apRmsoL6v5dffrkL5HpBWj2vOv2tW7fOgVcOAAAQvVauXOlm84fLTz/9lO3H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BGkBAACAXPTdd99ZjRo1bO3atbQ7AAAAHIK0AAAACLQbb7zROnfunObfH374YWvatKkdPnw4x7fls88+s59++ilbj1GvXj33GJUqVQrbdgEAACCyEaQFAABAoHXp0sUWL15sv/zyy1F/27Nnj82YMcOuvfZay5cv59fEHTVqlC1btizL/3/o0KGwbg8AAACiA0FaAAAABFqzZs3slFNOsTfeeOOov33wwQcu8NmpUyd766237JJLLrGaNWtaixYtbPjw4bZv376k+y5atMjat29vtWvXtnbt2rnA79lnn21TpkxJus+xHqNRo0a2fPlye/TRR6158+butr///tv69etnDRs2tHPOOcfatGnjgsaeadOmueebOnWq1a9f3yZOnGjffPONVa1a1X777Td3n71799qQIUOscePGVqtWLfe8r7zyStJjLFiwwN3/hx9+sGuuucY9z4UXXugeGwCAlBISEsL2Fe7H44t9Eo3HgGTkPunJ+XQDAAAAIBvi4uJcpuxzzz1n99xzjx133HHJgqoKjH777bf2zDPP2JgxY6xOnTq2bt0669Onj8u0HTp0qO3YscNuvvlma926tU2aNMn9fu+997oAr5eB+/HHHx/zMbxg6f33359UfuG+++6zrVu32syZM61EiRIuGDtw4EA766yz7IwzznD30XMoIKxSCfHx8a4mbSg957x58+zNN9+0ChUquJ9vvfVWO+2001wZB2/7nn/+eRc0Ll++vA0bNswefPBBFyzW8wIA4Fm5cmWyQcrsym6ZH4Qf+yQ69wlBWgAAAATeVVdd5YK07733nit/IEuWLLGff/7ZnnjiCRew7NChg6v3KpUrV7ZevXpZ//797YEHHrAvv/zSZaz27dvXBXn1paCtgruel19++ZiPkT9//qO2S9ukWrhFihRxvytTV9uijnpokFbb7N0nJQWeFQz2gs8XXHCBlSlTxn788UcXpPUoUK2MYu95Jk+ebOvXrydICwBIRgOK4aDsP32eabHLvHnz0soBwD6JzH2iPuiqVavSfSyCtAAAAAg8BTCvvPJKl23qBWn187nnnuuyVtesWeNKEbz22mvJ/u/IkSO2efNm27RpkxUuXNgFPz0qLRAqvcc4+eSTj9ou1clVoFZZS7t27XJZv3LgwIFk96tYsWKar+2PP/6wkSNH2tKlS12Grxw8ePCox/ACtFKw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csxeOt827N7i92YAAFJRtlhp69igDW0DwMnySl2vvvqqrV692n7//XcXoK1UqVKGs2Fl8eLF9s4777jFxrxALwAAAIDw2b5nl23esZUmBQAAiKYgbWJiot1xxx1WtmxZe+ihh+z00093X6KFxOrVq5fhhcOmTp1qe/bssfbt2yebOiefffaZTZ8+3cqVK5e5VwMAAAAAAAAAESZThU/eeOMN+/HHH+2KK6446m+jRo1ywdUZM2Zk6LEGDRpkc+bMsffffz/pq3nz5u5LPysQDAAAAGTEhg0bXM3defPm0WAAAACI7kxaBU/vu+8+O+ecc47625lnnmn333+/vfnmm3b55Zen+1jFixd3X6mt5HjiiSdmZrMAAAAQxbZv324vvviiff755/bnn3+62zSgrwVrb7/9ditVqlSWHld9W/VrTznllLBta5cuXez777+3fPmO7mZfcMEFNnr06LA9FwAAAGI0SLt+/XqX6ZoW/W3o0KFZ3phhw4Zl+X8BAAAQnRmynTt3dit+P/300y4x4PDhw2521xNPPOFmeL333nuZflytqaD/f/LJJ8MapJVWrVrZyJEjM7wdKinGYmwAAACxLVPlDg4cOGCFChVK8+8FCxa0Q4cOhWO7AAAAAHvwwQfd7KsxY8a4QG2ePHmsQIECbi2El156ya6++uqkdQ1SZrT27ds32W36Xbf/888/VqNGDduxY4f17NnTrr/+evf3Xbt22eDBg61BgwZWp04d69ChgyvP5VHg9corr7TZs2fbJZdcYrVq1XJB4qVLl2ZqT6ns16233upmoekxfvrpJ3f7J598Yu3atbOaNWtas2bN3Aw2baMnve0DAABAjGTSnnDCCfbLL7+4DIbUqINJqQIAAACEgwKUCxYssMceeyzV8gEqc9CrV6+kjNuMKlq0qH388cd20UUX2dixY13ZBLnnnntcZqvKIJQsWdIFY++88057/fXXrXbt2m4b9Dxz5851i+AqYHzjjTe6mWTvvPNOpl6bArvdu3e3RYsWucfV7/3793eBYJVF2LZtmwvmDhgwwCZMmJCh7QMARKaEhAQL8nYFdftiEfskMvdJRs+hTAVpNaKvaWbjxo07akrWwYMHbfjw4dayZcvMPCQAAACQqj/++MMFJStXrpzjLfTbb7+5mrczZ850iQnSpk0btyjuW2+9lRQEVRauslmLFSvmfm/dunWGSxuk7KzfdNNNSX3qiRMn2oUXXmgtWrRwv5crV84FaK+66irXDuprZ2T7AACRZ+XKlbZv3z4LKm/GB4KDfRKd+yRTQVpNy9KULi0Mpk6lOsyabrZs2TJ79dVXbf/+/dajR49sbxQAAADgBTDV3wzVtWtXW7x4sftZQdy6deu6bNvsWLt2rfvevn37ZLfr8UMDoCVKlEgK0HrlvtQHDqUs3dTKEKj/3KdPH/fzSSedlCzpYc2aNfbrr7+6MgyhdB9l7+7ZsydD2wcAiDxVq1a1INKAogJP+myidnowsE8ic5+oNNeqVavCG6TVlLI333zT1QZTjSyvY6gpWlo07IEHHrDjjjsuMw8JAAAApOrkk0+2/Pnz24oVK1w9Wo+SAzwqCbBx48YMtaAW6EpLXFyc+65s1dKlS6d5v4xcpGZk4bCUgWeVTujUqZM99NBDqd7/008/zdD2AQAiT9ADoNq+oG9jrGGfRNY+yej5k6kgrZQvX94t0rBz505bv369C9BWrFjR1fYCAAAAwkX9S03/V1BWM7lSBjaPFXhNbUHbTZs2pbkIbqVKldx3zRBTTViPAsBacyGnL071/MuXL092m6a+qrxC2bJlfd8+AAAA5Kw8Wf1HTfXSyrPKaiBACwAAgJwwZMgQF2zVIlsqcXD48GE3rUylAbQewocffmjnnnvuUf93xhln2A8//OASC+STTz5JKmkg8fHxSWUGdJ/TTjvNrb/w1FNPufq0eo6vvvrK2rVrZ7NmzcrxndutWzc3VU61aRWc1aJpmr2m161AtN/bBwAAgJyV6UxaAAAAILeo3Na0adPslVdesYcffthljipoe/zxx7tatK+99pqryaq6raFU/1WBXC3sVbJkSZd9qoCmSieISgYoO/eZZ55xi2/pOYYNG+YCv9dee60LlGoGmRbv0mPkNCU/PPvss/bCCy+4UgkKItevX9/NYFMpBPFz+wAAAJCzCNICAAAg0AoXLmw9e/Z0X2mpUKGCWx3bU6ZMGRfgPJYRI0a4L4+CuQqEpqV3797uK1Tnzp3dl2fy5Mnpvp60nkO1bPWVlvS2DwAAADFY7gAAAAAAAAAAkH1k0gIAAABRqlSR4rY3oazfmwEASEXZYqVpFwBJCNICAAAAUaplzSauXAQAIJgSjyRanjgmOQOg3AEAAAAQtRISEvzeBITsCy1cxz4JDvZJsMTq/iBAC8DDcA0AAAAA5IJ9+/bRzgHDPgkW9geAWEaQFgAAAAAAAAB8RJAWAAAAAAAAAHxEkBYAAAAAAAAAfESQFgAAAAAAAAB8RJAWAAAAAAAAAHxEkBYAAAAAAAAAfESQFgAAAAAAAAB8RJAWAAAAAAAAAHxEkBYAAAAAAAAAfESQFgAAAAAAAAB8RJAWAAAAAAAAAHxEkBYAAAAAAAAAfESQFgAAAAAAAAB8RJAWAAAAAAAAAHxEkBYAAAAAckF8fDztHDDsk2BhfwCIZfn83gAAAAAAOSNv3rw0bYD2RbVq1fzeDIRgn8TG/kg8kmh54shPAxB8BGkBAACAKDV76XzbsHuL35sBAL4oW6y0dWzQhtYHEBEI0gIAAABRavueXbZ5x1a/NwMAAADp8DXnf82aNXbHHXdYw4YNrXbt2nbZZZfZ1KlT/dwkAAAAAAAAAIiNIO3+/fvthhtusBIlStjHH39s3377rXXr1s3uv/9+++KLL/zaLAAAAAAAAACIjSDt3r177a677rKBAwda8eLFLX/+/NahQwf3888//+zXZgEAACAC1KhRI1MzsKpWrWrTpk2zaH6NAAAAiFy+1aQtVaqUdezYMen33bt325QpUywxMdFatmyZ5v8lJCS4r2he6TYcry8n0Ga0WSwfY0E9N4PcZkFsL6HNoqe9gnqcBbnNwtVeOdnuXbp0sTJlytjIkSOP+tugQYNcuSz1GX/66aewPu8333zjZnkpcSAuLs7dli9fPqtQoYJdc801dt1112Xr8f/880+bP39+sv5vesL9GgEAABBcgVg47Pzzz7e///7bKlWqZOPHj7fKlSuned9Vq1Zl+/ni4+OtWrVqFlQrV660ffv2WZDQZrRZrB9jQTw3g95mQWsvoc2iq72CeJwFvc2C1l5B9P777yf1RQ8cOGBffvml9e/f3w4dOuRKc6Wk2xXYTc/s2bPtgw8+yFSQFgAAALEjEEHahQsX2q5du2zGjBl244032rhx49xiYqmpUqWKFS5c2KKZpuOBNuM4Cx7OTdqLYyx4OC/9aS+VrQrHwHl2X8tDDz1knTt3djOxxo4da++++67rU1544YVWv359GzJkiC1btiwpiKoAtUptzZkzx2XJtm3b1q2H4GXOplSwYEG76KKLrHXr1vbhhx+6IK1KJjzyyCN277332ogRI+zmm2+2W265xVavXm3Dhg2z5cuX25EjR+zMM8+0u+++26pXr27Dhw+3V155xd2uEgbq6zZq1Mg++eQTGzNmjK1du9bNMtNtAwYMsJIlSx71GpVZPG/ePOvZs6c99dRTLjNXCQ5Dhw61mjVr5mrbA0CkCeLMm0hqN9ovONgnkblPMnoOBSJIK6pFq+lt6ny++uqraQZpNYUwyNMIwyHaX19OoM1oM46z4OG8pM04zqL3vAza+a26rS+88IILeHrBz8cff9z9LTTLddKkSS7o+cQTT7iFa/v27WtNmjSxZs2aHfPx1bFWUDc0e3bx4sX22Wefuexple1SOYRWrVrZM888Y3ny5HHbotv++9//usDwjh07kko1yNKlS12GroKvF1xwgW3bts2Vc1CQdsKECUdtg55/w4YNNnfuXPd69RxKblCQ9p133gljawJA9GEmSfZQfid42CfRuU98C9KqJpcyEJSVUKxYsaTblQmhrAUAAADEJgVQle2a0uHDh10makqzZs1yA/xesLVNmzauvIACpKGUYeslAig7Vpm2v/76a5pBWmXeqs+qx3nggQeSBWmVXFCkSBH3u8oYHDx40AVZFbSVPn362Ntvv20fffSR3XTTTUc99sSJE932tGjRwv1erlw5F6C96qqr7I8//rCKFSse9T///POPDR48OKnvrNeQWu1eAEByzLzJGg1SKvCkz96gDdDGKvZJZO6TjM5C8y1IW6tWLff9wQcfdJ3e4447zmU9qPSBpo4BAAAgNikj9VgLh6W0ceNGa9y48VF9zZRB2pSBTyUG7N+/P9lt7dq1Syp/UKBAATvllFNc9m379u3TfKzff//dypcvnxSg9R77pJNOcn9LjV6HAsQpg87q3CtjNrUgbYkSJZIlN6S2/QCAoxFgzJ5YmNEcadgnkbVPMnr++BakVQdTtbnUAVc9MGUqqDOqKVv6HQAAAMiolHVlU6szqxIBmVk47FgUwPWo1mxqz5fW7d62dOrUyQWAM4oLZAAAgOjla01adYBHjx7t5yYAAAAgwpUtW9Zl04b68ccfc+35tYCX6sIq6cDLptXPmzZtcn9L63+0yFgo/Y9KGuj1AAAAILakn04AAAAABJgW3lqwYIF99dVXrm6tyhwsWbIk157/8ssvt0KFCrmSXf/++6/t2rXLhg8f7jJfVR9X9PetW7fa9u3bXV2ybt26ufpl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BABEJYK0AAAAQJTavmeXbd6x1e/NAAAAQDqYJwIAAAAAAAAAPiJICwAAAPhk7Nix1rx5c9ofAAAgxlHuAAAAAMiCQ4cO2WuvvWbvv/++bdy40f1eqlQpa9q0qfXt29eKFy+e7mP07NnTfQEAACC2kUkLAAAAZMHw4cNtwoQJNnDgQFuwYIEtWrTIRo0aZYsXL7YePXrQpgAAAMgwgrQAAABAFigwe+GFF1rDhg2tQIECljdvXqtevbo9++yz1r17dzt48KA1adLEBW7vueceq1u3rjVu3NgFdw8fPuweQ39r1KhR0mNu27bN+vTpY+eee677uu222+yPP/6wdevW2ZlnnmlffPFFsm2YPn261axZ03bt2sU+BAAAiGCUOwAAAACyQEHTTz/91C666CIXjFWQVk477TT3Jfnz53clEZ544gn3pWxbZdmWKVPGbrrppqMe8+6777Z8+fLZJ598YgULFrT77rvPbr31Vvvwww/tvPPOs6lTp9oFF1yQdP8PPvjALr744gyVVgCiRUJCQlgfJ1yPh+xhfwQP+yR42CeRuU8y+jlDkBYAAADIggceeMDuvfdel+0aHx9vtWrVctmyyq49++yzk+5Xu3btpMXB6tev74Kss2fPPipIu3r1alu4cKG98847rratDB482AV2lZV7zTXX2IABA1y2rYK8f//9t3399dc2ceJE9h9iysqVK23fvn1he7yffvopbI+F7GN/BA/7JHjYJ9G5TwjSAgAAAFmgQOq4ceNsy5Yt9u2339oPP/xgH3/8sY0ePdratm1rTz31lLvf6aefnuz/KlSoYEuXLj3q8VTSQCpWrJh02wknnGCtW7d2P7do0cJKlChh06ZNs1tuucU++ugj91gK/AKxpGrVqmF5HGU26aK6Ro0aSZnw8A/7I3jYJ8HDPonMfbJ3715btWpVuo9FkBYAAADIBgVSL7vsMvclKklw//3325VXXul+T0xMTHb/I0eOuFIGaUl5f49KJ3To0CEpSDtz5kzr2LEj+w4xJ9wBVT0eQdrgYH8ED/skeNgnkbVPMvoZw8JhAAAAQCZt3LjRHn74YbeoV0rKeJXt27e772vXrk329w0bNthJJ5101P+deuqp7vuaNWuSbvvrr79swoQJtnv3bve7grK///67y6Jdvnx5UiAYAAAAkY0gLQAAAJBJxx9/vKsf27dvX1fm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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# How many items per category?\n", "cat_counts = menu_df['category'].value_counts()\n", "\n", "fig, axes = plt.subplots(1, 2, figsize=(14, 5))\n", "\n", "# Chart 1: Items per category\n", "colors = ['#D4845A', '#7BA88B', '#E8C97A', '#5B8FA8', '#C4785B',\n", " '#8FB8A0', '#D4A574', '#6B9BA8']\n", "colors = ['#D4845A', '#7BA88B', '#E8C97A', '#5B8FA8', '#C4785B',\n", " '#8FB8A0', '#D4A574', '#6B9BA8']\n", "cat_counts.plot(kind='bar', ax=axes[0], color=colors, edgecolor='white')\n", "axes[0].set_title('Menu Items per Category', fontweight='bold')\n", "axes[0].set_ylabel('Count')\n", "axes[0].tick_params(axis='x', rotation=45)\n", "\n", "# Chart 2: Which attributes are most common?\n", "attribute_cols = ['Spicy', 'Vegetarian', 'HighProtein', 'GlutenFree', 'DairyFree',\n", " 'Hearty', 'Light', 'Premium', 'Comfort', 'International']\n", "attr_sums = menu_df[attribute_cols].sum().sort_values(ascending=True)\n", "attr_sums.plot(kind='barh', ax=axes[1], color='#7BA88B', edgecolor='white')\n", "axes[1].set_title('How Common Is Each Attribute?', fontweight='bold')\n", "axes[1].set_xlabel('Number of Items')\n", "\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABWsAAAHmCAYAAAAFsdz8AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjgsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvwVt1zgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAmExJREFUeJzt3Qm8VfP6x/HnzKd5NlQaSUoDyhAypRBFpnAVrqGLeylDyZAyRVHENSWhi8jscv0zR2VKA0mkKJRugzScef9f31/WufuMnXPae+21z/68vbazW3tYa/3W2nv/1rOe9fySQqFQyAAAAAAAAAAAMZUc29kDAAAAAAAAAIRgLQAAAAAAAAAEAMFaAAAAAAAAAAgAgrUAAAAAAAAAEAAEawEAAAAAAAAgAAjWAgAAAAAAAEAAEKwFAAAAAAAAgAAgWAsAAAAAAAAAAUCwFgAAAAAAAAACgGAtgAo599xzbe+99y5y22+//ez444+3G2+80b755psSr5k0aVLhc6vixx9/dO9R2nuXZtWqVYXze/HFF8ucFknPP/+8TZ06tdS20t94sHnzZrvqqqvs4IMPtk6dOtkZZ5xRodedc845hW3717/+NSrbpPg+5906duxoPXv2tGHDhtm3335rVTV79my3j23atCli+y0AAJHg9SeOPvroUh8fMWJEoH6vtJze8px55pk77E+WtV5B4S2n2nlHfb94UdY6Fd+Gfvdh1R8sq88XfrvtttuitgyR6r//9ttvNn78eOvfv78dcMAB1rlzZzvmmGPs8ssvtw8++MD88thjj0Xl2Cdo3zXht3322cd69Ohhf/vb3+zzzz+v8vsvWrTIHQ/omCWSvOXUe4fTsl5yySV2xBFHWJcuXdzx9ahRo2z16tURnT/iS2qsFwBAfMnIyLD999/f3VeAa+nSpfbDDz+4jutll11mf//73wufu8cee9ghhxxS5Xm98MIL9vDDD1uzZs3cj++OZGZmFs5vl112MT+CnGPGjLEmTZrYeeedVzhdgcSUlBRr3769xQMdcLz++uvufrt27axp06Y7fM2vv/5qX3zxReG/58yZY+vWrbNGjRpFZRnVxnvuuWfhv71979///re9/fbb9vjjj7sOcWXdd9999uWXX9opp5xidevWjch+CwBAoluwYIGtXbvW/X57fv/9d5s3b57Fs7L6fogc9aO9PllxrVu3DnRTK+h26aWXun09KSnJ9tprL6tVq5Z9//33NnPmTHc766yzXCBOj0fLihUr7K677rIDDzzQBgwYYNWV9hPtL56tW7e6JI53333X3n//fbvnnntc4LOqx0Zqv+bNm1s0KaB+3XXXufuNGzd2x7xah2effdYd50yfPt3atm0b1WVAMBGsBVAp+hEJzyZYv36967S++eabdv/997tg3dlnn+0eO/nkk92tqtShqYhQKGT5+fklli3aPvzwQ8vJySkxvaxshaD6+eef3V8deLz22msVeo06MGr3mjVrWkFBgWVlZdkbb7wRtUyMww47zMaOHVtk2nfffeeygNUxu/vuu+3pp5+udObD/PnzS0zf2f0WAIBEVq9ePResUsAkPMNWwZO8vDwXYAm/oiWelNX3Q+QMHz7cDjrooLhrUiUtKHtW+74CfA8++KBLgpBt27bZhAkT7IknnrBnnnnGJb7069cvasvyf//3fxbvcnNzLS0trdznKDGm+LHfmjVr7PTTT3d/77zzzkoHa/X51neVHzZu3Gg33XSTu3/ssce64HJ6ero7RlEiyX//+1+XhTtx4kRflgfBQhkEADulYcOG7lIf76ymMhUVuCvvcvL33nvPZSMceuihhZcG3Xrrra6TE34plDJ2RWcb9W9divLJJ58UvufChQvd++jS/VdffbVCl9f/61//st69e7vX9O3b1955553Cx8p7vXe5jReI1b+HDh1aGOwMf6ysy6iUjaof5KOOOsr23Xdfd7ZW5QM+/vjjIs/z2k3toh/xq6++2rp37+6yPVWuYMOGDRXaNq+88ooNHDjQdQi1vn369LFx48bZH3/8Ufic8HVVBkxFL0v0grq61MjLQvWyc/2ibAWVbpCvv/66yGNaFq272rhbt24uqBvecdW2Ovzww13AWdTW3nqXtt9WdpssWbLEbX9dyqRlvOWWW1w5D+99tR97dPZc76H9QttJy/WPf/yjwuU/AAAIp36YTqCrn6N+lspWnXrqqe6kpve799RTT7nfI/2Oh9PvnPdbpX6BR30eTVP5oR3xfpt15Us4BW9Fv5+l+eijj2zw4MHut1XLrMvIn3vuucJlrszvsa7+8dZDV3+F09VA3mNKNqio8vp+snjxYneVmQKN6uep/dXvDBe+/AomXXzxxda1a1d3Ulp9aFGg6MQTT3TTFewuXu4pFv2G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tgEDBticOXOKvG727Nluuh4/5JBDbMyYMZaVlRXVdYoXu+yyiz377LMlpufl5dlLL71kTZo0saCZOXOm3XjjjXbZZZfZZ5995oLNKSkp9te//tXy8/NLfc0111zjgrFPPvmkffnllzZhwgR78cUXbeLEie7xn3/+2c4//3xXQ/Kdd96x999/3+rXr++Ct7psGQAAAAAAAKj2wVoF3s444wxr2rRpuc9T8Oz//u//SkxX4PXjjz+2qVOn2ty5c6137952ySWX2IoVK9zjGshF/+7Vq5cL4k6bNs3VCdTrIk2B47JuxQN+pT3u3S8eSC7vfXc26HzMMcfYF198UTjgjefdd9+1OnXquOBlOGWvKoDpZbQqQLp06dLCx7du3Wo33XSTHXbYYS6DVe2ubePRtlLAff78+TZw4EDr2rWrHXXUUS5w6nn55ZetU6dORbJeiweY77nnHvfeqamp1rBhQzvttNNs7dq19t///rfU1/Tp08fGjh1rLVq0cAP6aNm6d+9uS5YscY9/+OGHbn4jRoyw2rVrW7169dxJgNWrV9vbb79dxdYFAAAAAAAA4miAsY0bN7oAqgJtyuQszYYNG+yGG26wf/zjH3brrbcWee2rr77qLtdv166dmzZkyBB3ifz06dNt+PDh7q8CdJdeeql7vG3btjZ06FCXaanHFZQrjTI0y8rSLMvhhx9e5mPK/FU2p+fYY48tM9C6//7724MPPlj475NOOsmta2n22WefIsHQygiFQtagQQMXdFV27bXXXlv4mNrt5JNPdoFtjV6uttiyZYsL1J566ql27733utfff//9NnjwYPvPf/7jgpzjx4+3Dz74wP71r39Zs2bNXBBUbd+qVSvXPt7I53r97bff7p6jcgSjRo2yI444wmWzan11k9K2wb777lv4mJZNpQqeeOIJFyBu3Lhxqa8Jfz8FxhW4/+STT1y2trettT7KKPaWMS0tzWrVqmULFiyw4447rsx29OZX2f0FwcE2jG/xtP3Cl7EqvzPVVTxtQ5Sk32L9Zvq1/dhPAAAAUN3FNFh7+umnu78K1pbl5ptvdoE+ZWCGB2sXL17sgmvKwgynrEkF2ER/Vf4gnP6t1+n1KotQmvBs0UjYtGmTyyYNP7Apr75q+HO1rGVRJmv4cytD81HmqDJMH330Ude+OtjStlAg85xzzrE333zTPUfzUIapsk979uxZ2D4KOj///PM2efJkVw9WGax6H2W46qZguG5vvfWWy9T9/vvv3esUIFYQXreOHTu64K7ef88996zw8isjWAFwBVlVZ1aB5B21hYLEWjcFYc866yzbY4893GsaNWpkSUlJdtVVV7mMX7W5TgSofVWaoyJtvGjRogovO4KJbRjf4mH7hV9lodIsGRkZMV2eoImHbVge/Ybu2bqlJVvIEo3WW1er5ObmxnpRAABAgGTn5lleftnxj0hLTUm2jLSYhrmAiAj0Xvz666+7A9rXXnutRHbpunXr3F9lY4ZTtqjqksr69evdpfbFHw9/fWmUqVuzZs1KLatKNZRF2ZrhB+XhJR2UIfL111+7oKVqrypomJmZWaQNylL8uZWhTNjddtvN1WpVsFRBWWWgakAxBV6V6TplyhT3HLWhArd//PGHe344BZ613HrODz/84OrA6oBbgVhRgFelCvS4V9pA773XXnu5+3Xr1nV/lQFdfFuVR8/Vsiiz9q677nJlDpQhXF57PP744658hAK91113ndvGysYWBZW17FdeeaXL0NUAbAouq25vecul7af11UkDtQPiD9swvsXT9lMgSyfCvKsoFNxDfG3DHQnlbLPf3ptuuZvK7mNUN6l1Glmjnqe6q328q1OiSSdSI31SHQAARIcCtdM/XmjrNm+NehM3ql3Tzjy0s2XQxUY1ENhg7Zo1a+yWW25xATQFFssqBaCAZThlWhafVvzx0l4XTgeLlT1g1DJW5bk6SFUgV9NKm2dl3rcytP5eEFk1X5Uhq2Ct6scqg9kLHOs5Xnu0adPGDehVlssvv9wFZp9++mlX4kCvV+BXf/X68BID3rp607z5VIaer9IWKqmgUhMfffSRy+4tj9pTwWIFelVuQmUatHx6vW7hQWiVedB6VGS5qrLPIFjYhvEtHraflk+leBC/23BH8i3Jcjett5wNv1miqcrveFXE+z4CAECiUaB2zcbNsV4MIK7EdICx8qieqOqmllWqQNmPXvZsOGXMKhvSe46X4enxnu+9HuYGeVM2sgK2OghS/dfiNNjYqlWr7Pfffy8yXZmtXrtqYLe//OUv1rx5cxcAVcD9t98ie8Cq+sXh9XXD69dpwLHiFORXaQbV0g2nYKyer+VUmQoFqfXX89lnn7nXlrX/AQAAAAAAAAkRrP3555/d4FYKoKkeqW4DBgxwj+mvMm410JQyNMPriSprVkFHXV4quny9eL3RefPmWXp6uis7gO123313V4tWNWA1gFhplzEq61Z1Z0ePHu0Csypp8OSTT1rfvn3tl19+cWUE9LhKDCh4qsDtyJEjXWbqr7/+GrGmVvarSkNoIDktg5ZFJRAUoO/WrZt7jgatO/vsswvLZKgWrgY/U1kDBWlVWkPP8QYO0/4wbtw4d9PAb9r/7rjjDhe09t4TAHaWvn/0falbebXLAQAAAACJK5DBWtVJVSakatUqKKfbI4884h7T33/84x8uMKjL9xVgVO2yLVu2uJIJCt5pkCjRX9ViVR1WPa7BL/QcDS4VrfIC8erMM890maUK1pZGg3JpIDFlmx5zzDEugK46to899pg1bdrUZeQqaPrhhx+6YLmyX4cNG2bnnXeevfvuu3bNNddUaDlefvllV7fQq29b3AknnODKHkydOtUNVKZgserXaTkUMBZlU//444+Fr7nnnnvc8l500UW23377ueVS1rbq1orq3D788MP23XffuUxanRDQQHQakAwAIjnAWL9+/dwtfLAxAAAAAAACUbNW9UWVYeTVke3fv7+7LL179+5ucKtweXl5heULvKCcMjeVDTl48GAXjO3QoYN7nTJFZY899nABRgURH330URfg1UGygnWJ7qmnniryb5UK+Oabb8p9jgYPKb5dwvXq1cvdwimD2RtQR7799tsij6vmbPg0BVF1K8+OnvP3v//d3Tza7iqfoFtZFJzVAGUAAAAAAABAQgZr33rrrQo/V3VQiwf6dPm6atvqVhZdxj5jxoydWk4AAAAAAAAASMgyCAAAAAAAAACQaAjWAgAAAAAAAEAAEKwFAAAAAAAAgAAgWAsAAAAAAAAAiT7AGAAAiSIlJcVOP/30wvsAAAAAABRHsBYAAB+kp6fb8OHDaWsAAAAAQJkogwAAAAAAAAAAAUBmLQAAPgiFQrZx40Z3v379+paUlES7AwAAAACKIFgLAIAPsrKy7Nhjj3X3Z82aZTVq1KDdAQAAAABFUAYBAAAAAAAAAAKAYC0AAAAAAAAABADBWgAAAAAAAAAIAGrWAgAAAEACys7Ns7z8At/ml5qSbBlpHIICAFAefikBAAAAIAEpUDv944W2bvPWqM+rUe2aduahnS0jLeqzAgAgrhGsBQAAAIAEpUDtmo2bY70YAADgTwRrAQDw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02UDAABAYqpSsDYlJcVOPPFEVwbB89xzz7maXytXrozk8gEAUC3kFYTs9UUr3U33AcTerbfeam3atHH3P/30Uzfg2BNPPGF/+ctf7O6774714gEAACABVSlYe9ttt9lee+1lBxxwQOG0fv36WZcuXdxjAAAAQNB99dVXNmLECHf/vffesz59+rhSX+edd54tWrQo1osHAACABFSlmrVffPGFffDBB1ajxv8GSmncuLHddNNNduSRR0Zy+QAAAICoyM3NLaxPO3fuXBs8eHBheYTs7GxaHQDCJPncGuHxBgBIJFUK1oZCIcvJySnx5bllyxYrKIhsHb5ly5a5y9C+/PJLy8rKshYtWtj5559vJ598snt89uzZbqCz77//3mrVquVKMVx77bVuFF/Ztm2b3XXXXfbWW2+5urp77rmnXXPNNXbIIYdEdDkBAAAQX9Sv/PDDD61mzZr23XffWc+ePd30hQsXMlAuAISplZluSclJtiUrx7fAcOu2e1pWbr6Zbj5JTUm2jLQqhUkAIGKq9C106KGHuoDoFVdcYc2bN3cBWgVVJ06caIcddljEFk7ve8EFF7iBHjSomYKxM2fOtKFDh7pM3mbNmtkll1xif/vb3+ypp56y1atX25AhQ1xQ9/bbb3fvMWbMGJcJrAHRtKxPPvmke82rr75qrVq1itiyAgAAIL54/Uj1OS+++GJr2LCh/f7773b55ZfboEGDYr14ABAYmWmplp9fYM/NXmTrNm+N+vza7tLAju3azp7/eKGt27LN/NCodk0789DOlpHmy+wAILLB2htvvNGuvvpqGzBggCUl/e9iCNX40ii6kbJ27VoXgD3ppJOsXr16bpoyZ2+++WZXY+yjjz5yGRGXXnqpe6xt27YukKvM2eHDh7sMYAVllZnbrl079xwFc1955RWbPn26e05p8vPz3c0P3nz8mh8ii+0X//zahiHTgFLeLVF46xq99Q6F/vc3KSkU8HUPX77qui9UfpsHdxsGb38PIm/7RfrKqrJE+rta/cr999/fNmzYYO3bt3fT6tat65IS1P8EABSlQO2ajZuj3iyNatf43/x+38JmAJBQqhSsbdSokT3++OOu9MCKFSvctNatW7tgaSTtsssutt9++9nzzz9vnTp1sjp16rjMWpU2UG3c0aNHW+fOnYu8Rv/Oy8uzxYsXu2Ct7uu14TQQ2oIFC8qc79KlS81vDGIR39h+8S+a21BlWdq2aGbZOTmWnZU4NRDTcnNdJEc1IbOivN5Bqy1Z2rpn5+UXXd78FKtudmabB20bBnl/D5JQbk5h30lXNsWjXXfd1d08SkRQoFYB6OTkKo3FCwAAAFTZThVjUf1X3aJFneUHHnjALrzwQuvRo4f7t+rkqsSBsh/Wr19vXbt2LfKaBg0auL/r1q1zwVqpX79+ieeoBm5ZlIWr2mV+ZYgoSKSAckpK9Ttwr+7YfvHPr20YytlmGenplpSZYYkiPS1NX+SWlpZmoSitt77mFeTLyMjQrAK97umhkN01oJu7X6dWDUsO0gLHcJsHdRsGcX8PorS09MK+kx+Bza1bt0b0pLr6k+FXiRX3zTffRGxeAAAAQNSCtQps3HLLLW4ghtKyKCLVsVV2ykUXXWQtW7a0hx9+2JVCePfdd23EiBHuErXSeAFadbzD7xd/TnkdcwVs/A6cxmKeiBy2X/yL9jbMd8MkeLdE4a1r9Nbbu2x++1d6UqDXXcHZPRpsH3W++qr8Ng/uNgze/h5EXndKgVo/+jGRnseoUaOK9AmVTfvzzz/b22+/7ZIFAAAAgLgI1t50002Wnp7uBhjT5b3RMnv2bPv666/twQcfLByRV7XFVHP26aefdoOMqcZYOGXbih7z6qdpWnimrLJumzRpErXlBgAAQPCdddZZpU4/7bTTbMKECXb66af7vkwAAABIbFUK1i5fvtwFUv0sFVD837rMUCUQ3nnnnSKPzZs3zwWSO3bs6DJo9bz58+db8+bN3eOaphIIffv29WXZAQCQvPwCe3nBj+7+yV1aWmoKtTCBoNJYDLqCDAAAAPBblY4Ud9ttN19G/dXovMqoHTdunMuO1WBhCs7OmTPH+vTpYwMHDrTVq1fbpEmTbMuWLbZkyRKbOHGiy5KoXbu2G5DMy4xQfTM9R4/rvfRaAAD8klcQshe+/NHddB9AcOnE/h9//BHrxQAAAEACqlJm7dVXX2133HGHXXfddS4oGi0Ktj7++OMu2HriiSfatm3bXIasyjD079/fPWfy5Mk2duxYe/TRR93z+/XrZ8OGDSt8j5EjR7pg7+DBg12wtkOHDjZlyhTbfffdo7bcAAAACL7DDjus1DETNm3aZGeffXZMlgkAAACJrUrB2n/+85+2atUqe+mll6x+/folRv/96KOPIrV8tueee9oDDzxQ5uPdunWzGTNmlPm4SiJcf/317gYAAAB4zjzzzBKDzmZkZNhee+1lRx55JA0FAACA+AjWHn744a4WLAAAABCv/v73v8d6EQAAAICdD9YOHTq0Ki8DAAAAAkGD0q5du9aNgxBu/PjxrvxW+/btY7ZsAAAASFxVHop6wYIFrmatasGKBhx78803I7lsAAAAQMR9//33dsEFF7iBxIr75ZdfXP/2119/peUBAAAQH8Had955xw26sGHDBpeVIKtXr3YDfz3//PORXkYAAAAgYjRAbe/evW3EiBElHrvnnnvcwGOPPPIILQ4AAID4CNY+9NBDNm7cOPfXG5ShadOmdt9999nUqVMjvYwAAMS99JRku7Xf/u6m+wBi59NPP7VLL720zMcvu+wymzVrlq/LBAAAAFS5Zu3y5ctdNoKEj6B70EEH2c8//0zLAgBQTHJykrVtUpd2AQJAV4e1atWqzMfbtGlj69at83WZAAAAAKlSak9aWppt3LixxPQVK1ZYZmYmLQsAAIDASk9Pt82bN5f5uPq5NWrUqPT7rlq1ygYNGmR77723LVu2rMhjs2fPtgEDBljnzp3tkEMOsTFjxlhWVlaZ76XxICZOnGhHHHGEderUyfr27WtvvPFGpZcJAAAACRCsPfLII+2GG24o7IQqO0GXil155ZV21FFHRXoZAQCIe3n5Bfbawp/cTfcBxE7Hjh3LHRj35ZdfdkHVypg5c6adccYZrjRYaVelXXLJJdarVy+bM2eOTZs2zfWdFbAtyz//+U979tlnXQ3dzz//3A2Ids0117gSDgAAAKi+qlQG4brrrnOdRZ3hlx49elgoFHJB3NIGagAAINHlFYTs6c9+cPeP3aeZpabEeomAxKWBcq+99lp3RdhJJ51U5LGXXnrJJkyY4IKllaFsXAVh165d694j3PTp061FixaFdXLbtm1rQ4cOdf3p4cOHW7169Upk1eq9LrroIjvggAPctFNPPdUFmDX9wAMPLHM58vPz3S3avHn4MS9Eud1Doe23aPtzHr7vMxFYv1DY36Sy3iuO16/C8/FxfkXm4Mf6hc0nkb/X+I6pgur+HZMA3zMFBf4k0lRm21UpWFu3bl17+OGHXWatMgWSk5OtdevW7gYAAAAEmTJczz33XBcsVWBWNWpVGuGbb76x3377za644go79NBDK/Wep59+uvurYG1xCxYsKJGpq3/n5eXZ4sWLXVmEcCtXrnRXrqn8QbguXbrYjBkzyl2OpUuXmp8WLVrk6/wQuXbXyYpmLVtZTk6OZWdnR71pc3LSLTcv11Ys+67cEiCREo31yynnfarD+pUnNzfXBTb014/55eXmFs7Xj/nFYhsGGd8xO1bdv2MS4XsmNye9sO8UtM98lYK1HmUF6BZOEWkFbwEAAICgUmbr0Ucfba+99pr9+OOP7iqx448/3vr162ft27eP6LzWr19vXbt2LTKtQYMG7m9pA5l50+rXr1/iNTsa+Kxdu3ZWs2ZN8yM7RAfzCiinpHCpgF8i3e5ZufnuREVGRoZFm+aTlpoW8c+XH+sX+jOIkp6RYf8bXrv6rF9Fx61J+vOvH/NLTUsrnK8f84vVNgwavmMqp7p/x1T375m09PTCvpMfccytW7dW+KR6lYK12jmSksrahcxlJQAAAABBpkxV3WJBwWEpr09d/DG9przniwJ4fgZP/Z4fItzuufna0bbfou3Pefi6v0Ro/bzLkt27lPVecbx+FeLNw6f5FZmDH+sXNh++0/iOqbDq/h2TIN8zycnJvrRrZeZRpWDtqFGjinQUlU37888/29tvv20XXnhhVd4SAAAAqJYaN27syhoUz7b1HiuuSZMmRZ7jUVat9xgAAACqpyoFa88666xSp5922mmu7pdXswsAAABIdCqB8M477xSZNm/ePHdZYceOHUs8v3nz5i4oO3/+fDvooIOKvGa//fbzZZkBAAAQGxEtyqABxr777rtIviUAAAAQ1wYOHGirV6+2SZMm2ZYtW2zJkiU2ceJElwBRu3Zt95y7777b1dEVXcE2ePBgmzJlin3++edu0It//etfLlh73nnnxXhtAAAAENgBxor78ssv7Y8//ojkWwIAUC2kpyTbjSd0KbwPIDYWLlxonTt3dveVuVp84K+q6tOnj/3yyy+FtWj79+/vgq7du3d3QdfJkyfb2LFj7dFHH7U6deq4gcyGDRtW+Pq1a9e6smIelRbT6MtXXXWVK4egpIj777/fDSwFAACA6qtKwdrDDjusxLTc3FzbtGmTnX322ZFYLgAAqpXk5CTrsPv20d8BxI4yVpWtqkEedH/BggURed+33nqr3Me7detmM2bMKPNxBXLDKdB72WWXuRsAAAASR5WCtWeeeWaJkWgzMjJsr732siOPPDJSywYAAABElGrBanwFZaoq2UCZq2VRaQIAAAAg8MHav//975FfEgAAqrG8ggJ7d8mv7v7R7Xe31GRKIQCxMH78eHvsscdc2QH57bff2BAAAACI72CtBkRITa3YSy+//PKqzAIAgGolLz9kj8/ZPghnz712s1RitUBMqF7tvffe6+4fd9xx9tRTT7ElAAAAEN/B2pkzZ7oBFDQybf369a2goMB+//13q1GjhjVo8L96fCqVQLAWAAAAQfSf//zH/d2wYYOtXLnS3W/VqpXVrVs3xksGAACARFWlYO3FF19sc+fOtWuvvbYwOLtmzRq766677KijjrITTzwx0ssJAAAARNTWrVvt6quvtvfff99CoZC7aeCx448/3m6//XZLT0+nxQEAABD8YO2kSZPspZdesjp16hRO23XXXe366693AzYQrAUAAEDQ3XPPPS6jVgkHyqhVsPb777+3hx9+2B544AEbOnRorBcRAAAACaZKwdp169a5EgfFpaWl2fr16yOxXAAAAEBUffjhh/bII4+4QK2nU6dO1rFjRzegLsFaAAAA+K1Kw5uoA6sSCF9//bVt2rTJ/vjjD1u8eLGNHDnS2rdvH/mlBAAAACJMCQjNmzcvMb1Nmza2evVq2hsAAADxkVk7ZswYu/TSS+3UU08tzLDVZWPq7P7zn/+M9DICAAAAEae+68cff2xHHHFEkemaphJfAAAAQFwEa5VtoNFzv/rqK/v1119doHa33XZzl42VVh4BAIBEl5aSZNcc26nwPoDY+8tf/mJXXnmlnXDCCbbnnnu6fux3331nb7zxhg0bNizWiwcAAIAEVKVgradBgwa2ZcsWO+iggyK3RAAAVEMpycm2f4tGsV4MAGE0MK7GXJg2bZrNnDnTTVP92ltvvdX69u1LWwEAACA+grUbN260q666yl0ilpqa6jJs165daxdccIFNnjyZy8YAAAAQF04++WR3AwAAAOJ2gLHx48dbQUGBPf/885acvP0t6tSpY/vss4/ddtttkV5GAADiXl5BgX2w9Fd3030AAAAAkUOhMSR0Zu3s2bPtmWeecRm0Xo3azMxMu+666+z444+P9DICABD38vJD9tCsb939g1rvYqlVOl0KAPBLdm6e5eX7e3ItNSXZMtJ2qlIdgDji9/dMdf6OqZWZbknJSbYlK8eX+SkWFrKQL/NC4qnSp3Td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AKpHP7bap4/uu+++rtbX/Pnzi2QwfPnll7b//vvHdNkAAACQGCrbJ+3ataurc5uTk1M4Ta9VVsZ+++3n23IDAADAX9U+WFunTh077bTTbMKECW7kXA26MHHiRJfVMHDgwFgvHgAAABLAjvqka9asseOOO84+//xz9/x+/fpZjRo1bMyYMfb777/bypUr7bbbbrNevXpZ69atY706AAAAiJJqP8CYKCNh3Lhx9vrrr7uOcYcOHWzEiBEuYwEAAACIdZ901apVdswxx9ijjz5qPXv2dM//7rvv7NZbb7UFCxZYenq6HXvssXbdddfFbSkIAAAA7FhCBGuDaNu2bXbXXXe5kX83b95se+65p11zzTV2yCGHxHrRUEE6qBo5cqR98skn9sYbb1jbtm1puziiGoF33323ffjhh+6AuUWLFm5k7RNOOCHWi4YK+OGHH+yee+6xL774wrKysqx58+Y2aNAgO/3002m/OLR8+XI75ZRTXFbh2LFjY704qKALLrjA5s6daykpKUWm33///XbEEUfQjgnQ55k3b56dddZZLpAcrmPHjvbss8/GaGkTo58ye/ZsGz9+vH3//fdWq1YtO/744+3aa6+1zMzMWC96tW139vfY9evY3/1tc/b12PV/2df9b/d5Ae3LVPsBxoJKl7Tpi3Hq1Knui/HJJ590HYFXX33VWrVqFevFww7MnDnTRo0aVZj5gvjzt7/9zTIyMuz55593AwtOnz7drrrqKmvWrJl16dIl1ouHcqhDqc7kkUceaf/5z3/cQD367lQgYZdddiFIFGfy8/NdZqEGR0J82bhxo1122WXuhsTs82gf0Gd34cKFlpSUFJPlS8R+St26dd1xg57z1FNP2erVq23IkCHu9/H222+P9aJX23Znf49Nv84LmLO/+9fm6pvx3e5//1dBRPZ1/9t9Y0D7MtW+Zm0QaWfQl+GwYcOsXbt27stRHSx1AtQhQHxsw2nTprkzMog/ymbfa6+97IYbbrDdd9/dnUU799xz3cGPssQQbFu3brUrrrjChg8fbvXq1XMD9px66qnu/jfffBPrxUMlPfLII67jdPTRR9N2cfhb2KBBg1gvBmLY59Fj+u4N0sFNIvRTdLygANall17qsmqV6Tx06FB75ZVXXH1jRKfd2d9j069jf/e/zdnXY9P/ZV+PTbtvDGhfhmBtDGhk37y8POvU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YzBhwgTr16+fC2YeeeSRrpyAkgLWrVtn//jHP1yf8Igjjijsc3oUJL7uuutc31J9R/Ujw4Ou//d//2f9+/e3zp07u/e9/vrrXWA1fLmUlaq+5SmnnFLm8j///PNu+bQc6v/ecssttnnzZvdYnz59XEbtf/7zH1fea968eRVuv6ZNm9oNN9xgq1evLvI6JULofdXf1XrddNNNtnXrVvfY6aef7tZLy635KcNWWc5Dhw51j6tPrPWaP3++6yvrPY466ih78cUXC99fgeGrrrrK9dm1HR544AE3Dz1fQqGQ2zYqNaFtoeeMHDmycJ0BJCaCtQAQJ9RJ9jII1Jn2Aqq69O3www+3v//9765TrM6eOrbepVu63Ks4XRr273//2+rVq+eCuy+88IKr+zV58mT3uIK6ej91XhWkVadSnXIJL9EAAACA6FP/67bbbnPlDhYuXLhT7/Pzzz/bkiVL7K233nJ9PwU/Bw8e7G7qV/bs2dNuvvlmF0j0zJgxw01XlqkCvs8995xNnTrVPablUUBSfccvvvjCBYtXrVplV199dYlA7N13322vvvpqqcv28ssvu3VUMFSJBo888ohbHu99tLwq7eVdhaayBpXhZSV7/WkFYu+88063rl9++aX961//cv3if/7zn4XL26xZM1enVvNTAkXxtpT77rvPvY/63cccc4yNGjXKNm7c6B7z3vvpp592771p0yY3X6+Ew5tvvmnPPvusCwirL6521bbRugNIXARrASDgtm3bZq+99prroOoMv6hTp4zZOnXquM7eySef7LIAli5dWuH3bdKkiavppY5nmzZt7IADDrDvvvvOPTZz5kyrWbOmDRkyxGVxdOjQoTADAAAAAP5TdqcyO5W1ujOlBNRnvPzyyy0jI8MFPxs2bGj77ruv6wuqX6mM1t9//91l23qU9Xn88ce7fqNeo+xbBR+97FRllOp1ev3uu+/uAqy66mvlypWF76Gs0fbt21tyculhCAWiNQ+9l9c/vfjii+39998vcvVXZSno/NNPP9mYMWOsRYsWhXV/tbxKSjjkkENcALdly5buscoOXHb22We71yp4q6vblIGr+ansghIr1Idu27ata+9rrrmmSK3dtWvXuvZQHV5RcFiB8WHDhlV5fQHEP9KjACBglN2gjp1HHb699trLZct6l43pErCHHnrIli9fXuQyqezs7ArPR53VcArK/ve//3X3f/nlF3e5WHgGgTrpAAAAiB2VLHjnnXfs4YcfdgHXqtBgW15wUGrUqOECrOF9Qgmvj6tgYzgFFb0M3x9++MGd8FcwOVxKSorLsN1jjz3cv72/ZVGA84QTTigyTfVpvWCrgsoVpZIMXgZtQUGBu3/SSSfZHXfc4YKmXtBaJQgUDFYfWM/Ly8srsR47okCtx3tvJVso2K02DH9cAd2OHTvali1b3L9PPfVUmzNnjgtQq/TDwQcf7ALWClQDSFxk1gJAwAcYU+aCOtTqYIo6veqcKzNBl1F99dVX7hKqylIHuizqFBcftKG8QRwAAAAQfQqk3nrrrS5Y610RtSMKQoYrLbO1rGzXsvqB6it6J/X1WtXUDe+/6rZ48WKXteopXkagovMpbfqOhA8wNm3aNNcGvXv3tl133bXwOXfddZe7ck1/VcdWz/X625VRVtt5y1788fB1qV27tkvA0PKqhIKyelWzVyXKACQugrUAEHDqkCuDVgMSiIKzyra99NJLrW7dum6aOpeRtMsuu7gBGHT5lqeyl4QBAAAg8g488EB3tZUGoioeiFVmZ3iJBGWPevVTd4b6ouFU91ZXYUnr1q3t66+/LvK4Mkt/++23Ss1DWbTFA9AaR0HBzvDs1MpSxqrqzqq9VHbAowCtxnpQ+QclMagtFWCOFGUCq+SB2sqjvnV4W6lPr6vklLl83nnnuVq1Kv3w5JNPRmw5AMQfgrUAEHAKnN54440ug0IDF+iyM9GAC+pUaqAHDcggv/76a5HL19Th1Si0laVsXtUq08AR6kRqoAPVzwIAAEDsXXvttS4Y+uKLLxaZvueee9oHH3zgsjp102X+Xr9wZyiwqTJd6hdq8C/NwytZoCCjEgdUu1ZBWg14q0G2zj///BLB5PJogDNdLab3VsBZYzEo61RlAVS6YWdocN7GjRvbiBEjCjNe1af+5ptvXLBUAe3rrrvOXc2mkghaT1HbqQSD+sWVrROsQG2PHj3cWBN6D5UrGz9+fJE2UR3dv/3tb4UBXS2H1lsBcACJi2AtAMQBXZKlQRDUMVfWgcogqIatBnhQB3Ds2LHuOfqrEXg1gIMGBTvnnHPs3nvvrfT8Onfu7DJ69V7K3hg3bpxdeeWVOyyfAAAAgOjT5fOjR492V0KFu+mmm1ywUSfeNQDtPvvsY82bN3e1WKtKQcq//OUvblwF1VS96qqr3EBnqrfq9Rs18K2SBzRAl0p6KWg7efLkHZZXCHfiiSfa0KFDXR90//33t8suu8yOPfZYu/32221nqQTDnXfe6QLNTzzxhJumfrVKEhx22GGujIP6zxq8Tcvep08f9xz1pWfNmuXWqXhbV4TWRVnB2hZ6T2Ujd+vWrbBdFDzW42eeeaZrR7WBtq2C3QASV1LIO60EAEAYZRRoEASvM6nBD5Q5oUEt1OkHAAAAUD5l1HoDj8nZZ5/tBvpVkgUAlIbMWgBACarnpfpdKr2gbAplaDz44INu9FqvDAMAAACAst12223Wt29fVwZB2c0a0EwlJTTYGQCUhcxaAECp3n33XVfnbMWKFVazZk0XvB0+fDjBWgAAAKACVA9XZRzef/99N9ibkh5Um1dlFwCgLARrAQAAAAAAACAAKIMAAAAAAAAAAAFAsBYAAAAAAAAAAoBgLQAAAAAAAAAEAMFaAAAAAAAAAAgAgrUAAAAAAAAAEAAEawEAAAAAAAAgAAjWAgAAAAAAAEAAEKwFAAAAAAAAAIu9/wdtLP9jOs/7rAAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Average ratings per customer: 31.1\n", "Min: 15, Max: 45\n" ] } ], "source": [ "# Let's check the ratings distribution\n", "fig, axes = plt.subplots(1, 2, figsize=(14, 5))\n", "\n", "# Rating distribution\n", "ratings_df['rating'].hist(bins=9, ax=axes[0], color='#D4845A', edgecolor='white', alpha=0.85)\n", "axes[0].set_title('Distribution of All Ratings', fontweight='bold')\n", "axes[0].set_xlabel('Rating')\n", "axes[0].set_ylabel('Frequency')\n", "axes[0].axvline(ratings_df['rating'].mean(), color='#333', linestyle='--',\n", " label=f\"Mean: {ratings_df['rating'].mean():.2f}\")\n", "axes[0].legend()\n", "\n", "# Ratings per customer\n", "ratings_per_customer = ratings_df.groupby('customer_id').size()\n", "ratings_per_customer.hist(bins=20, ax=axes[1], color='#5B8FA8', edgecolor='white', alpha=0.85)\n", "axes[1].set_title('How Many Items Has Each Customer Rated?', fontweight='bold')\n", "axes[1].set_xlabel('Number of Ratings')\n", "axes[1].set_ylabel('Number of Customers')\n", "\n", "plt.tight_layout()\n", "plt.show()\n", "\n", "print(f\"Average ratings per customer: {ratings_per_customer.mean():.1f}\")\n", "print(f\"Min: {ratings_per_customer.min()}, Max: {ratings_per_customer.max()}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "---\n", "\n", "## Phase 2: Data Quality Check\n", "\n", "> **Business reality:** Real data is messy. Before building any model, always check for issues.\n", "\n", "Let's look for two common problems:\n", "1. **Duplicate ratings** — Has any customer rated the same item twice?\n", "2. **Suspicious patterns** — Any customer who rated *everything* exactly 5 stars? (That's not helpful for a recommendation system!)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Duplicate customer-item pairs found: 16\n", "\n", "Example duplicates:\n", " customer_id item_id rating\n", "1694 54 1011 3.0\n", "2881 92 1008 1.5\n", "3190 103 1025 2.0\n", "3339 108 1064 5.0\n", "3406 110 1041 3.5\n", "3907 126 1032 1.5\n" ] } ], "source": [ "# ── Check for duplicates ────────────────────────────────────────\n", "dupes = ratings_df[ratings_df.duplicated(subset=['customer_id', 'item_id'], keep=False)]\n", "print(f\"Duplicate customer-item pairs found: {len(dupes)}\")\n", "if len(dupes) > 0:\n", " print(\"\\nExample duplicates:\")\n", " print(dupes.head(6))" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Ratings before cleaning: 6214\n", "Ratings after cleaning: 6206\n", "Removed: 8 duplicate rows\n" ] } ], "source": [ "# ── Fix: Keep only the most recent (last) rating for each customer-item pair ──\n", "ratings_clean = ratings_df.drop_duplicates(subset=['customer_id', 'item_id'], keep='last')\n", "print(f\"Ratings before cleaning: {len(ratings_df)}\")\n", "print(f\"Ratings after cleaning: {len(ratings_clean)}\")\n", "print(f\"Removed: {len(ratings_df) - len(ratings_clean)} duplicate rows\")" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Customers who gave everything 5 stars (with 5+ ratings): 3\n", "Customer IDs: [42, 99, 155]\n", "\n", "⚠️ These customers don't give us useful preference signals.\n", " If someone loves EVERYTHING equally, we can't learn what they prefer.\n", " We'll exclude them from our training data.\n" ] } ], "source": [ "# ── Check for \"all 5-stars\" customers ────────────────────────────\n", "customer_stats = ratings_clean.groupby('customer_id')['rating'].agg(['mean', 'std', 'count'])\n", "all_fives = customer_stats[(customer_stats['mean'] == 5.0) & (customer_stats['count'] > 5)]\n", "\n", "print(f\"Customers who gave everything 5 stars (with 5+ ratings): {len(all_fives)}\")\n", "if len(all_fives) > 0:\n", " print(f\"Customer IDs: {all_fives.index.tolist()}\")\n", " print(\"\\n⚠️ These customers don't give us useful preference signals.\")\n", " print(\" If someone loves EVERYTHING equally, we can't learn what they prefer.\")\n", " print(\" We'll exclude them from our training data.\")" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Final clean dataset: 6098 ratings from 197 customers\n" ] } ], "source": [ "# ── Remove uninformative customers ──────────────────────────────\n", "exclude_ids = all_fives.index.tolist()\n", "ratings_clean = ratings_clean[~ratings_clean['customer_id'].isin(exclude_ids)]\n", "print(f\"Final clean dataset: {len(ratings_clean)} ratings from \"\n", " f\"{ratings_clean['customer_id'].nunique()} customers\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 💡 Key Takeaways: Why Data Quality Matters for Recommenders\n", "\n", "We just removed:\n", "- **Duplicate ratings** that would double-count preferences\n", "- **All-5-star customers** who provide zero signal about taste\n", "\n", "In production, you'd also watch for:\n", "- **Bots or fake reviews** (rapid-fire identical ratings)\n", "- **Rating inflation** (are your 4-stars actually 3-stars?)\n", "- **Cold-start customers** (new users with <3 ratings — can't build a profile yet)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "---\n", "\n", "## Phase 3: Build the Content-Based Model\n", "\n", "Here's the game plan in plain English:\n", "\n", "1. **Pick a customer** and grab all the items they've rated\n", "2. **Build a \"taste profile\"** — multiply each item's attributes by the customer's rating, then average them. High-rated items contribute more to the profile.\n", "3. **Score every menu item** — compare each item's attributes to the taste profile using cosine similarity\n", "4. **Recommend the top items** the customer hasn't tried yet\n", "\n", "Let's walk through this step by step." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Step 3.1: Select a Test Customer\n", "\n", "Let's pick **Customer #7** and see what they've been ordering." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Customer #7 has rated 38 items.\n", "\n", "Their top-rated items:\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
item_namecategoryratingprice
22Wings (Buffalo)Appetizer5.013.82
1Loaded NachosAppetizer4.511.28
28Meat Lovers PizzaPizza4.515.10
29Classic Smash BurgerBurger4.514.25
11Hummus PlatterAppetizer4.513.53
37Brownie SundaeDessert4.58.63
0Buddha BowlBowl4.012.17
13Churros with ChocolateDessert4.08.78
16Acai BowlBowl4.015.31
34Key Lime PieDessert4.08.94
\n", "
" ], "text/plain": [ " item_name category rating price\n", "22 Wings (Buffalo) Appetizer 5.0 13.82\n", "1 Loaded Nachos Appetizer 4.5 11.28\n", "28 Meat Lovers Pizza Pizza 4.5 15.10\n", "29 Classic Smash Burger Burger 4.5 14.25\n", "11 Hummus Platter Appetizer 4.5 13.53\n", "37 Brownie Sundae Dessert 4.5 8.63\n", "0 Buddha Bowl Bowl 4.0 12.17\n", "13 Churros with Chocolate Dessert 4.0 8.78\n", "16 Acai Bowl Bowl 4.0 15.31\n", "34 Key Lime Pie Dessert 4.0 8.94" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# ── Pick our test customer ──────────────────────────────────────\n", "test_customer_id = 7\n", "\n", "# Get their ratings\n", "cust_ratings = ratings_clean[ratings_clean['customer_id'] == test_customer_id].copy()\n", "\n", "# Merge with menu info so we can see what they rated\n", "cust_rated_items = cust_ratings.merge(menu_df, on='item_id')\n", "\n", "print(f\"Customer #{test_customer_id} has rated {len(cust_rated_items)} items.\")\n", "print(f\"\\nTheir top-rated items:\")\n", "cust_rated_items[['item_name', 'category', 'rating', 'price']].sort_values(\n", " 'rating', ascending=False).head(10)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "image/png": "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2r333nugZQIAAAAQpSCRl5fnri79pz/9yV3jQT/Hfn399dc2b968yistAAAAgNSbI/Hwww/blClT3BWm27VrF/cxrVu3rqiyAQAAAIhCkBgxYoSdfvrpdt5559ndd99d7P6DDz7YTjnllIosHwAAAIAorNqkK+xOnTrVBQoAAAAAVVO5ln9ViHjzzTft888/d9d2KGrUqFEVUTYAAAAAUQoS99xzjz355JPugnE1a9Ysdj9BAgAAAIi2cgWJ5557zk26Pvvssyu+RAAAAACieR2Jffv2ESIAAACAKqxcQaJHjx723nvvVXxpAAAAAER3aFP37t3tzjvvdJOujzzySEtLSyu4T9eYGDx4cEWWEQAAAEAUgsTYsWPd91mzZhW7jyABAAAARF+5gsTKlSstPb1cTwUAAABQVedIlBYi8vLyDqQ8AAAAAFJAuboVWrVq5YYwleSzzz47kDIBACIsIyMj2UUAACQrSNx1112FgoR6If7973/byy+/bJdddllFlAsAkGD5eXlWrXq5OqrLTItzZGVlWVQ+DwBUZeUKEkOGDIl7+/nnn2+TJ0+2QYMGHWi5AAAJpkb3+gXTbPfmDSm/7Ws2aGLNBlyV7GIAQKRV6Izpn/70p/b5559X5EsCABJIIWLXxnVscwDAflVon+/y5cvthx9+qMiXBAAAABCVHolu3boVu23v3r32/fff2y9/+cuKKBcAAACAqAWJCy64oNiqTTVr1rQWLVrYaaedVlFlAwAAABClIDF69OiKLwkAAACA6E+21lKv8+bNs2+++cb1TmiitVZzOuWUUyq2hAAAAACiMdl68eLFdvXVV7t5EV26dLHOnTu7+RGXX365vfHGGxVfSgAAAACp3yMxc+ZM+8Mf/mDnnHNOodufeeYZmzZtmvXo0aOiygcAAAAgKj0SGs505plnFru9T58+9uWXX1ZEuQAAAABELUjUrVvXNm3aVOz2zZs3W1paWkWUCwAAAEDUgkTXrl3thhtusA8//NC2bdtm27dvtw8++MDd1r1794ovJQAAAIDUnyMxZswYN9n6oosuKrieRH5+vlux6dZbb63oMgIAAACIyvKvjz/+uH3xxRf29ddfuxCh5V+bN29esaUDAAAAkPpBIi8vz0aNGmWNGjWy3/72t3bccce5L9Hk606dOtl9991XWWUFAAAAkIpzJGbPnm0rVqyw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O/bYY4/Zu+++a2eddZZdeeWVtm7dumQXDQAAAKiyQh0ktm3bZs8++6xdf/31lpmZabVq1bIRI0ZY06ZN7emnn0528QAAAIAqK9RB4tNPP7V9+/ZZ27ZtC91+wgkn2IoVK5JWLgAAAKCqS7cQ27x5s/tev379Qrcfeuihtnz58kK35eXlue87duyw3NzcSi1XWlqaVW98nKVnFC5XKqpe73DbuXNnpW+zRKJ+wi0q9cOxE27UT7hRP+FF3YRb9QS123bt2lWofZ2SQSJQrVq1Qr/n5+cXu2337t3u+zfffJOYQjVuZ9bYImHLZ59Z5FA/4RaR+uHYCTfqJ9yon/CibsJtSwLbbWpf165dOzWDxOGHH+6+b9myxc2PiO2paNiwYaHH1qtXz4455hirWbOmVa8e6hFbAAAAQGipJ0IhQu3r0oQ6SBx//PF20EEH2ccff2zNmjUr6I3QsKbevXsXemx6ero1aNAgSSUFAAAAoqO0nohAqE/d16lTx84//3ybPHmyrVmzxs1/mDJliuuhuPDCC5NdPAAAAKDKqpavU/whtmfPHps0aZI999xzLkhkZWXZzTffbO3bt0920QAAAIAqK/RBIqo0z+P++++3N9980wWko446yl1o75xzzilxKdzx48dbdna2G+7VvXt3u/32290KVkhu/fznP/9x9aF6iV0EQHWj56Piffnll/Y///M/9uGHH7qVJTT0cejQoTZo0KC4j+f4CWfdcOwk11dffWXnnnuunX322TZhwoS4j+HYCWfdcOwk3qWXXuoujKyVB2M9+OCD1qNHj6p77ChIIPEGDRqU/6tf/Sp/w4YN+bt3785/4okn8lu1apX/8ccfF3vs1q1b808++eT8O++8M3/btm3uOXr+0KFDqboQ1M+qVavyMzMz3WNR+XJycvJPOeWU/Ntuu80dD3v27MmfN2+eq4PXX3+92OM5fsJbNxw7ybNv3778wYMH55900kn5Y8eOjfsYjp3w1g3HTuKde+65+Q8++GCZHru1CrXbQj1HIqp+/PFHa9GihUumRxxxhNWoUcMuvvhiq1u3rku7RS1atMjNntfjNXtez7ntttvcYzV3BMmtH12BXSJ3liGktH72NddcY2PHjnXHg870nHfeee7nz+IsicfxE9664dhJnocfftitQ9+zZ88SH8OxE9664dhJPG3zsv6fX1SF2m0E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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# What do their ratings look like?\n", "fig, ax = plt.subplots(figsize=(8, 4))\n", "cust_rated_items['rating'].value_counts().sort_index().plot(\n", " kind='bar', color='#D4845A', edgecolor='white', ax=ax)\n", "ax.set_title(f'Rating Distribution for Customer #{test_customer_id}', fontweight='bold')\n", "ax.set_xlabel('Rating')\n", "ax.set_ylabel('Count')\n", "ax.tick_params(axis='x', rotation=0)\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Step 3.2: Build the User Taste Profile\n", "\n", "This is the core of content-based filtering. We create a **weighted average** of the item attributes, where the weights are the customer's ratings.\n", "\n", "**The math (in plain English):**\n", "- If Customer #7 gave \"Spicy Jalapeño Burger\" a 5.0 and it has `Spicy=1, Hearty=1`, those attributes get a big boost.\n", "- If they gave \"Caesar Salad\" a 2.0 and it has `Light=1`, \"Light\" gets a small (or even negative, after centering) contribution.\n", "- Sum it all up → that's the taste profile." ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Item-Attribute matrix for Customer #7's rated items:\n", "Shape: (38, 10) (items × attributes)\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SpicyVegetarianHighProteinGlutenFreeDairyFreeHeartyLightPremiumComfortInternational
00100001000
10000010010
20000010110
30101001001
40101001000
\n", "
" ], "text/plain": [ " Spicy Vegetarian HighProtein GlutenFree DairyFree Hearty Light \\\n", "0 0 1 0 0 0 0 1 \n", "1 0 0 0 0 0 1 0 \n", "2 0 0 0 0 0 1 0 \n", "3 0 1 0 1 0 0 1 \n", "4 0 1 0 1 0 0 1 \n", "\n", " Premium Comfort International \n", "0 0 0 0 \n", "1 0 1 0 \n", "2 1 1 0 \n", "3 0 0 1 \n", "4 0 0 0 " ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# ── Define our attribute columns ────────────────────────────────\n", "attribute_cols = ['Spicy', 'Vegetarian', 'HighProtein', 'GlutenFree', 'DairyFree',\n", " 'Hearty', 'Light', 'Premium', 'Comfort', 'International']\n", "\n", "# Get the genre/attribute table for items this customer rated\n", "cust_attr_table = cust_rated_items[attribute_cols].reset_index(drop=True)\n", "\n", "print(\"Item-Attribute matrix for Customer #7's rated items:\")\n", "print(f\"Shape: {cust_attr_table.shape} (items × attributes)\")\n", "cust_attr_table.head()" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "🎯 Customer #7's Taste Profile (raw weights):\n", "==================================================\n", " Hearty: 56.0 ████████████████████\n", " Comfort: 40.0 ██████████████\n", " Vegetarian: 39.0 █████████████\n", " Light: 30.5 ██████████\n", " HighProtein: 30.0 ██████████\n", " Spicy: 27.5 █████████\n", " GlutenFree: 26.5 █████████\n", " DairyFree: 21.5 ███████\n", " International: 20.0 ███████\n", " Premium: 16.5 █████\n" ] } ], "source": [ "# ── Build the taste profile via dot product ─────────────────────\n", "# This is the key formula: Attributes^T · Ratings = Taste Profile\n", "\n", "ratings_vector = cust_rated_items['rating'].reset_index(drop=True)\n", "\n", "# Dot product: each attribute gets weighted by the ratings\n", "taste_profile = cust_attr_table.T.dot(ratings_vector)\n", "\n", "print(\"\\n🎯 Customer #7's Taste Profile (raw weights):\")\n", "print(\"=\"*50)\n", "for attr, weight in taste_profile.sort_values(ascending=False).items():\n", " bar = '█' * int(weight / taste_profile.max() * 20)\n", " print(f\"{attr:>15}: {weight:6.1f} {bar}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 💡 Reading the Taste Profile\n", "\n", "The higher the weight, the more this customer values that attribute. Look at the top 2-3 attributes — that's this customer's \"type.\"\n", "\n", "**Business insight:** A manager can look at this profile and say, \"This customer loves [X] food — let's feature those items in their personalized promotions.\"" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "image/png": "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qrsQawMAkLUCF2xv3brVbr75ZuvQoYO1bt3azjzzTJs8eXKG+7z88st24oknWsuWLa1Tp042fPhwt3i5p0GDBvbSSy/ZySefbL1797Zrr73WXnnlFZfZbtasmY0ZM8aaN2/uniuUnrdv376H7LUCAJAXE6SVT9rpLqz6BQBA1grcBGk33XSTBQIBGz9+vB122GE2adIku+aaa+yNN96wVq1a2eeff26jRo1yAbcC8pUrV9r5559vpUuXthtuuCG4n7Fjx9ro0aOtfv36lpyc7MrYK1So4K5TYP7ggw+65xgwYIC7/549e9xzDR06NIavHgCA3E+QdnjS/5+ABgDAT/v370+Y9iVUsK3McuYstezbt89lnJcuXWpfffWVTZgwwSpXruxuU3b6ww8/dNloBds9evSwadOmWdmyZd3tNWvWtPbt29usWbMy7LNjx47WsGHDsO0oXry4nXbaaS4g94JtPa/emF69euXBKwcAAACA/G/hwoW2c+dOSwQJFWz37NnTZZbDTZC2bNkyW758ufu9T58+GW5XpluBtigr/cQTT7jgeMOGDZaenh4M1kPVqFEj27b069fP3nzzTRekt2jRwj766CM75ZRTrESJEj68UgAAYiPzpGgsBQYA8FODBg3i+oAqXtTk2AUu2M5J0v++ESiQLl++fNj7PPDAAzZlyhR77LHH3JjtlJQUV3q+YsWKDPcrUqRIts+lrLcC+Pfee8/q1KljX3/9tb3++us+vhoAAA49xdrz0//5DG2UvJFx2wAAX6WkpCRM+wrUBGm1a9d2P+fMmZPh+jVr1gRr72fMmGHdu3e3Nm3auAOpzPa8efMO6vmU3dYM5cpq67k1aRoAAAAAIPEVqGD7yCOPtGOPPdYeeughN35bAfYPP/xgp59+enDZrmrVqtn8+fNt+/bttmXLFjeDuEq/VVKuSc6yUqxYMRe0awby3bt3u+s0Plsl6iptz+t1vgEAOBRUI9YweZO7MBs5AABZK1DBttx///3WpEkTO++881yZ98iRI90s497EZSoZV7m5lvxSgKyJ0G699VY3SF/LgWWXxVap+fHHH2+zZ8921xUtWtQF8gq+Tz311EP2GgEAyCsakZWSFHAXxmsDAJC1pIBSr8gz119/vcuM33XXXTkOtFdGveTCKbZv+UzeEQAAAAAFRrHDa1mdQfdYvPPitkaNGrlVqLJToCZIO5Q01nvcuHH25ZdfujHbAAAkAp2i/yuQ6rYrJu0kuw0AQBYItvPAH3/84ZYh04znmtW8evXqefE0AAAcciqH+yvwz5n8Cgq2eQ8AAAiLYDsPVKlSxa2vfTCKlKlghQ6v5XubAADwQ3rArPKuf0LsYsVKWTLRNgDAB0XLV02440iwHWcqd+uXY+0/AACxVI/DDwDIA4H0dEtKTpw5vBPnlSQIb71vwI++pDXi6VPwE/0KfqNPgT6F/ID/VYdGUgIF2pJYrwZABlqyDvAb/Qr0KcQ7/k+BfoV4QBk5AACIKrvz3Xffue1OnTpZSkoKRw8AgDAItgEAQFQCWv8LAABki2AbAABELDk52Y4++ujgNgAACI9gGwAARCwpKcmKFi3KEQMAIAeckgYAAAAAwGdktgEAQMTS09Nt9erVbrt69eqUkgMAkAWCbQAAENXkaMuWLXPb1apV48gBAJAFgm0AABDVmO3DDz88uA0AAMIj2AYAABHTDOQNGzbkiAEAkAMmSAMAAAAAwGcE2wAAAAAA+IwycgAAELH9+/fbDz/84LaPPvpoS0lJ4egBABAGwTYAAIjKvn37OGIAAOSAYBsAAEQ1QVq7du2C2wAAIDyCbQAAEDEt91W8eHGOGAAAOeCUNAAAAAAAPiOzDSSw1NTUWDcBCYh+VbClp6fbH3/84barVKniSyk5fQp+K1y4MAcVQMwRbMcZZnWFn32pcePGHFD4in6FQCBgixcvdgfi8MMPp08hLv9PNWnC5x+A2CPYjjN/fvm2pa9bEutmAAAQVnrALH3nP9nsZUsmWXISBwrxpWj5qlb9jCvdMnUAEEsE23Fmz9YNtm/dilg3AwCALFX+3889f3OQAADIChOkAQAAAADgM4JtAAAAAAB8Rhk5AACIasz2ksBhbrtu0mbGbAMAkAUy2xHYsmWLnXvuudaiRQt78cUXI3kIAAAJa28g2V0AAECCZLY3btxozz33nH311Ve2bt06K1KkiNWsWdNOP/10O++88/Js2ayPP/7YZs+ebV988YVVqlTpoPezaNEiW7ZsmfXs2dPX9gEAcKho8vE6yVuC2wAAILx8c1p69erVdsYZZ9iSJUts9OjR9uuvv9rXX39tF110kf3nP/+xK6+8Ms+ee/PmzVamTBmrXLmyJSVF/9Vi79697ue4cePss88+y4MWAgBwaOhjsFjSfnc5iI9EAAAKjHyT2b7zzjutZMmS9swzz1jhwoXddcWLF7eTTz7ZqlSpYh988IELihUMP/TQQzZ16lTbunWry3xfeuml1qtXL/cYBepffvmlDRo0yG3rMccee6wNHz7cRowYYd9++62VLl3ahg4d6h5z2223uSBZazU2a9bMrr76arvssstclvvpp5+2FStWWKlSpeyoo45yj6lQoYJ7ngYNGrjf33vvPdemOnXquEBb25MnT7YPP/zQateuHdNjCgAAkKjS09Nj3QQkEG/ddtZvx/7/9YWECbYVEH/33Xd21113BQPtUK1bt3YXufDCC2337t322muvuUy0AtshQ4ZYoUKF7IQTTnA/16xZYwsWLHDB72+//WYXXHCBLV261AXbDz/8sI0cOdIF9yeddJLdfffdbj9jxoxxAbxMnz7dZdLvvfdeF+xrTPcNN9xgF198sY0fPz6Y/R47dqwL6OvXr2/JycnWv39/F4zrOgAA8qNAwGyrFXXbZWw32W3ErcWLF9vOnTtj3QwkGA0tBRIq2F65cqUFAgGrW7dujv9Up02bZq+//rrVqFHDXafs9LvvvusyzAq2JS0tza666iorWrSoy0iXK1fOmjZtam3atHG39+jRw9555x03RtzLVIdSIN+uXTvr06eP+13B+ODBg90kanPmzHEZcOnYsaM1bNjQ9+MBAECsBMxsTXpJt106eTfjthG36tWr55IdgF/ZTAXa+p6fV/NEIX9QLKm5uBIm2FY2WjQhWnZ+//1391Ml26Fq1apl33//ffD3smXLWokSJYK/p6amulJ0T7FixdzPXbt2ZRn8e5n00OfwbvOCbS/gBwAgkZRK2hPrJgA5UqBNUAS/qU/Rrwq2lChOtuSL030KWhVwz507N6L7Z57ETFnx0OvCneWM5sxn5v1l9dw5nRwAACC/SU4yOyJ5m7toGwAA5ONgWxOWde/e3V555ZWw2WaNv1bptyZDE81YHkq/+zkZmfalkvXMz+HdBgAAAAAo2PJFsC233367C7QHDhxoM2fOdOMmVC+vNbB1Xdu2bd3YnE6dOrlJztauXesmStNM4j///LOdc845vrVlwIABbp+aAX3Pnj1uWbJHHnnEWrZsaY0aNcrycSpP1+RsmiVdbQMAAAAAJKZ8E2xXqlTJBbeamOzmm292wbWW7HrjjTds2LBhdv/997v7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2ho0aGDffPNNLJ4eAAAAAID8VUa+adMme/755+2rr76ydevWuesqVapkXbp0sX//+99Wrly5g9rv+PHjrWXLllazZk3f2tq/f3+bPn162LFnXbt2tSeffNK35wIAIBFogrRFixa57fr167t1twEAQB4H28pYn3vuuW65oYcfftgaNmxo+/bts1mzZtl9991nZ5xxhr3//vsHtcyIHv/AAw/4GmxLz549bfTo0RG3Q18yWJ4LAFBQ6bPQO5ler169WDcHAIC45evp6DvuuMPKlCljTz31lAu4dba7SJEidtRRR9kLL7xg/fr1s7S0tLAZ5sGDB2e4Tr/r+m3btlmzZs1s8+bNdsUVV9gFF1zgbt+6davdfPPN1qFDB2vdurWdeeaZNnny5ODjFUD37t3bJk2aZCeeeKK1aNHCBfu//fZbVK9p2LBhdvnll9ttt93m9jF79mx3/eeff26nn366NW/e3I499li79dZbXRs9ObUPAID8SOtqH3nkke7CGtsAAByCzLYCzalTp9o999wTtixb5eNXXnllMAMeqVKlStnEiRPtuOOOs6efftqVo8tNN93kzq6rvPywww5zQfU111xjb7zxhrVq1cq1Qc8zZcoUGzt2rAv8L774Yhs5cqS9++67Ub02BegXXXSR/fLLL26/+n3IkCEuoFe5+YYNG1xQfsMNN9iLL74YUfsAAMiN/fv3x+wAVqtWzf3U51xu2+E9PpavB4mFPgX6FfJSNJ9XvgXbq1atch+6derUsby2dOlSNyZ8woQJVrlyZXfdySefbB9++KGNGTMmGMwqK67scunSpd3vvXr1irhkPPMBHTRoULB8/OWXX7Zu3bpZjx493O9VqlRxgfZZZ53ljsOePXsiah8AAAdr4cKFtnPnzoQ5gF7lGECfQjzjfxWi4Vuw7QWiKhsPdeGFF9qMGTPctoLxNm3auOx3bixfvtz97NOnT4brtf/QQLZs2bLBQFuKFi1qu3btyvAYZc3DlXcruL7uuuvcdtWqVTOM0162bJktXrzYlbeH0n2UTd+xY0dE7QMA4GBpVY9Y0GeZTip7n/m5LSXXCW19edVnKnOiwA/0KeQF+hU8GhbtTRR6yILtI444wgoXLmzz5s1z47U9r776anBbpdZr1qyJaH+aiCwr3ge7ssfly5fP8n6RfGhHMkFa5hMIKkk/++yz7c477wx7/y+++CKi9gEAcLBiFZjqC+dPP/3ktjt37uxbO7Qfgm34iT6FvEC/QkoUn3u+TZCmsdUqq1Zw7Z3xjjSAVsZ57969Ga5bu3Ztls9Vu3Zt93POnDkZrlcgfyjGfOn5586dm+E6lfKtX78+LtoHAEBe0klvJkcDAOAQzkY+fPhwFzRrMjGVjmvZLwWXKrkeNWqUffzxx9a2bdsDHqelQ2bOnGlbtmwJzvTtlYpLampqsHxb99EMqJoB/KGHHnLjt/UcP/zwg5sd/LPPPrO8NnDgQFfyprHbCrI1OZxmYtfr1gmFWLcPAIC8PKOvyUF1IRMNAMAhWmdbM46PGzfOXnnlFRsxYoTL5Cr4rlixohur/frrr7sxy5lnI9f4aAXkmsBMM3frA1yBqUrSRaXYp512mj3yyCNukjE9x/333+8C+PPOO88FvJoZVZOUaR95Tct9Pfroo/af//zHlaDrZEC7du3c8mYqMZdYtg8AAAAAEFtJAc10grgYaD9//nzbkZxmm9P+f71uAABClSlRxo5t2TVhDoqqv1Td1rJlSzLloE8hbvG/CpnjtkaNGlnx4sXtkGW2AQBAYtNwqSVLlrjtunXrBiu6AABARnxCAgCAiKkgTpOY6kJxHAAAWSOzHWdKFCtu6UlZL3sGACjYShUvGdPn1yzktWrVCm4DAIDwCLbjTKOaOdf+AwAKNmWUYxXoqmzcC7YBAEA2n5kcnPjCOtzwsy9pRn/6FPxEv4oPZJQBAIh/ZLaBBKZl5wD6FfzOqnsn8bTONoE/AADhkdkGAABRzUb+3XffuYu2AQBAeATbAAAAAAD4jDJyAAAQ1QRpXbp0cduUkAMAkDWCbQAAEDEF2ATZAADkjDJyAAAAAAB8RmYbAABETJOiLV++3G3Xrl3blZUDAIAD8QkJAACiWvpr1apV7qJtAAAQHpltAAAQMY3XrlGjRnAbAACER7ANAAAiprLxOnXqcMQAAMgBZeQAAAAAAPiMzDYAAIiYxml7Y7VZBgwAgKwRbAMAgKhmI//222/ddufOnS0lJYWjBwBAGJSRAwAAAADgMzLbAAAgqgnSOnXqFNwGAADhEWwDAICIaZx2oUJ8fQAAICeckgYAAAAAwGecmgYSWGpqaqybgAREvyrYNEHaypUr3fYRRxxBKTkAAFkg2I4zzOoKP/tS48aNOaDIN/1Ky0mpRBnxTe/TihUr3HaNGjVi3RwAAOIWwXacmf/7fNu2e3usmwEAh1Sp4iWtTf02HPV8QCdEqlatGtwGAADhEWzHmR270mxr2tZYNwMAgLA0A3n9+vU5OgAA5IAJ0gAAAAAA8BnBNgAAAAAAPqOMHAAARGz//v323Xffue1OnToxsScAAImW2X766aete/fusW4GAAAFckZyXQAAQBxltvv372/Tp0+3QoX+eerChQtbrVq1rFu3bnbhhRda6dKlI9rPFVdc4S650aBBA9cOTfaS2ZAhQ2zgwIG52j8AAIlGn5lHH310cBsAAMRRGXnPnj1t9OjRbnvXrl02c+ZMe/LJJ+3999+31157zapXr56r/e/du9cF8ZG47bbb7Nxzz/V9vwAAJCIt91W0aNFYNwMAgLgX8zHbxYoVsw4dOlibNm3s/PPPd8HvK6+8YitWrLD77rvPBeJ79uyx2rVr2/XXX+/Gh8kTTzxhY8aMsalTpwaz1EOHDrX33nvPfRHQ7ytXrrSxY8dmeL7jjz/eTjjhBLvxxhsjap9K1U899VT78ccfbeHChfbrr79aenq6PfPMM/buu+/axo0brUqVKta7d28bNGhQMGOv+44aNcrdX19KmjRp4trHcikAkP14YBTM95z3HvQpxDP+V8ETzedVzINtjzLGClavueYa+/PPP91PBbGTJ092Abky31dffbVNmTLFDjvssLD7UGCtjLkC2hkzZrjgfcGCBdawYUN3uwJ3BeB9+/aNqm0ffPCB3X///dauXTv3+8svv2zjxo2zp556yj3XvHnz7Morr3S3XX755bZjxw73Ws4880zXbgXn+qky+UmTJlnJkiVzfbwAIBHpROXOnTtj3QxkQ2O1N2/e7Lb1eawT3H6YPXs2xx2+ok8hL9CvEI24Cbalbt267qcCYmWt9QGemprqrjvjjDNcNnnRokXWvn37sI/v2LFjMLBu27at25+yz8qWy4QJE1zArDHi0WjcuHFwfJq89NJLbrx4o0aN3O/NmjVzgfTrr7/ugu0PP/zQnfG47rrrgl9ClElXWz777DMXhAMADqSqJOSf2cibN2+e69nItT99edVnaW73BdCnkFf4XwVPWlqai0nzXbCtMdGisuuff/7ZBdfLly+37du3B++ze/fuLB9fo0aNDL/369fPZZQV6Kq8+5NPPrGbb745w33uvvtuu/feew/Yl55bwXvm/W7bts02bNjgStyV7fZ4s7Kq5H3ZsmXurL++hIRShnvNmjURHw8AKGgItuKfTiJXrVrVbWc1yejBvve8//ATfQp5gX6FlChODMdVsD1nzhxXTq4P76uuusrOOusse/bZZ90M5atWrbIePXpk+/giRYpk+F3Z8IcfftiVomsfOiOl8drRTpAWul8vU/3AAw9Yr169wt5fXzyOPPJIF9wDAJBI9BnnVZEBAICsxc2aHcpYayy0gmGVkStDrFJtbymwgxkfoccqIP7oo4/c5bTTTsv1DKoab12xYkWbO3duhuuV7VZJgWgyt9WrV9vWrVsz3EevCwAAAACQ+GIebCuoVsm41t9WGbkyzdWqVXO3/fTTT670+vvvv3eTlMkff/wR1f7POeccN7ZME5NFOzFaVi666CI3pvzbb7+1ffv2uVL3Sy65xM0+Lpq9vFSpUjZixAjbtGmTe41a0uzkk0+2tWvX+tIGAAAAAED8ikkZ+cSJE11pt1fzrlnHldG+9NJLXea4XLlyroz8rrvusuHDh7ux0xofrbHV+qkAPFItWrSwOnXquInW/Fp2a+DAgW623DvuuMPWr1/vZmNVBl1Lk0mJEiXshRdesAcffNCOO+44d51K7l588cXgODcAAPIjDcn64Ycf3LYmD2WcNQAA4SUFvJm9EpSyyieeeKILhJVxjlcqQZ8/f77tSE6zzWn/LKkCAAVFmRJl7NiWXWPdDEQYbKuySzp37uzLbORamrNly5YE7vAFfQp5gX6FzHGbVqYqXry45ZsJ0vy2a9culw1XSXdWk5kBAIDoJkjTMpreNgAAKGDBttbUvuWWW9wZh6eeeirfnC0vUay4pSdFXiYPAImgVPGSsW4CIqRVOXI6kw8AABI42D7llFPcJb9pVDPncgQASEQa1eQtrwgAAJDfUf8Vh+NBAL/60rx58+hTyDf9ikA7f9AkpWvWrHGXaCYsBQCgoEnYzDYAc7PmA36jXxVsqkBYvHix2z788MNj3RwAAOIWwTYAAIiqAqFixYrBbQAAEB7BNgAAiJhmIG/SpAlHDACAHDBmGwAAAAAAnxFsAwAAAADgM8rIAQBAxDQT/Y8//ui227dvbykpKRw9AADCINgGAABR2bNnD0cMAIAcEGwDAICoJkhr27ZtcBsAAIRHsA0AACKm5b5KlizJEQMAIAeckgYAAAAAwGdktgEAQMTS09Nt/fr1brtSpUqUkgMAkAWCbQAAELFAIGALFixw2xUrVuTIAQCQBYJtAAAQ1ZjtcuXKBbcBAEB4BNsAACBimoG8efPmHDEAAHLABGkAAAAAAPiMYBsAAAAAAJ9RRg4AACK2f/9+mz59uttu27atpaSkcPQAAAiDYBsAAERl586dHDEAAHJAsA0ksNTU1Fg3AQmocOHCsW4CYjxBWqtWrYLbAAAgPILtOEM5HvzsS40bN+aAwvd+1aRJE45qAablvsqUKRPrZgAAEPcItuPM/N/n27bd22PdDAAIq1Txktamfhs3bhcAAABZI9iOMzt2pdnWtK2xbgYAAGEFAgH766+/3HbFihVdphsAAByIwVYAACBi6enpNm/ePHfRNgAACI/MNgAAiErZsmU5YgAA5KBAZrbXrFljzZo1s6lTpx6y51y9erU1aNDAvvnmm0P2nAAA5MUkeS1btnQXJvUEAMCnYHvYsGF29tlnR3z/8ePH2++//27x4PXXX7dNmza57WrVqtns2bOtY8eOsW4WAAAAACABJeflBCr33XdfroLtffv2+dKWv//+2+69917bvHmzL/sDAAAAACBPgu1zzjnHBbBPPPGEderUyVq1amWXXnqpyx5v27bNlWkruL3iiivsggsucI/ZunWr3XzzzdahQwdr3bq1nXnmmTZ58uTgPrWvU045xZ588km3v88++8zeeecda9eunf3yyy922mmnWYsWLezEE0+0r7/+Ovi4jRs32vXXX29HH320K2s7+eST7cMPP3S3LViwwI455hi3TM3pp59uN910U9iS7rFjx7r963l79Ohhd911l23f/s8SXCtWrHD313Necskl7j56zc8++2zw8dr/I488Yt27d3dtPPbYY+3hhx9m8hgAQELR59306dPdhSXgAADIgwnSChcubB9//LFdfvnlNmXKFBfAKgB/4YUXXEA7ceJEO+644+zpp5+2Ll26uMfoemW8VV5+2GGH2aRJk+yaa66xN954wwWwouVEFJRPmzbNPccHH3xgO3bssNdee81efPFFK126tA0ZMsQF7d9//717zK233mrr16+3CRMmuElbFDgPHTrUGjVqZA0bNnSPGzBggHveOnXquLaG0nPcc889Nnr0aFdartuvvfZau+GGG+yZZ56xQoX+OUyPP/64jRw50u335ZdftgceeMAF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amSDBg2yzZs3F5zMts7Y6IWrXEGXpk2bWufOne2666475OULd999t73++uuH9DkBAMgP9IVR5YW65PbLIwDEwrfffusue/fuDV6n7KmuU3AWaurUqe763bt3B69bu3atu07BYahp06a569PS0oLXrVu3zl3nreJwsBSAKrjMHBdNmTLFSpUqdUAGeuHChXbxxRe77G+HDh1ccLlo0aLg7du3b7chQ4a4TK8yyA8++GCGkwQ//vijy5YvXbrU/a7XNHz4cJdRbtGihfXo0cNeeeWVDMdJ9585c6adc8451rJlS+vWrZsLij0ffPCBi/P27NkT9jVq8k09Vm0tUqSIVahQwQYMGGBLliyx9evXu/bNmTPHTjzxRHfyQUOZ2rVrZ3Xq1HHXhzN//nx3QuLss892+0xNTbU+ffq4IP5QxJhxE2yLygBUrqCLDpjOUOhM0EUXXeQ6RKjQPw4AAHDoFC5c2F0AAIdG+fLlXVD8zjvvZLhev/fu3TvDdQokFbAqsFUQPHnyZKtXr54rn/ZiqlGjRtmsWbNctlwBu/avcuusPPLII/bNN9/YW2+95QLq22+/3e6//353nRQq9M+8248//rjb9/Tp090JgjvuuMO2bNnibjvjjDNcnKegNxwF8qowDrVy5UorVqyYO6GgSTlPOOEEl/Fes2aNC6KVrVbQrOA/HJ1oKFOmjL366qu2c+dO9/rHjh1rNWrUcMtXFujZyDX5yi233GLHHnusO5MzYsQIO/XUU92ZFp2tUa29zqo/88wz9u6779rGjRutSpUqrsOpg+lNVwfTWR2deVGHWLZsmZtF9dFHH3WPUUCvfZx55pk2dOhQ97zDhg1z91PnXb16tesozz//vHXp0sXdrjNbzZs3t/vuu8+dGdFZIZ3t0diCF1980b2RaoPKILQvdeTKlSu7MgedPQJQsOikYaK9lkR6TYievrx4ctsX6FPwG30KOTnmmGPcT2VGvf6iuENxhAK60P9r3v87L+ur2/S9XpnVzPfVOOfM+1V5tzK0me8bDT234pW+ffu67PI111zjAlYFnIqL7rnnHhf0eiXryiDr59VXXx1cNeL66693sc+nn37q4pcJEya48uojjjjC3a5AXIG3niu07N3bp+Id7a9kyZLuOgXGel2Kxzp27Bi8vzLT1atXd9unn366/fe//3XBsGKnaKlyQCXiaqde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c+ztt9+2/fv320UXXWTbt28/4P579+6NeN+bN2+2unXrWnLywX10RPNch1KPHj1cQL127doM13/99ddWsmRJ9zPUV199ZYULF3ZZ/liYNGlSjsG23vsPPvjAbrjhBktKSrL8Yt++fYfkef7++28XPKpP56e+6mfbIt2Pd4zq169/UH1J/38CgYDFgxNOOMFq1aqVr08aAMhfCLYBIIFVrVrVbrnlFvvjjz/sl19+cdep9Hf06NF2zjnnWLt27dx16enpwTLiFi1auKBd5cde8KNM+Zo1a+yll15y28oM7d692wUsnTp1ciWmp556aoYgUCXLul7X6Xlefvlld70C24svvtjdprLOQYMG2aJFi4KPU7u0X5Upe/u+9NJLM2Qhf/vtNzvvvPNcWzt27OgyVmqPZ8yYMXbiiSda8+bNXTA9atQo27lzZ9hj1LVrVxc8f/nll8Hr9FyzZs1yz6HgOpR+b9++vQvEczpuXln40qVL3e/btm2zIUOGuMer3frSP3z4cPeaQ61cudLOP/98V7LfrVu3YPm3XoeOjV6/3oepU6eGfU061m3btnWVCKF0DIYOHWpt2rRxbbjrrruCgZCOt9rkUZsvuOACd/x1LCdPnux+qu+E0smIk046yb3+M844w7XNs3XrVrv55pvd+9y6dWs788wz3X48es5TTjnFnnzySfc8n3322QGvRScNvGqNcJesfPrpp3b66ae7/arCQP1s2bJltmDBAjvmmGNcEKjbb7rpJle2r/fprbfecu+lVy69ZcsWu+2229x7oParLD+0okHHQtfpBIiOTbhjEMlx/Pzzz11b1F+PPfZYV7YdeiJAbdPf3sknn+yeLxz1K/2dPPfcc+7vRu//lVdeGfy78fqijqfe57vvvttdr5NMV199tbu/jpP63fTp04PHXn+rovZp/5H8DavKRv36X//6lzsmGzZsyPHvcsWKFa596k+XXHKJ27dehzcMwqPj4P29qe+Evh859TcZMGCAvffee+6+AJDnAgCAhHDBBRcErrvuugOuX7lyZaB+/fqBqVOnut+7desW6NKlS+D7778P7Nu3z133wgsvBI477rjAvHnz3HW//fZboHPnzoFnnnkmuB897sEHHwz+PmLEiECfPn0CK1ascI/R/lq2bBn46KOP3O3vvfdeoEmTJoFhw4YFtm/fHti/f7/72bFjx8Aj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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# ── Visualize the taste profile ─────────────────────────────────\n", "fig, ax = plt.subplots(figsize=(10, 5))\n", "\n", "sorted_profile = taste_profile.sort_values(ascending=True)\n", "colors_bar = ['#D4845A' if v > sorted_profile.median() else '#B0C4B1' for v in sorted_profile]\n", "\n", "sorted_profile.plot(kind='barh', ax=ax, color=colors_bar, edgecolor='white')\n", "ax.set_title(f'Taste Profile: Customer #{test_customer_id}', fontweight='bold', fontsize=14)\n", "ax.set_xlabel('Preference Weight (higher = stronger preference)')\n", "ax.axvline(sorted_profile.median(), color='gray', linestyle=':', alpha=0.5,\n", " label=f'Median: {sorted_profile.median():.1f}')\n", "ax.legend()\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Step 3.3: Score All Menu Items\n", "\n", "Now we compare every menu item's attribute vector against the taste profile. Items that are a close match get high scores.\n", "\n", "We use **cosine similarity** — it measures how similar two vectors are on a scale from 0 (totally different) to 1 (identical direction).\n", "\n", "> **Why cosine similarity?** It focuses on the *direction* (pattern of preferences), not the *magnitude*. A customer who rates everything high can still get good recommendations because we're matching the *pattern*, not the raw numbers." ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "🎯 Top 10 Recommendations for Customer #7:\n", "======================================================================\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
item_namecategorypricematch_score
2Mushroom Swiss BurgerBurger16.390.656849
7Blue Cheese BurgerBurger17.200.656849
25Fettuccine AlfredoPasta17.710.656849
29Truffle Mac & CheesePasta13.280.628494
49Mozzarella SticksAppetizer9.110.611734
38BLT ClassicSandwich14.420.600561
57New York CheesecakeDessert7.980.589388
33Grilled Chicken PaniniSandwich15.740.588427
28Shrimp Scampi LinguinePasta16.550.588427
36Turkey Avocado WrapSandwich12.520.588427
\n", "
" ], "text/plain": [ " item_name category price match_score\n", "2 Mushroom Swiss Burger Burger 16.39 0.656849\n", "7 Blue Cheese Burger Burger 17.20 0.656849\n", "25 Fettuccine Alfredo Pasta 17.71 0.656849\n", "29 Truffle Mac & Cheese Pasta 13.28 0.628494\n", "49 Mozzarella Sticks Appetizer 9.11 0.611734\n", "38 BLT Classic Sandwich 14.42 0.600561\n", "57 New York Cheesecake Dessert 7.98 0.589388\n", "33 Grilled Chicken Panini Sandwich 15.74 0.588427\n", "28 Shrimp Scampi Linguine Pasta 16.55 0.588427\n", "36 Turkey Avocado Wrap Sandwich 12.52 0.588427" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# ── Score every item using cosine similarity ────────────────────\n", "\n", "# Get the full menu attribute matrix\n", "menu_attr_matrix = menu_df[attribute_cols].values\n", "\n", "# Reshape taste profile for sklearn\n", "profile_vector = taste_profile.values.reshape(1, -1)\n", "\n", "# Compute cosine similarity between taste profile and every item\n", "similarity_scores = cosine_similarity(profile_vector, menu_attr_matrix)[0]\n", "\n", "# Add scores to menu dataframe\n", "menu_scored = menu_df.copy()\n", "menu_scored['match_score'] = similarity_scores\n", "\n", "# Remove items the customer already rated\n", "already_rated_ids = cust_rated_items['item_id'].tolist()\n", "recommendations = menu_scored[~menu_scored['item_id'].isin(already_rated_ids)]\n", "\n", "# Sort by match score\n", "recommendations = recommendations.sort_values('match_score', ascending=False)\n", "\n", "print(f\"\\n🎯 Top 10 Recommendations for Customer #{test_customer_id}:\")\n", "print(\"=\"*70)\n", "recommendations[['item_name', 'category', 'price', 'match_score']].head(10)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "image/png": "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f9ZZZ4XLL7887LnnnmGvvfZqyeOsWCRirrnmmvD++++H3377LUw66aShT58+Yddddw2LLbZYk19vjz32iD+tdazbbLNNmGiiiUK7du3iD8c7zzzzhN13371ZxytJkiTl0ZFHHhnuu+++wu///PNP6NixY2jf/v/qvd57770mv+7VV18d2kpjYoN///033HjjjeGBBx4oJCKmm266mAQhJunatWuj3mvRRRdt1ni0JRIo6RwSy3Tq1CnMNNNMYbPNNjPhIEmSNCF2ZnTv3j3ceuut49w+evTocM8994Rpp502lMuYMWNCTU1NyAsm+9ttt12Yb775YvAwcODA+Occc8wRtt9++/Dhhx+GPCKo49g53oceeijMOOOMYaeddgq//vprs16PAKo1cK4555IkSVJTnXjiiXHOm35SgqP4tnLPeccHCRo6RW655Zawzz77xOIlfvjs/Ln++uuHX375JVSTdA6JZZ5//vmYyDjqqKPCs88+W+5DkyRJUlsnM1ZaaaXw5ptvjtNe/PTTT4fJJ588zDrrrIXbmCBTHTNkyJDCbfw9u3TU4MGD4wV/qv4XXHDBsMEGG8TXyvr555/DbrvtFu9feumlw6WXXjpWWy8VRUxa559//kLQ8dRTT4UNN9wwLLzwwmH55ZcPBx10UBg+fHjheVyY5zkrrLBCWGihheJE/uGHHy7cT/fJuuuuGy/s83xemwDgp59+CnvvvXc8luWWW26s5xR7+eWXY5cDxz7VVFPF26aZZppwyCGHxACCroe77rorLL744mNdlF9nnXXGaRdn3K+//vpwwQUXhKWWWqpw+yOPPBLWW2+9eDxUS+24447hs88+KwQvJ5xwQlh22WXj8XO8p512WpMCramnnjpsvPHG4e+//w7ffvttvO3uu++O55DbElrIuY2WcnD8jCHBQ+ro+P3338MBBxwQPy+f4aKLLgpHH310fEzy0UcfxYCLz9O3b9/4eT7++OOxuoN4DmPKZ8qeU0mSJKklsbQSc1XmncQhxAHfffdd4f5Sc17mq/vtt1+c+y6wwALh5ptvHuc1U4xEcc7ZZ58dX4f3IO6g2722trbk8RAzEP+sscYaMUYqjg2KXXvtteHtt98OV1xxRYwFJp544vizyCKLxO5x/sx+HtBpv8wyy8T5+M477xzfp1RsRzEbx8pj+ZwbbbRRjH8ac9x4/PHH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5eGHHy55/1lnnRXvv+CCC1rsPRdddNE4P5911lnj70OHDg133HFHi71+Nfnll1/CmWeeGdZcc82w4IILxkKkfv36hcsuuyz8/fffTXqtE088Mdx4442h3L766quYWFlxxRXDAgssEL8PG264od8BSZKkKlfVyQysvvrqMdAp/rnwwgsb/RoEXu+//37h97vvvjsmGKrNE088Ef7555+w1FJLhZtuuqlRgdGcc84Z2rVrN859//77bysdpSRJkvKme/fu4dZbby1ZLHPPPfeEaaedttXnseOTzCg1d62G+SxJng022CAMHjw4nHbaaeGNN94Ir7zySkwEPPXUU2HjjTcOf/zxR6gko0aNCltssUX47bffwnXXXRfefvvt8Oyzz8bbjjvuuHDzzTeX+xAlSZLUSqo+mdEYBF4s5TTffPOFlVdeOU70mSSDC/sffPBBrEKi8mefffYJ1157bezMSK3ttBXTXpxF9ROPT7744ouw8847x2oolmY68MADYzIguffee8Maa6wRj2GVVVYZq+KJ1+H1cPvtt4fFFlssvPnmm2HdddcN888/fzx2JvAJFVYnn3xyWHrppeP7rbPOOo0K7nhPHktVE0Hnn3/+WfJx3377bfzsYFx4D1Bxd/XVV8dujfXXX7/Rx8L485mpqtp2223Dd999N9b9f/31VzwnPIbXWHvttcMNN9wQxowZ0+BnkiRJUutbaaWV4vy0uLv36aefDpNPPnmhgyL56KOPwg477BDndn379g077rhj7H5OuMB+wAEHxHnzEkssEc4444yx5n6vvvpqnHsOGTIkzhOZbw4cODDOUV988cX4mMcffzyst956cX69/PLLhyOOOGKs+XepuSvzbrqPN9tsszjnxsiRI8PRRx8d57PMvYkXiAcS3o/Xeuedd+LzmNOusMIKsQAqqa2tDRdffHF8fV6Dgis6I0j2JMznSS4svPDC8b2JHb788svC/bw2n5NCqzS35jE///xznefl2GOPDZ07d47vxdh06NAhdOzYMXZn8Nl/+umn+HnBEq98DpZ8TZjLc1v6LNm4h/iG+zjunXbaKR4Px8V7ZTH3J27hfsbuhBNOGCuBwnmju4fuCj77lltuOVZXfDG+Jz/++GPYbrvtwkwzzRQLq7p06RJjGMbmP//5T6PHtBgxGfEKx8r3jiWoGKPkhx9+CLvsskt8vWWX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K5IkSSq/CSqZsfXWW8cL5g8//HDJ+88666x4/wUXXNDmx5Z3d955Z9h0003D4osvHuaff/6w3HLLhYMPPjh89913hccMHTo03HHHHYXf99hjj/D000+X6YglSZIk5cGRRx4ZkxXph5jrP//5T+H3HXbYIbz33nth1llnbdPjMl6RJEmqLBNUMgPdu3cPt9566zi3jx49Otxzzz1h2mmnDXn177//luV9r7322nDSSSeFHXfcMTz77LPh7bffDtdcc0344YcfwpZbblnopnjiiSfGSmZIkiRJ0oknnhiTFeknJTiKbyulpqYmjBkzxkGUJEnShJfMWGmllcKbb745TgszHQSTTz75ONVAn376adhpp53CEkssEfr27Ru222678MEHHxTuX2211caqMurTp0+sNMq2SxdXIR122GGF55MU4DUWWGCBsPTSS4ejjz46jBw5snA/j7/66qvDWmutFdZff/14G8mDk08+OT5+wQUXDOuss06jkwgEA2effXZsp6bDYvnll48dKbW1tXU+54UXXojvs+qqq4ZJJpkktG/fPsw222zh9NNPD/vvv3/4559/wmmnnRaPaeDAgfFzvvjii7HDZamlliq8zvDhw8O+++4bFllkkfiz2267ha+//rrke/7+++9h3XXXDfvss0885sGDB8exX2yxxeKxbLDBBnZ9SJIkSVXg1VdfjXHPkCFDCh31xEXEC8QsxBENxTFffPFFfA0KrDbffPMw33zzhTXWWCO8//774YYbbgjLLLNMWHjhhcNBBx0UXwvF8cojjzwS1ltvvRhvLLroorGY67PPPqtzWdznnnsu3vbNN9+08YhJkiRNmCa4ZEa3bt1iYuL2228f63Z+T8mC5LfffoudBzPMMEN47LHHwpNPPhl69+4db/v+++/jY7g9VRM988wzYeqppw6bbbZZvI8JcLba6IQTTggdO3YMG220Ubz/8ccfj0mAY489NnY73HTTTfECPWu3ZpGoYKJ+//33x995DgkZHv/GG2+Eww8/PCYSHnzwwQY///XXXx8n87zHO++8Eyfw/H7bbbfV+Zx55pknvPXWW/H9SVxku1xIpJAEOuSQQ+LEn6CBz5oNChIChz///DN+bjo8SIzsuuuu41RaESAQuEw//fThzDPPDB06dIhJE16bxMprr70Wl7w64IADwogRIxr8zJIkScW4mOnP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8suHq666KvTq1Sv89ttv4eGHHw7HHXdcvP+oo45qgU8oSZIkqZrjGEmSJKk1ucxUDlHZtMgii4T5558/DBkypNXeZ8yYMbHb4z//+U8488wzw6yzzhqTJ127dg2bb755OP3008NEE00U/vnnn3GeO3LkyHD00UeHpZdeOh4nXSTXXnvtWK9NUmXFFVeM9y+11FLh8MMPD3/88Udh2So6RRZffPGwwAILhLXWWivceeedheezpNUtt9xS+P3ee+8Na6yxRqzsWmWVVcKNN97YauMiSZIkqWX88MMPYZdddgkLL7xwWHbZZceKGbJz/XXWWScsuOCCYYkllgj77bdf+Omnnwr3L7PMMrGT/OCDD46PIQa56667wmuvvRbWXnvtGG9sscUWYejQoYXnPPvss2HjjTeO77vYYouFnXfeOXz55ZeF+zfbbLNw4oknhlNPPTXGXjzm0ksvDR9//HHsUOc111tvvfDRRx8VnvPdd9+FvfbaKz5+0UUXDVtuuWXsTJEkSVLbMJmRQyQPnn/++fD222+H9ddfv9XeZ9CgQeHTTz8Nu+22W8n7SRqQ7MguV5WcffbZcf8MEg50kdC9QSCQ9tR45JFHYnfI1VdfHd599924NNaHH34YLr/88nj/scceGyaffPLw9NNPh7feeisccMABsROE4ylGgHDkkUfG4IXHnnzyyTHR8tBDD7X4mEiSpMpWW1tbWHLTn4bHQGptxBM///xzjA/o/iYh8MknnxTu/+CDD8IhhxwStttuu/Dmm2+G++67LxZ0kWhIKLBiyaoNNtggJjAomDrppJPibRQ5Pf7443HpXDrNwdK5dLkvt9xy4ZVXXglPPvlk/L5nO955zQcffDDu1ffyyy/HbvXzzjsvFnlRlEU8RqEXt6X/thA3TTbZZOGpp54KL7zwQizo4nkUakmSpMpRrXECKvnYG8NlpnLi0UcfjZPstMxU+/bt48SYiXprSZVJs88+e5OfS2KB/TyYzINAYZpppomJCyqufvzxx/gZJp100sJSWHRecFsKMHr06BH35+A2PifPTfdn3XDDDbGzY4UVVoi/UwV10UUXhW7duo3X55ckSdWHi6SjRo0q92FIE2Qck7XQQgvF5adY+paEQPfu3ePtFDFlO7L79OkTXn311dgdTvKAx7EELomGLDoy+vbtG/++0korhdtuuy12Y0w55ZSF9/v888/j34lLSFAQa9D1TuJitdVWi8VTxFppj48ZZ5wxdoinQq5zzz03Lps1/fTTx9uWXHLJMGDAgPh3khd0bVDMlWIc4jU6RO6+++6w9957t8LoSpKk1kDnZbXGDO9V+T7EJjNyuNYs2SgSDaeddlrYZptt4sX8ujbVGx/pNUt1XjSEyieOd+DAgeGXX34pdJT8/fff8e8bbrhhDCBIQKTAg2WiZptttng/S1Qx4adFnFZyAgXGIAUGWYwFrdxZtJpLkiQVm3POOUsWRyiUXDaUi7NSa+2ZQdcFZppppsJtnTp1ioVOCbEPS0/RucGSVCQbuG2qqaYa67Wyz5lkkkninz179izcRuKCDpCEJANJEzpB/v3337G6tlIcVOo1UyIjvWaKbz777LO4lG5KqCTc9u233zZ6vCRJUvmxvH21qampiYkMuk47dOgQqjUuMZmRQ3zhuOh/zDHHxGQArdFc9G9p7JGRggw6H5qC/S6mnnrqcPPNN8cggCoqKqgSOjZYc5YWcVq0X3rppXDJJZfEaigSHVROUeVEmzifj+WnaOemwmq66aYbJ0Ag+JAkSWoIiYxKm7yXi+Ok1pYSAcQKWdmlBFgaimQGXRHEJHRR0MnBMrVZpZKUxa+b0NXBErj8UFBFAoXExhFHHNHga9aVDOV2Eh50k0uSpMpWzfPgDh06VNzna8rxWraWY2mS31ptT1Qusvk3m+mVShawad6aa64Zfvvtt7Fup+Lpiy++CFtttVVszSaIGDZsWKykSujSYLNvlrBi/VuSFWz8d/311xdeg0CFgIVWcwIOOkSoyCrWq1evcTZCZ11cjk+SJElSPqUuh2znApV3dEsk7InHJt0URhEf4P333x+v9+U1iSH69esXExktseQChWB//fXXOHEJHesUX0mSJKn1mczIKSb4p5xySph22mnjMkythWol1omj04I/mYiTvKDjYp999omVTFNMMcVYz2E9WzbvZoM+Ei4kNg4//PDYofH999/Hxxx//PFh9913LwQuv/76a2wXIggggFl11VXDlVdeGf/Oe7K+NY9J3SJZJE3o4GDDb1rE2XCcjQRHjBjRauMiSZIkafyTGRRPXX311XHPvN9//z1usJ2tviOGYK8L9tz7888/w+mnnx4fl36ag9ek0Io4hSIrOj/S0gXZREpTUIQ111xzhWOPPTbGPCyHxYbmxEt2a0iSJLUNl5nK4cZ5dDqwuTXrsd56662FTbbBHhWsfVaMJZvY6K6pmJDff//94Yorrgj9+/ePQQbt0wQdrH2bNt3OIvhIbdusRcs6cyyJRZKB4OSggw6Kv3P/pptuGpMjJERYKuuQQw4JXbp0id0gvD5LUZEQYb1bNhRnI/FibPh90kknhfPPPz8mMViGikTLuuuu2+TPK0mSJKn1NwDHrrvuGpeSPeqoo+IG28Q1O+ywQ1hggQVikRIogCKZwf1s5r3tttuGM844I/7Jpt3EKk21+eabxwTD+uuvH2MP/mTJ26233jrGJyQ3moplpngNYpx11lknJjMoxDr77LPj55EkSVLrazfGnlhVETo9Bg8eHAb+OiQMGf5VuQ9HkiS1kemn6h76r7pNLJKotDViyz1v6t27d7zgK6l1/o1N9tHTYfTn7zi8kiSV2SQ9eoXZdzwpVKOamppYaE6RRaXFQ02JS1xmSpIkSZIkSZIk5ZrJDEmSJEmSJEmSlGsmMyRJkiRJkiRJUq6ZzJAkSZIkSZIkSblmMkOSJEmSJEmSJOWayQxJkiRJkiRJkpRrJjMkSZIkSZIkSVKumcyQJEmSJEmSJEm5ZjJDkiRJkiRJkiTlmskMSZIkSZIkSZKUayYzJEmSJEmSJElSrnUs9wFIrWHqSbuGkTXdHVxJkiYQ3afoVu5DkKSSJu46TejYo5ejI0lSmXXq1rPch6DxZDJDVWmV+ZYJXbp0KfdhSJKkNjS6pia0c8Ql5cx0K2xqbCJJUk6Mqa0N7dq7WFGl8sypKtXU1JT7EKpuPAcNGuS4Oqa553fVMa0UfldbaUw/+KAVXlmSxo+xSWXw/82VxfNVeTxnlaWaz5eJjMpmMkNSo4waNcqRamGOaetwXB3TSuF3teX9+++/rfCqkqQJhf9vriyer8rjOassni/lkckMSZIkSZIkSZKUayYzJEmSJEmSJElSrpnMkCRJkiRJkiRJuWYyQ5IkSZIkSZIk5ZrJDEmSJEmSJEmSlGsmMyRJkiRJkiRJUq6ZzJDUKJ07d3akWphj2jocV8e0UvhdlSQpX/x/c2XxfFUez1ll8XwpjzqW+wCk1tChQwcHtoXHs0+fPo6pY5p7flcd00rhd7XpasfUhvbtrMORVHmMTSqD/2+uLJ6vyuM5qyx5OV9jamtDu/bGAPo/JjNUlZ4Y+Hz45rdh5T4MSZLUArpP0S1s3Hctx1JSRRo24LZQO/TTch+GJEkVpVO3nmHGfv3LfRjKGZMZqko//zkifP/LD+U+DEmSJEkTuH9GDA+jh35R7sOQJEmqePbpSJIkSZIkSZKkXDOZIUmSJEmSJEmScs1khiRJkiRJkiRJyjWTGZIkSZIkSZIkKddMZkiSJEmSJEmSpFwzmSFJkiRJkiRJknLNZIYkSZIkSZIkSco1kxmSJEmSJEmSJCnXTGZIkiRJkiRJkqRcM5khSZIkSZIkSZJyzWTGePrmm2/C3HPPHZ577rnQ0l599dX42rxHNbvgggvCUkstVe7DkCRJknLh0EMPDVtvvfV4vcaRRx4ZttpqqxY7JtV9rjbZZBOHR5IkqQ10bO03YBL++uuvh+uuuy4svvji41zEfu2118INN9zQqsfw77//xgnmlFNOGa6++urQrl27se4/5ZRTwgMPPBAefPDBMPXUU4e28OGHH4Yrrrgifv4RI0aEySabLPTp0ycGHMsvv3ybHIMkSZKktkOC4b777iv8/s8//4SOHTuG9u3/r8bsvffea5H3OvHEExu8CH/vvfeGiSaaKP4+ZsyYMMUUU4T//ve/Ya+99grzzjtvyJOhQ4eG559/Pmy88cZ1PoZCsDSexHydOnUKM800U9hss81MOEiSJFWBNunMmGqqqcJRRx0V/vrrr1AOTNBPP/308MYbb4Rbb711rPvefPPNcP3114cTTjihyYkMkiTNMWDAgDgJn2aaacJtt90WBg4cGO6///6wyCKLhD333DMmXCRJkiRVFxIMJCvST0pwFN/WVuabb77C+77//vuxwGuGGWYI2223Xe66w5944olwxx13NPi4NJ7EWCQ/SGQQiz777LNtcpySJEmq8GQGXRGTTDJJOO+88+p9HB0Khx12WOjbt29YaKGFwoYbbhiefPLJeN9dd90VOzuoGErWWWedsOKKK471GiuttFJMThSbc845w/777x+TGmliTnLl8MMPDxtssEF8Xk1NTbj88svDGmusERZccMGw2mqrhfPPPz9WTGWXfaKCiWWRSlU7cXxUOfEaP//88zj3jxw5Mn5Gjp0/e/bsGW8nsbHbbrvFyfeoUaPGes5XX30Vttxyy7DAAguEFVZYIdx9992F+2pra8PFF18cx2H++ecPq6++erjsssvC6NGjC4/56KOPwg477BA/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RFhggQXimN5///2F59x+++1hscUWi49fd91141iQDGJsSi2j1dTHS5IkSWo5dGYsssgicR7OUrz1zcE32WSTcOihhxa6I4gzWEqX+fw111wTExXEPcQ6LBFMIVt2iWBinj333DMMHz58rGV4iQW23HLL+DrEL8SDX331VZM+R48ePWIxHa89YsSIwu1PPfVU2HDDDWPH+fLLLx+L1XhM+ozXXXfdWB3hHCufLeGz0JlPzClJkqQqTGb88ssvcU1UKvpT+3IWy0v1798/zDTTTGPdft9994UbbrghJiKagokzE04SJ2+99VZMNrA01FVXXRXv/+677+JSSVx4f+2118Lpp58err322npf84EHHgjTTz99nBCXwkV+khHJr7/+Gp544onYzfDCCy/ExM1xxx1XZwXRkUceGQ4++OB4vCQeOKaHHnponMeShDnppJNisoZggbZskhdp3VnuZ7mrbbfdttA9MdFEE8XXIpn09NNPxyorkjMkkZoqJYR4TRxxxBHhiy++CA8++GAMOmhTP+SQQ8Inn3wS7+d8c4zXX399HH/Gm+OjDbyUpj5ekiRJUsv5559/wvPPPx8Lp9Zff/0mPZfOC+KZAQMGxGV4k0cffTTGCxSGZW211VZxueFpppkmdlRsvPHGMWlBLEMSg9chDptkkknCFltsUSh+awidGF9//XWMxVgua8oppyzEXcSdJEpeeumleD/LH1MYxnN4T+KPhMfMNddc4ZVXXincxt+XWWaZWNgmSZKkKtwzg4kkk8PZZ5+9Sc+jo4I1VZuKNmWqd3r37h1/50I/E2Iqf3bdddfwyCOPhM6dO4dddtklXjynu2KbbbYJBx54YJ2vyQV7jp/1VxuDiTYX9SeffPL4+5prrhmXqSqFhA2VSiussEL8nW4VEjHdunUb63G0fPOabH5NJwTogmDpJ9azTcdGdRHdG1QSUXUE1r3lM4LPSyVSSjg0BuePzfpItPTq1SsmUkDrOQmOSSedNP6+wQYbxCCFYCTtIcL9BCkcA0gIkeihq6P4Mzbn8ZIkqbox12nM/Q09To0fU01YSDZQFJXm4lyopxCNToWmJjMobkqxQUJMwv57jUH3Ol0Vu+22W4xveC1iIPZZpJuDGLEudJSk2IVjoXP8+OOPL9xPwRTdHsQsmG666cJ+++0XNt9887isLkkKisx4Pu/98ssvx+TH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K5WoTvrPf/4Tzj333DjRp9onoSLmlFNOCX379g2LLLJI2H///cNff/0V76NyZsEFF4zLDS222GLhmmuuiZ0EtPUOGTIkPmazzTYLJ554Yjj11FPj83ncpZdeGqttNtpoozD//PPHKqmPPvooPp5JKs9/8MEHY4JigQUWCKuttlq499576/w8JGFGjhwZdttttzDddNPF2+gu2WmnncLZZ589VhUP7cbrr79+mG+++cJyyy0XJ8i1tbXxPl7j6KOPjtU/HNfKK68crr322rHGjWN7+eWX4zGz1NKGG24YJ9gES4wRn49kUXLAAQfEBBHVYbwuY0AQ9fPPP8f7i8erOXj+LbfcEv/OcfD5nnjiiThufA4m/wMHDiw8nvfaaqut4rnjMU8++WT8M1VnkdhaaqmlxnoPXp/3ae57jhgxIhx22GFxjBZaaKE4bryvJEmS1FKOPfbYMNlkk8V4o0+fPqF9+/ahS5cuYa211goXXnhh6N69e/jll18Kjx81alQs8Fp44YXD4osvHk444YTYIZA89dRTcd7K/csvv3y84D58+PDC/fx93333jXN8fohHiA0SLshvueWWMUYgFthjjz3CV199VefxE08xnyYG4vHEJsQo2HjjjWPB1tVXXx3jEGI24piLL744LlfFHHz11VcPl112WRg9evR4jWN9x0F8R0yY9ccff8T46tZbb42/E7uts846Md4g5qT7n46ZutCF/sADD4TzzjsvrLnmmvGcEaNyDjmXK620Uvj+++8L8SkxXvrMnBeSICmmK8b5PPTQQ8Maa6xRiMEYR+I5jpnnH3HEEWN9LyRJkpSjZMY888wTJ+a0XjMZTGabbbY4ySPBkdx1111xEvvCCy/EiSQTP27LdmOQTBgwYEBMHhSbaKKJYmKCCTdJAJIlTFJZG5aL5lTdtGvXLt6Gjh3/t2oWk3CCiddeey1svvnmMcioa2mjOeecMwYqJGN++OGHse5jMjzXXHPFvxNYEECQJKFF+8orr4wX5PkTTIpJdnDbO++8E4466qiYhEnrraZju/766+MEnzHk/bbddtsYGPFZDj/88BhgsOxV+vwp2fL000/Hif1nn30WL+y3Bo6RijTeiyQTCRjO5/HHHx/vJ7DZcccd4zJcPOamm24Kt912W/wc6fO19Hvi4IMPjgEMS5u98sorYYcddgh77713rJaTJEmS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Oy7Uh4cffjh06dIlTJ8+vV4+X5IkSfWYzDjjjDNiZzD5ohPeuXPnEo9lzT333BPPo2/fvqEx2HnnncPhhx9e6rXlWk6aNKnE42+88UZsnw8//HA2HqUkSZJUvn/++ScMHjw4bLfddmHNNdcMq6yySkxKnH322bP0actzxBFHhOHDhzfY2OWFF14IH330UfHPzzzzTOjTp0/Iqu+//z62wUorrVQcg6677rrhoIMOiueWj3uDc2/RokW9Ha8kSZLqKZkxcODA2BlMvpJB8MLHqmLmzJkhl8uF+nLnnXeGbbfdNnZ8f/vtt9DQbbrppjFBMW3atOLHaP+XXnopzDnnnOHVV18t8XoeX3jhhUPXrl1nCR4lSZKk+nLhhReGm2++OZx88snhtddeC++991646qqrwvvvvx8OPvjgBnlhqhK7JP112uTjjz8ODbGiJolBH3300dCzZ8/Qr1+/cOqpp9ZrfClJkqQMLTPF8kfMlGE5pLKWRqLUmI7mYYcdFlZeeeVSO+KffvppWGONNcKQIUPiz8yuomParVu3sNpqq4Udd9wxPPfcc/E5ghfe/8svvyzxHldffXXYYIMNYsKkNAzqjxkzJpZOL7XUUmHo0KHFzzGoz3t+/fXXJX7n8ssvD927dw9FRUXh77//jkEUHedVV101bLXVVuH2228v0Xl++eWXw/bbbx+TARtuuGEYNGhQ/F1MmTIltsP6668f24FEw6233lri8zjHLbfcMj6/0047hc8++6zE85zbDTfcELbYYot4DJSN8xlllVJvsskmYerUqeHNN98sfmzUqFHhjz/+CDvssEN48cUXS7yen5nh1qRJk/id899tt93CWmutValzSK4NSRFmRjFjbuuttw6vvPJKqccnSZIkVQb9zB49eoR11lknzrxv1qxZrDRmCaX999+/uD9MPMCA/kknnRRWX3312G+lDz9jxoz4PM+tt956xQkA+q4sT3T88cfH16+99tphwIABJfr4VITQ76Zvy/vRH6ZfnCC+ofqBeIYv4p7vvvuuxPGPHDkyxgn0oXkv+svlKS92yY/DOHbOh4lofP/kk0/in5OltPh+ySWXVCpeSRBv0I7EGySKfv/99+LniMGoiuA6EKvtt99+8TPLQhzAOQ8bNiz+/OOPP4ajjz46thMVNnvuuWd49913Q1UstNBCYddddw233HJLeOSR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ycyZM+P3KVOm2K62aap5r9qmWeG9apumwdSpU0v0nyTVLmOTbPH/5mzxemWP1yxbvF7ZMzPDY3dViUua5HK53Gw4Jmm2GD9+fBg7dqytLUmSVEkdOnQIbdq0sb2kWmZsIkmSVLtxickMNSgzZswIkyZNCi1btgxNm7qKmiRJUlmY+TRt2rTQunXr0Ly5BduSsYkkSVK64xKTGZIkSZIkSZIkKdWcui5JkiRJkiRJklLNZIYkSZIkSZIkSUo1kxnK3O72/fv3D+uuu27o2rVr2GGHHcIbb7xR5utHjRoV9t5777DKKquENddcM/Tt2zdMmDBhth5zQ2xXPP3002GdddYJu+yyy2w7zobcpjy3xx57hDXWWCO261FHHRW+++672XrMDbFdH3nkkbD99tuHVVddNXTr1i0ccsghYfTo0bP1mBvi3//EtddeGzp27BjeeuutOj/Ohtyu48aNi+240korhS5duhR/de/efbYfd0O6V//6669w5plnhrXXXjv+G7D77ruHDz/8cLYes6SGzdgkW4x5sseYKluM1bLFODB7jDH/JydlyCmnnJLr2bNnbvTo0bnJkyfnrrvuulyXLl1yY8aMmeW1EyZMyK211lq5fv365SZOnJj78ccfczvvvHNun332qZdjbyjtiuOPPz631VZb5XbffffYpqpZm3766ae5zp0752666abctGnTcr/++mtuv/32y/Xu3dumrUG7Pvvss/G5YcOG5f7555/c+PHjc4cddlhuvfXWy82YMcO2rebf/8SoUaNy3bp1yy2//PK5N9980/aswb362WefxXbk/ynV3r160EEH5fr06RP/TaUfMHDgwNgH8O+/pNpibJItxjzZY0yVLcZq2WIcmD3GmP9lMkOZQXKiU6dOuaeeeqrE47169cpdcMEFs7x+yJAhuTXWWCM3ffr04sdGjBgRB4wYCFH12hWXXXZZHHQ/+eSTTWbUwr36yiuv5AYMGFDiseHDh8d7ddy4cd6q1WxX/r6TyMj33HPPxXb9+eefbddq/v0Hf/9JaPLvrMmMmv8bQDKIdpw6dar3ZS216YcffphbffXVc3/99ZdtKqlOGJtkizFP9hhTZYuxWrYYB2aPMea/XGZKmcGSUTNmzIhLb+RbeeWVS102gsdWWGGFMMcccxQ/1rlz59CsWTOXmahBu+K4444LLVq0qOklbbCq2qbrr79+OOOMM0o89u2334Y555wzzDvvvHV+vA21XXl80003jX8uKioKY8aMCUOGDInt3a5du9l23A3t7z+uuOKKsMACC4S99tprNhxlw2/XiRMnxv+bWBKJ+5Ml0Q477LB4z6p6bfrmm2+GFVdcMdx6661ho402iktNHXroofHfVkmqj3/rjU3qlzFP9hhTZYuxWrYYB2aPMea/TGYoM8aPHx+/zz///CUeZ0AteS7f77//Hp/L17x58zg4zHOqXruq9u/VQp999lm48sorw5FHHhnmmmsum7yG7Tp8+PC4F8EWW2wRXzto0CDbtAZt+t5774X77rsvnH/++aFJkya2ZS20K4kMBt7ZM4f9iB566CEqZ+OeT3/88YdtXI02/eGHH8LIkSPDtGnTwuOPPx4efvjh8Pfff4eDDjooTJ8+3TaVVGPGJtlizJM9xlTZYqyWLcaB2WOM+S+TGcqcwsEzBnyqOqDmAFzdtKtq3qYvvfRSnO2+5557xs2qVfN7deONNw4ff/xxHCRmMHO33XaL31X1Np0yZUo45ZRT4tdiiy1mE9ZSu1JB9MADD4Rdd901zDPPPGGRRRYJF110UeywDhs2zHauRpvOnDkztG7dOlYSJm1K5cs333wT3n33XdtUUq0xNskWY57sMabKFmO1bDEOzJ4mxpgmM5QdCy20UPxeWFXBYM/CCy9c6usnTJhQ4rF//vknznJN3ktVb1fV/r2auOWWW0KfPn1Cv379Qt++fW3qWmpXNG3aNHTo0CGce+654fPPP49JI1W9TS+44ILQsWPHsOOOO9p8dfzvKgPxVCGMGzfOtq5Gm1KxMd9885Xo7C+xxBLx+y+//GKbSqoxY5NsMebJHmOqbDFWyxbjwOwxxvyXlRnKDJaJYf+LESNGlJiR+cEHH4TVVlttltevssoqcU25/OUk+F3Wzl911VVn23E3tHZV3bTpTTfdFG6++eZwxx13hG222cZmroV2ZR+Sk046aZbZ2smSc6p6mw4dOjS88cYbcf+B5AtHHHFEOPzww23Sat6rTz75ZLj++utnGaQnIU8STtXrA1CFkT+pYezYsfH74osvbpNKqjFjk2wx5skeY6psMVbLFuPA7DHG/JfJDGUGe13stNNO4fLLL48zqydPnhw3oWWWJsvGMHu1V69exctHMCDMfgPnnHNOmDRpUvjuu+/irGyW81h66aXr+3Qy266q/Tb95JNP4h4ZN9xwQ9ykXrXTruuuu25cK/+RRx6JSU1eR2UBs7jZm0BVb1MqWp544onYpskXBg4cGP99VfXuVf6vYi+X+++/P1YQ8vxpp50WllpqqbDJJpvYrNVo0+7du8f2o9KNhMavv/4a93nh31gT9ZJqg7FJthjzZI8xVbYYq2WLcWD2GGP+y6mpyhQGdy6++OKw7777xoGMTp06xaV5WAv7+++/D2PGjIlruoM1sgcPHhwH2TbccMPQokWL0LNnz3DqqafW92lkul3feeedcMABB8Q/z5gxI86M7dKlS/x5wIABYbvttqvXc8lim951111xAJMBuUK2afXbtXfv3jGJceutt4b+/fuHli1bhpVXXjlWwLCEj6repu3bty+12RZccMH4perdqz169IivpUKLpBAd1TXXXDPcdttt8b5V1duUKo6kPUkI0QegkujCCy+My85JUm0wNskWY57sMabKFmO1bDEOzB5jzP9qkmMkUpIkSZIkSZIkKaWcmiZJkiRJkiRJklLNZIYkSZIkSZIkSUo1kxmSJEmSJEmSJCnVTGZIkiRJkiRJkqRUM5khSZIkSZIkSZJSzWSGJEmSJEmSJElKNZMZkiRJkiRJkiQp1UxmSJIkSZIkSZKkVDOZIUmqsY033jhcddVVjaIl+/XrFw488MCQy+Vm6+eeccYZYa+99gppcMABB4STTjqpVs7l+++/Dx07dgwvv/xytd/vhx9+CF26dAmvvfZalX/32WefDd27dw+//PJLtT9fkiRJ6WBcUveMS8pmXCLVveaz4TMkSXVo7733Dm+//Xa4/PLLQ+/evWd5/tJLLw033HBDOOqoo8LRRx9dqff8+eefwyuvvBJ23nnnUFcmT54cbrnllvDUU0+FcePGhaKiotC2bduw2WabxWNt2bJlSJuHH344PP/88+Hxxx8PTZo0iY/9888/4Y477giPPfZYGDNmTHysXbt2MZA69NBDQ+vWrWvlswcOHBhmh/vvvz/cd999YezYseHvv/8O888/f1h77bVDnz59wqKLLhpfw3VL07kstthi4aOPPipxb91zzz0x6VQR7jf+/hxzzDHh7rvvLr6ukiRJqhrjktnHuMS4RGqsrMyQpAaAJACDt4VmzJgRHnroobDwwgtX6f2GDRsWB7Tr0gknnBATGRdeeGF466234oDygAEDYlLg5JNPrpPPJPFQXVOnTg2XXHJJOPjgg8MCCywQH5s+fXqsUmAQ/Nhjj43nwReD9Xzffvvtw4QJE0JW3HrrreHcc8+NSYCXXnopfPDBB2Hw4MGxamHPPfcM06ZNC2lT2jWl7auScDniiCPC6NGjwxNPPFHLRydJktS4GJdUjnFJ+YxLjEukspjMkKQGYJNNNgnvvfdecWVAYvjw4WHeeecNSy+9dInHGaim6mL11VcPa621Vhyg/+abb+JzJBfOO++8MHLkyBJL9zD7Z4sttghdu3YNPXv2jNUI+WbOnBnOP//80K1bt7DGGmuE448/Ps7sLwvvu80228TPaN68eZhjjjnisbBc1dZbb138ut9++y1WBfCefB122GHhu+++K36e82agnd9df/3148D0t99+W/w8FRJUrey2227xNaAK5Nprr43PrbzyyqFXr17hP//5T0z+lOXRRx8Nf/75Z3yf/E42A/433nhj2HDDDUOLFi3iF8dJEoDvP/74Y3H7UCFDG6666qph8803D4MGDYoJEbBsFeeeHNN6660XTjvttPDXX3/F50855ZSwyy67xD9TNcHSTFzHgw46KL4f58455CPBxedwzTbddNN4bUnKlOXVV1+N70W1wpxzzhmaNm0alllmmXDRRRfF65kcK7PujjvuuOLryLG88cYbYdttt43Xc8cdd4zXiHbnfqDd+exE/rkUmjJlSlzKi/OhHThu2jk/UcHncT/SRiSO8peq4r6ksof7hmO59957wworrBDbKh+/T7tMmjQpLLjggvGeq2nFiSRJUmNnXGJcYlxiXCLVJZMZktQAtGnTJqyzzjpx4DYfP1MdkI9B3iOPPDIOvr/55pvhueeeiwPtJ554YnyeqggGpRnoZekeBozffffduDYq+yS8//77MdnBAHf+TPYHHnggrLLKKnFA/Prrr497EfBYWRhgfvDBB+N75+8/wQA0QVCC42LZIN6PAWkG2Vm+id8habHvvvvGDvMLL7wQqzp4fo899oiD4vkD11RO8Fkg0cBnX3PNNfF8Lr744nDnnXeGm2++uczjffHFF2NygvdP8HkkJ5ZaaqlZXj/ffPPFNurcuXP8+brrrouD8gy+U4VClQdLOvEaUKVC8oEB9Q8//DBeu88++ywmQAqR/AHJEJIKJHT233//cNlll4UvvvgiPvf000/H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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\n", "💡 Notice how the top items share attributes with what the customer already loves,\n", " while the bottom items have a completely different attribute profile.\n" ] } ], "source": [ "# ── Visualize: Top 10 vs Bottom 10 ──────────────────────────────\n", "fig, axes = plt.subplots(1, 2, figsize=(16, 6))\n", "\n", "# Top 10\n", "top10 = recommendations.head(10)\n", "axes[0].barh(top10['item_name'], top10['match_score'], color='#7BA88B', edgecolor='white')\n", "axes[0].set_title('Top 10 Recommendations', fontweight='bold')\n", "axes[0].set_xlabel('Match Score (Cosine Similarity)')\n", "axes[0].invert_yaxis()\n", "\n", "# Bottom 10\n", "bottom10 = recommendations.tail(10)\n", "axes[1].barh(bottom10['item_name'], bottom10['match_score'], color='#D4845A', edgecolor='white')\n", "axes[1].set_title('Bottom 10 (Least Likely to Enjoy)', fontweight='bold')\n", "axes[1].set_xlabel('Match Score (Cosine Similarity)')\n", "axes[1].invert_yaxis()\n", "\n", "plt.tight_layout()\n", "plt.show()\n", "\n", "print(\"\\n💡 Notice how the top items share attributes with what the customer already loves,\")\n", "print(\" while the bottom items have a completely different attribute profile.\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "---\n", "\n", "## Phase 4: Build the Full Engine (All Customers)\n", "\n", "We just did it for one customer. Now let's wrap this into a **reusable function** and generate recommendations for everyone." ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Functions defined! Let's test them.\n" ] } ], "source": [ "def build_taste_profile(customer_id, ratings_data, menu_data, attr_cols):\n", " \"\"\"\n", " Build a taste profile for a single customer.\n", " Returns: pandas Series with attribute weights.\n", " \"\"\"\n", " # Get this customer's ratings\n", " cust_ratings = ratings_data[ratings_data['customer_id'] == customer_id]\n", " cust_items = cust_ratings.merge(menu_data, on='item_id')\n", " \n", " if len(cust_items) == 0:\n", " return pd.Series(0, index=attr_cols) # Cold start: no profile\n", " \n", " # Dot product: attributes weighted by ratings\n", " attr_matrix = cust_items[attr_cols].reset_index(drop=True)\n", " ratings_vec = cust_items['rating'].reset_index(drop=True)\n", " profile = attr_matrix.T.dot(ratings_vec)\n", " \n", " return profile\n", "\n", "\n", "def get_recommendations(customer_id, ratings_data, menu_data, attr_cols, top_n=5):\n", " \"\"\"\n", " Generate top-N recommendations for a customer.\n", " Returns: DataFrame with recommended items and match scores.\n", " \"\"\"\n", " # Build taste profile\n", " profile = build_taste_profile(customer_id, ratings_data, menu_data, attr_cols)\n", " \n", " # Score all items via cosine similarity\n", " menu_attr = menu_data[attr_cols].values\n", " profile_vec = profile.values.reshape(1, -1)\n", " scores = cosine_similarity(profile_vec, menu_attr)[0]\n", " \n", " # Prepare scored menu\n", " scored = menu_data.copy()\n", " scored['match_score'] = scores\n", " \n", " # Exclude already-rated items\n", " rated_ids = ratings_data[ratings_data['customer_id'] == customer_id]['item_id'].tolist()\n", " unrated = scored[~scored['item_id'].isin(rated_ids)]\n", " \n", " return unrated.nlargest(top_n, 'match_score')[['item_id', 'item_name', 'category',\n", " 'price', 'match_score']]\n", "\n", "print(\"Functions defined! Let's test them.\")" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "============================================================\n", "Customer #7 (Weekday Regular)\n", "============================================================\n", " Mushroom Swiss Burger Burger $16.39 Score: 0.657\n", " Blue Cheese Burger Burger $17.2 Score: 0.657\n", " Fettuccine Alfredo Pasta $17.71 Score: 0.657\n", " Truffle Mac & Cheese Pasta $13.28 Score: 0.628\n", " Mozzarella Sticks Appetizer $9.11 Score: 0.612\n", "\n", "============================================================\n", "Customer #15 (Adventurous Eater)\n", "============================================================\n", " Hawaiian Teriyaki Burger Burger $12.35 Score: 0.709\n", " Mushroom Swiss Burger Burger $16.39 Score: 0.665\n", " Loaded Nachos Appetizer $11.28 Score: 0.665\n", " Meat Lovers Pizza Pizza $15.1 Score: 0.634\n", " Philly Cheesesteak Sandwich $15.83 Score: 0.634\n", "\n", "============================================================\n", "Customer #50 (Comfort Seeker)\n", "============================================================\n", " Pesto Penne Pasta $16.65 Score: 0.643\n", " Cuban Sandwich Sandwich $11.49 Score: 0.643\n", " Reuben Sandwich Sandwich $13.2 Score: 0.643\n", " Mediterranean Bowl Bowl $13.29 Score: 0.635\n", " BBQ Bacon Burger Burger $17.7 Score: 0.631\n", "\n", "============================================================\n", "Customer #120 (Comfort Seeker)\n", "============================================================\n", " Blue Cheese Burger Burger $17.2 Score: 0.698\n", " Caesar Salad Salad $11.52 Score: 0.635\n", " Spicy Jalapeño Burger Burger $15.59 Score: 0.622\n", " Mozzarella Sticks Appetizer $9.11 Score: 0.615\n", " Greek Salad Salad $12.62 Score: 0.595\n" ] } ], "source": [ "# ── Test with a few different customers ─────────────────────────\n", "for cid in [7, 15, 50, 120]:\n", " recs = get_recommendations(cid, ratings_clean, menu_df, attribute_cols, top_n=5)\n", " segment = customers_df[customers_df['customer_id'] == cid]['customer_segment'].values[0]\n", " \n", " print(f\"\\n{'='*60}\")\n", " print(f\"Customer #{cid} ({segment})\")\n", " print(f\"{'='*60}\")\n", " for _, row in recs.iterrows():\n", " print(f\" {row['item_name']:<35} {row['category']:<12} \"\n", " f\"${row['price']:<7} Score: {row['match_score']:.3f}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 💡 Do the recommendations make sense?\n", "\n", "Look at the customer segments and their recommendations. Are \"Health Conscious\" customers getting salads and bowls? Are \"Comfort Seekers\" getting burgers and pasta? If yes — our model is working.\n", "\n", "If a recommendation seems off, that's actually a *great* discussion point: content-based filtering is only as good as the attributes you define." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "---\n", "\n", "## Phase 5: Evaluate the Model\n", "\n", "How do we know if these recommendations are actually *good*? We can't just eyeball it.\n", "\n", "### Evaluation Strategy: Hold-Out Test\n", "\n", "1. For each customer, **hide** their 3 highest-rated items\n", "2. Build the taste profile on the remaining ratings\n", "3. Generate top-5 recommendations\n", "4. Check: **Did the hidden favorites show up in the top-5?**\n", "\n", "This gives us **Precision@5** — the fraction of our top-5 recommendations that were actually items the customer loves." ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Evaluated 197 customers\n", "\n", "📊 Model Performance:\n", "=============================================\n", " Average Precision@5: 0.084\n", " Hit Rate (at least 1 correct): 34.5%\n", " Average Hits per Customer: 0.42 / 3\n" ] } ], "source": [ "# ── Evaluation: Precision@K and Hit Rate ────────────────────────\n", "\n", "def evaluate_model(ratings_data, menu_data, attr_cols, top_n=5, min_ratings=10):\n", " \"\"\"\n", " Evaluate the content-based model using a hold-out strategy.\n", " For each customer, hide their top-3 rated items and check if\n", " the model recommends them.\n", " \"\"\"\n", " results = []\n", " \n", " # Only evaluate customers with enough ratings\n", " customer_counts = ratings_data.groupby('customer_id').size()\n", " eligible = customer_counts[customer_counts >= min_ratings].index\n", " \n", " for cid in eligible:\n", " cust_data = ratings_data[ratings_data['customer_id'] == cid].copy()\n", " \n", " # Hold out the top 3 rated items\n", " top_rated = cust_data.nlargest(3, 'rating')\n", " hidden_ids = set(top_rated['item_id'].tolist())\n", " \n", " # Train on remaining ratings\n", " train_data = cust_data[~cust_data['item_id'].isin(hidden_ids)]\n", " \n", " if len(train_data) < 3:\n", " continue\n", " \n", " # Build profile on training data only\n", " profile = build_taste_profile(cid, train_data, menu_data, attr_cols)\n", " \n", " # Score all items\n", " menu_attr = menu_data[attr_cols].values\n", " scores = cosine_similarity(profile.values.reshape(1, -1), menu_attr)[0]\n", " \n", " scored = menu_data.copy()\n", " scored['match_score'] = scores\n", " \n", " # Exclude training items (but NOT hidden items — those are what we want to find!)\n", " train_ids = set(train_data['item_id'].tolist())\n", " candidates = scored[~scored['item_id'].isin(train_ids)]\n", " top_recs = set(candidates.nlargest(top_n, 'match_score')['item_id'].tolist())\n", " \n", " # How many hidden favorites did we recover?\n", " hits = len(hidden_ids & top_recs)\n", " precision = hits / top_n\n", " hit_rate = 1 if hits > 0 else 0\n", " \n", " results.append({\n", " 'customer_id': cid,\n", " 'hidden_items': len(hidden_ids),\n", " 'hits': hits,\n", " 'precision_at_k': precision,\n", " 'hit_rate': hit_rate\n", " })\n", " \n", " return pd.DataFrame(results)\n", "\n", "# Run the evaluation\n", "eval_results = evaluate_model(ratings_clean, menu_df, attribute_cols, top_n=5)\n", "\n", "print(f\"Evaluated {len(eval_results)} customers\")\n", "print(f\"\\n📊 Model Performance:\")\n", "print(f\"{'='*45}\")\n", "print(f\" Average Precision@5: {eval_results['precision_at_k'].mean():.3f}\")\n", "print(f\" Hit Rate (at least 1 correct): {eval_results['hit_rate'].mean():.1%}\")\n", "print(f\" Average Hits per Customer: {eval_results['hits'].mean():.2f} / 3\")" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABWsAAAHmCAYAAAAFsdz8AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjgsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvwVt1zgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAe3xJREFUeJzt3QeYk1X69/F7hqksUhQbYgEUEKSKiyJ2RFFBRbELdtDFAhawrIprwbWBZVVAV8VVsa29dyzYABtNELsoS7EA0/Nev/P3zJsJ05JJeZL5fq4rkEk9OXmS3M/93OecrFAoFDIAAAAAAAAAQEplp/bpAQAAAAAAAABCshYAAAAAAAAAAoBkLQAAAAAAAAAEAMlaAAAAAAAAAAgAkrUAAAAAAAAAEAAkawEAAAAAAAAgAEjWAgAAAAAAAEAAkKwFAAAAAAAAgAAgWQsAAAAAAAAAAUCyFgAAAADSzPHHH2+dOnWyvffeu9rrx48f767XKQjUTt+eI488stbXVNvrCgrfTvVzba9Xryny9YVfVhP//tWnH2655ZaUvtf+uWs7vfLKKxZ0vq3qz3B33XWXPf7440lvj54zsh932GEH69+/v40cOdKefPJJKysrq3Kf77//vvK29WlzTa/ZKykpsR49erjbnHXWWVWuW7NmjXXp0qXyMb7++usq159//vmVbS4qKrKGCP8+q+l0xhlnrNdv6o94qa1vX3/9dRs+fLh7b3r16mWDBw+266+/3lavXh2350fjkpPqBgBILgWHH3zwQZXLmjZtaptttpn16dPHjjnmGNt+++2rXK8f71tvvdWdX7hwYdTP+c0339hTTz1lAwYMWO+xa/oh3Geffdz5a665xoYOHVrtZfH0yCOPuIDjhBNOWK+v/vrXv9r06dMt6P744w+77LLL7J133nGvRX398MMP13s7kIKCAttyyy1t4MCBdsopp7htIxW0Y/LDDz/YoYceahMnTozqvql830KhkL355pv27LPP2ieffGI///yzZWVl2cYbb+yC2QMPPNB9DrKzqx4rfeyxx+yiiy6q8XH//e9/W79+/ZLwCgAASDz9Ri5fvtz9Pnq//vqrzZ49O6O7v2vXrtakSRPr3LmzZSK9n9tuu22112244YZJb0+0dtllF/e/YmFPCch//vOfLq6M9/5HtNtO8+bNXfL0q6++sjfeeMOdHnjgAbvtttusdevWlbG8fx2bbLJJg583Ly/PevbsabNmzXKf23CffvqplZeXV/6tz+8222xT5Xrp3r27a1e8+NcXyX+u9Lr9beL5vDW5+eab3Xsgm2++uW233XY2f/58W7RokT3zzDP26KOPVr4/QH2RrAUaqfz8fOvdu7c7/9tvv7kfE/3wK2n5t7/9zc4888zK2ypgqelHsT6UiLrzzjttiy22qFeyNt5BRn2SnFdccYULMMOTtekWUN9zzz0uIJCOHTtamzZtotoOKioqXFL8yy+/dCcFgA899JAL0pJNbdpqq61qDPhrk6r37aeffrIxY8bYnDlzKndK2rdv7/r4l19+sRdeeMGdFOzrSPumm25aed/ff//d/Z+Tk2M77bTTeo/dsmXLJL4SAAASp0WLFi4x+9prr1WpsFXcoSpBJaQUm2aimqpwM4WqCqM9yB4EpaWllpub62LpSC+99JIFwbhx46xv376VMbv2r7T/MnfuXLfv9uCDD7piACUFq3sdDaHYVcnaZcuWuUIEH8N+/PHHlfGrPrtK1vqEtmJbFez4+8dTXa9P26FOyaB9aJ+oPe644+ziiy9274P2pQ477DC3f6CiC1UZA9EgWQs0UpE/5CtXrnQ/+M8//7yrot1oo41cla0ccsgh7hSrl19+ud5ViTo6m4ggozZvvfWWO0qd7gG1KlFFSeenn366Xveprq/1/qua+osvvnAV0Ycffni191VQpqSoKkfjTcnMWKXiffvss89cJbIC02OPPdaOOOKI9ZLFOhgydepUN2zq9NNPd0G1Ernid0qTve0DABofDUeeNm2ai/m+++4791uug4tKLBx99NHud10jU6688koXD7777ruV99UoJz+s+O23366sjNXByueee86NILnxxhtrff6dd97ZXnzxRTcsPjxZq+St6KDlq6++ut799Hz6HVVyRK9BB3X1mzts2LDKWMSPBmvbtq1LZuk1aMSLkkkaoXLJJZdYq1atXJLJx7m6jR7De++99yoP3k+aNMkGDRpk8VLT6B/FBHfffbdLhqkycfTo0TU+hpKHquRTIkwj40466aQab7tixQrXJ0qE/+9//3Pv5/777++Gs//lL39xt3n//ffd8G3Re/LEE0+44g3FNDoArj6L9wFwFRfcf//9LjZS4lHbn+Iojezysdx///tfFyepfYWFhZX3VTJYyS8l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m8b7Xcw0VsmPZxEd4hQgdnx+gIbhM5Qe6hPPNqpkLRAvJSUlNmLECHd+5syZVLYAAAAAAACgwVhlCwAAAAAAAAACgGQtAAAAAAAAAAQAyVoAAAAAAAAACACStQAAAAAAAAAQACRrAQAAAAAAACAASNYCAAAAAAAAQADkpLoBQDrKycmxU089tfI8AAAAAAAA0FBkmYAY5Obm2siRI+k7AAAAAAAAxA3TIAAAAAAAAABAAFBZC8SgoqLCli5d6s63a9fOsrM57gEAAAAAAICGIVkLxKC4uNiOPPJId37mzJlWWFhIPwIAAAAAAKBBKAcEAAAAAAAAgAAgWQsAAFCH448/3jp16mTPPfdctdffcMMN7vpbbrklcH05b9481/6ePXvaTjvtZOeee66tWrWq1vvce++9NmDAAOvWrZv7f/r06VWuf/PNN+3SSy+1v/71r9a3b18bMWKEzZkzp9rHKikpsYMOOsj23nvvuL4uAAAAIBORrAUAAKiHTTbZxB566KH1Li8rK7P//ve/tvHGGweuH1evXm0nnniitW/f3iVYn3rqKfvuu+/snHPOqfE+ei033nijXXTRRfbRRx/ZJZdcYtdff7098cQT7vovv/zSzjzzTNt5553t7bfftjfeeMO23357O/nkk6tNAt900022bNmyhL5OAAAAIFOQrAUAAEm3bt26Gk+aF7y+ty0qKor5ttHaZ5997OOPP65cYNJ77bXXbIMNNnALToZbuHChnXTSSdarVy+X2FQyc9GiRZXXr1271lWn9u/f33r06OEqWO+5557K69955x1XrTt37lw76qijXGXsXnvtZY8//njlbZRAVfWrqler8/TTT7tFMZVwbdGihW2++eZ28cUX26xZs6q0JZyqaA877DBXCZufn2977rmnHXLIIXbfffe56+fPn+8S1Lo+Ly/Pzds+dOhQW7NmzXp9o2TvY4895voBAAAAQN1YYCzBcnNzE/0UAACknd12263G63bddVebPHly5d/77rtvjYnW3r1725QpUyr/Hjx4sKsmrU6XLl0qE46x2GijjWyXXXaxhx9+2MaNG1d5uf4+9NBD3YKTnhKXSs4q6Xnrrbe6hKn+13QBL7/8sjVr1sxVr7711lv24IMPWtu2bd35kSNHuirY3Xff3XJy/i9Mu/nmm+3aa6+1LbbYwiZOnGiXXXaZS5S2bNnSJVF1qsknn3xinTt3rhKPdO3a1Zo0aeKu69ixY5XbK+m7YMECN21COCWTH3nkEXe9Es/Nmze3F154wV0uum7LLbd0fRzeB+PHj7cLL7zQQqFQzP0OpBsWngUAAA1BZW2CtWvfzkrKS21dSVHGnkrKShPdjQAABMKRRx7pKlt9JesPP/xg77//vqssDafpBsrLy910A02bNnXJ2fPPP99KS0vtxRdfdLe54IIL7JlnnnFJzqysLNtjjz2sdevWLoka7phjjrGtt97aJW/1PHrub7/9tl7tXblypbVq1arKZXocVQLrukiaxkDtViI4nB5DlysRrukgbr/9dpes3XHHHd3p1VdfdcnogoKCyvsowaxksBLZQG1CFRUZ00E6EKKDFvo/U2TS+wMAQDqgsjbBQllZ9tInb9mv6363TNSi6QY2sPvuqiG2xkQ7ur7qyFc+AQDqL7wKNVJ2dtVjyapErYmSnJHD/ut721hoGgIN/VeicsiQIfboo4+6aQKUZA331VdfucRn9+7dq1yuClsleEVzx2o+108//bRyrlclYiOngVCi1tO0BKJpHRqqtv6IvM5Xxuryb775xk4//XQ74IAD3GJlMnXqVDc37pNPPumSuZofV++bktFAndtidrZ9/8RtVrziRzorYPI3amNtD/lbqpsBAECjQpYpCX5d+7utXFP9kEykJw0nPfvss1PdDABoFMOEE3XbWOgA3eGHH24zZsywAw880M3HeuWVV1abcNZ0Bs8991yNj3XGGWfYhhtuaA888ICb4kCJUCV+q3usWCmJ/NNPP1W5TNW9v/3223oJZl9Bq4rAyKrbFStWuNeuilvNq6v/laz+y1/+4m4/duxY9zqUnFX1r+bI/cc//uGmjgDqQ4naomVf01kAAKDRYxoEAACAKBxxxBE2Z84cN0+rEpVaICySFhv7/vvv7ddff61yuZ++QMnQr7/+2o477jg3X60StT///LP98ssvcX0vtCjZvHnzqixApgXLVOGrhc8iqWpYc9rqNuFmz57tFjLzc9/q/pGVt7pMieXXX3/dli9f7hYy69u3rzspcauksc4/++yzcX2NAAAAQCYhWQvEQDukP/74oztF7rACADLb5ptv7hYA0xQGWkCsuspXLXSmeWEnTJjgErNKlmpxM1Xj6rejRYsW7vqPP/7YzQWrxO1FF13kKmwjK2EbQtWvqja+4oorXOJYUy9cddVVNmDAAJdQlvvvv9/Ni+tpOoMnnnjCXnnlFTclg+bY1fQSp5xyirte91UblXTVwm9r1661W265xf0eat7d/fff39544w03JYI/aTSKpkfQeS2OBgAAAKB6JGuBGGjnVTvAOkXOLQgAaBwLjWkqASVrq6PpAaZNm+YW5Npnn31cRenzzz9vd911l7Vp08ZV5E6cONHeeust6927t1tsTFMJnHDCCfbaa6+5xcjqQ0lVVbyGV86G08Jm//73v12SVolUtVeVs1r8y9N8uZqH1tNctEoc6zZaPOzGG290SWclaUUVuVpM7IMPPnCPqXl8P/roIzdvrRLASg5vttlmVU7Nmzd3r1nnEz1VBQAAAJDOmLMWAACgDtOnT6/ytxKU8+fPr/U222+/vd199901PqaSnz4B6imReuyxx1b+vXDhwirXd+jQocplhxxyiDvVZrvttrN77723xuvPPPNMdwp31FFHuVNNlKRVdbCmWajPqveax1YnAAAAALWjshYAAAAAAAAAAoBkLQAAAAAAAAAEAMlaAAAAAAAAAAgAkrUAAAAAAAAAEAAkawEAAAAAAAAgAHJS3QAgHWnl62HDhlWeBwAAAAAAABqKZC0Qg7y8PBs3bhx9BwAAAAAAgLhhGgQAAAAAAAAACAAqa4EYhEIhW716tTvfsmVLy8rKoh8BAAAAAADQICRrgRgUFRXZvvvu687PnDnTCgsL6UcAAAAAAAA0CNMgAAAAAAAAAEAAkKwFAAAAAAAAgAAgWQsAAAAAAAAAAUCyFgAAAAAAAAACgGQtAAAAAAAAAAQAyVoAAAAAAAAACICUJ2u///57Gz58uHXq1MmWLFlS5brnn3/ehg4dar169bL+/fvbuHHjbOXKlZXXr1u3ziZMmGD9+vWz7t27u9u+9957KXgVaGyaNGliBx10kDvpPAAAaJyIZQEAAJAxydqXX37ZjjjiCGvTps1617355pt2/vnn2wknnGAffvihPfjggzZ//nwbP3585W2uuOIKe+edd+yee+6xWbNm2cCBA23kyJH29ddfJ/mVoLHJy8uzyy+/3J10HgAAND7EsgAAAMioZO3q1avt/vvvt0MPPXS963777TcbNWqUDRkyxHJycmzLLbd0iV1VzoZCIXffp556ysaOHWsdO3a0pk2buttvscUWNmPGjJS8HgAA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AAAAAAAaijlrgRiEQiGbPXt25XkAAAAAAACgoaisBQAAAAAAAIAAIFkLAAAAAAAAAAFAshYAAAAAAAAAAoBkLQAAAAAAAAAEAMlaAAAAAAAAAAiAnFQ3AEhXBQUFqW4CAAAAAAAAGnNlbVlZmT388MOVf7/zzjs2evRou/HGG62kpCTe7QMCqbCw0N5++2130nkAAJA+iGcBAACQMclaJWWnTJnizv/8888uUdusWTP74IMP3HUAAABAkBHPAgAAIGOStc8//7zdeeed7vyzzz5rXbt2tYkTJ9rkyZPtpZdeSkQbAQAAgLghngUAAEDGJGtXr15tHTp0cOdnzZple+yxhzu/6aab2qpVq+LfQiCAiouL7eyzz3YnnQcAAOmDeBYAAAAZk6xt3ry5rVixwv744w/78MMPrX///u5yXcbcnWgsKioq3HzNOuk8AABIH8SzAAAACKqcaO8wYMAAO+GEEyw3N9c6depk22+/vassvPLKK61v376JaSUAAAAQJ8SzAAAAyJhk7bhx4+yee+5xlbSnnHKKu0yVhb/++qtde+21iWgjAAAAEDfEswAAAMiIZG15ebm98sorduqpp1pWVlbl5Zr+4O67705E+wAAAIC4IZ4FAABAxsxZ26RJE7vkkkusrKwscS0CAAAAEoR4FgAAABm1wNjJJ59s119/vf3++++JaREAAACQQMSzAAAAyJg5a1944QX75Zdf7L777nMr6WqhsXBvv/12PNsHAAAAxBXxLAAAADImWbvffvslpiVAGtE8zR999FGqmwEAAGJAPAsAAICMSdaOHj06MS0BAAAAkoB4FgAAABkzZ6188sknduGFF9qIESPc3xUVFfb888/Hu20AAABAQhDPAgAAICOSta+++qodc8wxtmrVKps9e7a7bNmyZXbppZfaI488kog2AoFTXFxs48aNcyedBwAA6YN4FgAAABmTrL3jjjvsuuuuc/9nZWW5y9q0aWM333yz3XPPPYloIxA4qibXjp5OOg8AANIH8SwAAAAyJlm7dOlSGzhwoDvvk7XSt29f++GHH+LbOgAAACDOiGcBAACQMcna3NxcW7169XqXf/3111ZQUBCvdgEAAAAJQTwLAACAjEnW7rnnnnbJJZfYkiVL3N+au3bmzJl2zjnn2F577ZWINgIAAABxQzwLAACAjEnWXnjhhRYKhezAAw90Cyv169fPTj31VDdv7fjx4xPTSgAAACBOiGcBAAAQVDnR3qF58+Z25513uspazfeVnZ1t7dq1cycAAAAg6IhnAQAAkDHJWq9Dhw7uBAAAAKQj4lkAAACkfbL2ww8/tKuvvtpV1WoahEjz58+PV9uAwNJiepqr2Z8HAADpg3gWAAAAGZOs1eJiW2+9tQ0bNswKCwsT0yog4LKystj+AQBIU8SzAAAAyJhk7S+//GJPP/205eXlJaZFAAAAQAIRzwIAACCosqO9Q48ePey7775LTGuANFFSUmKXX365O+k8AABIH8SzAAAAyJjK2okTJ9rYsWNt1113tc0339yys6vmew855JB4tg8IpPLycnvmmWfc+XHjxqW6OQAAIArEswAAAMiYZO20adNs9uzZ7lTdPJ4kawEAABBkxLMAAADImGTt448/btdee63tt99+VlBQkJhWAQAAAAlCPAsAAICMSdYWFhbagQceaDk5Ud8VAAAASDniWQAAAGTMAmMnn3yyTZ8+PTGtAQAAABKMeBYAAABBFXV57EcffWRz5syxu+66y9q0abPeAmMPPfRQPNsHAAAAxBXxLAAAADImWdu0aVPbc889LVmWLFliN9xwg0sQFxUV2VZbbWUnnnhi5UJm7777rl1//fW2ePFi+8tf/mKDBg2yCy64gPl0AQAAkPJ4llgWAAAACU3WKjGaLBUVFXbSSSdZnz597IUXXnDJ2JdfftnGjBljrVu3ti222MJGjhxpp59+upuaYdmyZTZq1CiX1L366quT1k40PlpcT9uiPw8AANJHsuJZYlkAAABEK6ZVwj7//HN74okn7JtvvrGsrCxr3769HX744bbttttaPC1fvtwlYAcPHmwtWrRwl6ly9vLLL3dtePvtt12l7RlnnOGu69Chg0vknn/++TZu3LjK+0QqLy93p2QE6P8nZKGQZaY/X1e0/elvn4z3IVGaN28e8T7HRyb0TSLRP/QN2w2fKb5vGt93cSKeJxnxbKJi2WTGs8nQpEmTVDcBdciUbQ3BRpwP8BnKZOVR/JZGnax977333KIMW265pbVr185CoZC9+uqr9p///MedunfvbvGyySabWK9eveyRRx6xbt262QYbbOCqGdetW+eGrk2YMGG959PfZWVlNm/ePNtll12qfdxFixZZMqjicstttraSklIrLi6yTFSSV2KlpWX21ZdLXEVztD777LOEtCsT0Df0D9sOnyu+c4KB7+PM65tkxbOJimWTGc8mWmFhoXXp0iXVzUAdFi5c6LZbIBnS9bcFCAo+Q+kv6mTtzTff7I70jxgxosrlt99+uxtSdt9998WtcapyuO222+yUU06xfv36ub8V0GmKg86dO9vKlSutZ8+eVe7TqlUr9/+KFStqfNyOHTu6ucoSTRWX60qKLS8v1/LzM3OofF5enuXm5rj3I9ojCvoC0Y5LOlZTlJSU2KRJk9z5c845x/VDvKR73yQa/UPfsN3wmeL7pvF9F69duzauyclkxbOJimWTGc8C0qlTJzoCCUecD/AZymRro4hno07WfvXVV3bUUUetd7mC3XvuucfiqbS01E499VTbeuut7c4773RDwV577TUbP3585RD0SKqMEAXDNdFORXKTYFlWS3PS25+vK9b+TP57ET+PPfZYZbI2Ea8hnfsmGegf+obths8U3zeN57s43s+RrHg2UbGs8DuIZCImRbK3N7Y5gM9Qponmey072gdXBeGaNWvWu1xD4DVkK57effdd++KLL+zCCy90w8jy8/PdPF8aEvbAAw+4RcZWrVpV5T6qUBBdBwAAAKQqniWWBQAAQLSiTtbuuOOOdumll9rPP/9ceZkWTtBCCX/9618tGZPw6u/s7Gw3bGzu3LlVrps9e7YLwLt27ZqQtgAAACC9JTueJZYFAABAwpK1Gra1ePFityhC7969XbC711572dKlS+2iiy6yeNLjq6L2uuuucxWzqnTQ4g9aFGK//fZzw9cUWN9yyy2uOmLBggVuHtGjjz7amjVrFte2AAAAIDMkK54llgUAAEC0op6zdrPNNrNnn33WZs6cad9++62bV0ur6Pbv399Vu8aTVsz997//bTfddJMddNBBbgXStm3bukqIgw8+2N1m2rRpNnHiRJs6daq7/ZAhQ2zs2LFxbQcAAAAyR7LiWWJZAAAAJDxZq0oEJUdViRDu999/d5UIqnKNp2233datoluTPn362KOPPhrX5wQAAEDmSmY8SywLAACAhCRrV69e7Rbzeu6552zUqFGVK9V6S5YscdUJAAAAQBARzwIAACBjkrUaKnb11VdbRUWFDRo0aL3rlbzt169fvNsHBFJ+fr499dRTlecBAEDwEc8CAAAgY5K1xx57rA0ePNglZO++++71ri8oKLAuXbrEu31AIGk+uzZt2qS6GQAAIArEswAAAMioOWubN29ujz32mHXq1KnK5X/88Yc1a9Ys3m0DAAAA4op4FgAAAEEW9XK3eXl5dswxx1T+fckll7hFvnbbbTdbsGBBvNsHBFJpaalNnjzZnXQeAACkD+JZAAAAZEyy9sorr7T27du78x988IFbcOzee++14447zm644YZEtBEInLKyMps+fbo76TwAAEgfxLMAAADIiGkQ5PPPP3fVhPL666/bfvvtZ3379rWePXvav//970S0EQAAAIgb4lkAAABkTGWthnz7+WlnzZrlErV+OFlxcXH8WwgAAADEEfEsAAAAMqaydquttrK33nrLmjZtal9++aXtvvvu7vJPP/3UNtlkk0S0EQAAAIgb4lkAAABkTLJ25MiRdvrpp1tFRYWddtpptuGGG9qvv/5qo0ePtuHDhyemlQAAAECcEM8CAAAgY5K1gwYNst69e9uqVausc+fO7rLmzZvbBRdcYIMHD05EGwEAAIC4IZ4FAABAxiRrZdNNN3UnLysryyVqVW2bnR31NLgAAABAUhHPAgAAICOStaqmVXK2JvPnz29om4DAy8/PtxkzZlSeBwAA6YN4FgAAABmTrL3sssuqJGtVTfvDDz/YK6+8Yqecckq82wcEkirIO3TokOpmAACAGBDPAgAAIGOStUcffXS1lx9++OF200032bBhw+LRLgAAACAhiGcBAACQUXPWVqddu3b25ZdfxuvhgEArLS21u+++250/6aSTLDc3N9VNAgAADUQ8CwAAgIxJ1s6ZM8d+//33eD0cEGhlZWU2depUd3748OEkawEAyADEswAAAEi7ZG3//v2rrTL87bff7JhjjolXuwAAAICEIJ4FAABAxiRrjzzyyCoLjEl+fr5tt912tueee8azbQAAAEDcEc8CAAAgY5K1Z555ZmJaAgAAACQB8SwAAACCKjuaG8+ePdtefPHF9S6//vrrbcGCBfFsFwAAABB3xLMAAADIiGTt4sWL3ar3Wngh0o8//mgjRoywn376Kd7tAwAAAOKCeBYAAAAZk6ydNm2aDRw40MaPH7/edTfeeKNbqGHKlCnxbh8AAAAQF8SzAAAAyJg5az/44AO7++67a7z+b3/7m5122mnxahcQaHl5eXbvvfdWngcAAMFHPAsAAICMSdauWrXKttlmmxqvb9++va1YsSJe7QICrUmTJta1a9dUNwMAAESBeBYAAAAZMw2Cqgf/+OOPGq9fvXq1FRYWxqtdAAAAQFwRzwIAACBjkrWqInz++edrvP6JJ56w7t27x6tdQKCVlpbafffd5046DwAAgo94FgAAABmTrD3mmGPsmmuusaeffnq96/773//aTTfdZMcff3y82wcEUllZmd18883upPMAACD4iGcBAACQMXPWDhgwwCVjzz//fJeY1Ry1Gko2f/58++WXX+zss8+2XXfdNbGtBQAAAGJEPAsAAICMSdbKmDFjbO+993bVtd98842FQiEbNGiQDRkyxDp37py4VgIAAABxQDwLAACAjEnWSo8ePdwJAAAASEfEswAAAEj7OWsBAAAAAAAAAIlDshYAAAAAAAAAAoBkLQAAAAAAAACkS7L2008/rTw/d+7cRLYHSAt5eXl2xx13uJPOAwCAYCOeBQAAQMYka0eMGGHl5eWV54HGrkmTJtanTx930nkAABBsxLMAAABIBzn1udHGG29sw4YNs3bt2llpaamde+65Nd72hhtuiGf7AAAAgAYjngUAAEDGJGuvv/56u+uuu2z58uXu719++SXR7QICrayszB5//HF3fujQoZaTU6+PEgAASBHiWQAAAKSDemWYunfvbpMnT3bn999/f5s+fXqi2wUEmirM//nPf7rzgwcPJlkLAEDAEc8CAAAgHURdDvjCCy+4/1etWmXfffedO7/NNttY8+bN4986AAAAIM6IZwEAAJAxydq1a9faeeedZ2+88YaFQiF30gJLgwYNsquvvtry8vIS01IAAAAgDohnAQAAkDHJ2htvvNFV1GoIuCpqlaxdvHix3XnnnXbbbbfZmDFjEtNSAAAAIA6IZwEAAJAxydq33nrLpkyZ4hK1Xrdu3axr16525plnkqwFAABAoBHPAgAAIKiyo73DihUrrG3btutd3r59e1u2bFm82gUAAAAkBPEsAAAAMiZZq0TtO++8s97lumzTTTeNV7sAAACAhCCeBQAAQMZMg3DcccfZOeecYwcccIBtu+22lpWVZV9++aU999xzNnbs2MS0EgiY3NxcmzRpUuV5AACQPohnAQAAkDHJ2mHDhrnk1P33328vv/yyu0zz11555ZV24IEHJqKNQODk5ORY//79U90MAAAQA+JZAAAAZEyyVg455BB3AgAAANIR8SwAAAAyJlkLNHZlZWX2/PPPu/ODBg1ylbYAAAAAAABAUhcYS4XHH3/c9t9/f+vWrZvtvffeNm3atMrr3n33XRs6dKh1797ddtllF7viiiusqKgope1F5istLbUJEya4k84DAADUhngWAAAA9RH4ckAtXDZ58mS3mFPXrl3tvffes6uvvtp23HFHa9mypY0cOdJOP/10mz59ui1btsxGjRrlkrW6DQAAAJBqxLMAAADImGTtbbfdZmPGjLFevXq5v/fYYw93kokTJ9pWW21lZ5xxhvu7Q4cO7rbnn3++jRs3zlq0aFHtY5aXl7tTolVUVPx5LmShkGWmP19XtP3pb5+M9yERwtsd7+0p3fsm0egf+obths8U3zeN77s43X8T0zmeTYYmTZqkugmoQ6Zsawg24nyAz1AmK4/itzQn2nk6Dz30UHv66actGZYvX26LFy+2rKwsO/zww+2rr76yLbbYwlXTHnTQQfbJJ5+46Q/C6W+1c968eW5ahOosWrQoKe0vKCiwLbfZ2kpKSq24ODOnZijJK7HS0jL76sslMU0/8dlnn1k6Ki4urjz/6aefWn5+ftyfI137JlnoH/qG7YbPFN83qZeO38XEs8FSWFhoXbp0SXUzUIeFCxfaunXr6CckRTr+tgBBwmco/UWVrNUiSqFQyL788kvbbrvtLNF+/PFH9//DDz9s1113nW266ab2yCOP2LnnnmsbbbSRrVy50nr27FnlPq1atXL/r1ixosbH7dixozVt2jQplbXrSootLy/X8vMLLBPl5eVZbm6Ode7cOeojCvoC0TzE6VhNER6s6gCBdjTiJd37JtHoH/qG7YbPFN83je+7eO3atXE72E48C0SvU6dOdBsSjjgf4DOUydZGEc9GPQ3CYYcdZuecc47179/f2rZt65J1nipgjzjiCItn5YNoWFi7du3c+REjRrjK3scee6za+yiZ7NtSE+1UJDcJlmW1NCe9/fm6Yu3P5L8X8RHe5kS9hnTtm2Shf+gbths+U3zfNJ7v4ng/B/EskNrPIFDX9sY2B8SOz1AwRfO9FnWy9tprr3X/L1myZL3r4p2s9VWyzZs3r3L5lltu6aZIaN26ta1atarKdaq2FV0HAAAARCKeBQAAQFBFnaxdsGCBJcvWW2/tEraaE1TD7LxvvvnGtt9+e2vZsqW9+uqrVe4ze/ZsV+3btWvXpLUTjU9ubq5bEMSfBwAA6YN4FgAAAEGVHesdf/jhB3v//fct0SXCJ554ot1+++02d+5ct6jT9OnTbf78+Xb00UfbUUcdZcuWLbNbbrnF1qxZ4wLvSZMmueuaNWuW0LahcdN8dwMGDHAnnQcAAOmHeBYAAABBE3WWafXq1W6Br3feecclqT7//HM3JcFJJ51k06ZNc4uAxdNpp53m5qHVPLl67vbt29sdd9xhO+ywg7tez6kKx6lTp9oGG2xgQ4YMsbFjx8a1DQAAAMgcxLMAAADImGTt9ddfbxUVFfbII4/Yscce6y5TklTTElx11VV28803x7WBmgd31KhR7lSdPn362KOPPhrX5wTqs/jdG2+84c7vueeeVNcCAJBGiGcBAACQMcnad9991x588EFXQatEqhQUFNiFF15ogwYNSkQbgcApLS218ePHu/MzZ84kWQsAQBohngUAAEDGzFm7YsUK23jjjde7vLCw0IqKiuLVLgAAACAhiGcBAACQMcnadu3aVQ7/DvfQQw+56wAAAIAgI54FAABAxkyDcMYZZ7jFvvbee28rLy+3K664wr744gv77LPPbNKkSYlpJQAAABAnxLMAAADImMragQMH2v3332/Z2dm27bbb2ty5c61t27auslbXAQAAAEFGPAsAAICMqayV7t2724033hj/1gAAAABJQDwLAACAjEjWauqDe+65x1577TX76aefLD8/39q0aWMHHnigDR06NDGtBAAAAOKEeBYAAAAZk6z95z//aQ8//LDtscce1rNnTwuFQvb999+7uWu/+eYbGzNmTGJaCgRIbm6uXXbZZZXnAQBA+iCeBQAAQMYka5977jmbOnWq9enTp8rl77//vp133nkka9Eo5OTk2ODBg1PdDAAAEAPiWQAAAGTMAmNFRUWuojZS7969be3atfFqFwAAAJAQxLMAAADImGTtgAED3Hy1kd566y3be++949UuINDKysrs7bffdiedBwAA6YN4FgAAAGk9DcKtt95aeb5169Z26aWX2uOPP27t27e37OxsW7p0qX388cd23HHHJbKtQGCUlpbaOeec487PnDnTTYsAAACCi3gWAAAA6aBeGSYlZsM1bdrUFi1a5E7hlz3yyCM2evTo+LcSAFAvLHgHANUjngWA4CssLEx1EwAgPZK11U17AAAInnbt21lJeamZThmoSXYTy8vJTXUzAKQh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ubk2d+7cKlW1GjLWu3fvlLYNAAAAqAvxLAAAADImWbvBBhvY4YcfbjfddJMtWrTILbQwadIkV2l71FFHpbp5AAAAQK2IZwEAABAuK6RS1DRWUlJi1113nT3zzDMuWdulSxcbP3689ezZM9VNAwAAAOpEPAsAAICMqKyVvLw8u/jii+29996zTz/91B566KGEJWrXrVtnEyZMsH79+ln37t1t6NCh7nlrMm/ePDv++ONde3baaSc799xzbdWqVVUmF1Yl8B577GHdunWzAw880J577jlLR/Hum7///e+2/fbbu34JPz344IOW6X0jL7zwgu2yyy52xBFHrHddY95u6uqbxrzd6LpjjjnG+vTp4/pn9OjR9t1331Ve35i3m7r6JpO2m1j658knn7RDDz3UevXqZTvvvLOddtpptnDhwsrrG/O2U1ffZNK2E8v3sfevf/3LOnXqZO+//35GbjeZFs8ieJ8hAGbff/+9DR8+3P2eLFmyhC4BoqB1my666CLr37+/i1sPPvhg4q50p8pa1M/48eND++67b2jhwoWhNWvWhG6//fZQt27dQkuXLl3vtqtWrQr99a9/DV166aWh1atXh3788cfQsGHDQsOHD6+8zS233BLq27dv6KOPPgoVFRWFHn300VCXLl1C77//fqix983o0aNDF154YSgTRNM3Mnbs2NBBBx0UOvroo12/RGqs2019+qaxbjfz588Pde3aNTRt2rRQcXFxaPny5aETTjghdMABB4Qa+3ZTn77JpO0m2v556aWX3HUvv/xyqLS0NLRixYrQqFGjQrvuumuorKysUW879embTNp2ov0+9ubNmxfaeeedQx07dgzNmjWr8vJM2m6ARH6GAPzfb+4uu+wSGjdunPs9Wbx4Md0CREH7xscdd5zLrWif57777gt17tw5NHfuXPoxTaV9ZW2yrF692p566ikbO3asdezY0Zo2bWqjRo2yLbbYwmbMmLHe7Z9++mlXVXLJJZdYixYtbPPNN3cVE7NmzXLz6+q6+++/30499VTbcccdLT8/3w477DBX9aXLG3Pf+Mds1aqVpbto+0batm1rjz32mG211VbrXdeYt5u6+qYxbzf/+9//3DzdJ598sqvO0sriqkxYvHix/fLLL416u6mrbzJpu4mlfzbZZBO78cYbbcCAAZaTk2Mbbrihmwt++fLlru8a87ZTV99k0rYTy/exH7p/wQUX2BlnnFHl8kzaboBEfoYA/P/PkH4fNJoFQHT++OMP22677Vx+RbkV7fNoFHPz5s1djgXpiWRtPWnYfllZmRvKF65Hjx72ySefrHd7Xda5c2fLzc2tvKxr167WpEkTd52G4GrYf30frzH1jf/B1jBAle/37t3bDjjgALvnnnvcDmAm942MGTPGfcFWpzFvN3X1TWPebjTcRT/O4b799lsrKChwC9c05u2mrr7JpO0mlv7R5UpGil7v0qVL7b777nP9tummmzbqbaeuvsmkbSeW72PRNAdKVh933HFVLs+k7QZI5GcIwP8ZNmyYtW/fnu4AYtCsWTO76qqr3BQi3sqVK92aThtvvDF9mqZI1kYxB4i0bNmyyuXaSfHXhdOHI7LaRpU5Sg7oumgfrzH1jWy22WbuNjfccIO9++67dtZZZ9lNN91kd911l6WTeL/PjXm7qQ+2m/+zYMECmzx5sv3tb3+zwsJCtpta+iaTtpuGfK5ee+0122GHHWzQoEHutjfffHODHq8x9E0mbTux9M3HH39sjzzyiF1zzTWWlZXV4McD0hnbPAAgKDTy6bzzzrMOHTrYQQcdlOrmIEY5sd6xsYrcIQmFQutdFs1jxOPxMrFvpk6dWuXy/fff32bPnm0PPPCAG1aZbuL9PrPdVI/txuzNN990C/Yde+yxbjEktpu6+ybTtptYviP23ntv+/zzz13V8cSJE93UEUrExfp4jaFvVJ2dadtOfftm7dq1Nn78eHfSMO+GPh6QKdjmAQCpPnioxZSLiopcnFrbqFQEG5W19aR5DsVXfoZ/GKorLdftNQQwXGlpqf3222/uOn+f+j5eY+qbmmy99dZujknt7GVq39SlMW83sWpM283dd99t55xzjl166aUuKemx3dTcN5m03TT0c5WdnW3bbLONG0al+cOV3GbbqblvMmnbiXa7UdJaQ+00D211Mmm7AYIU0wAAUNsIQsVmbdq0cYUDWn8B6YtkbT1pCKTmWJ07d27lZdoRmzNnjpunLlLPnj3d/FUqQfd0X81j16tXL7dQkoK38McTVeTo+sbcN0ra/uMf/6hcbMzTgkBaWCqdqnKi7Zu6NObtpi6NfbuZNm2aG3qtxRmGDBlS5brGvt3U1jeZtN3E0j+az1cLRIUrLy+vnJ6mMW87dfVNJm070faNFkx67733rG/fvpUn0UJjp59+ekZtN0AqYhoAAKKxZMkSO+GEE+zII49003P56d6QvkjW1pPmU9Uq0JqLTjtmmqxZC2voCLqGRP78889u+ONHH33kbq+EgD4gV1xxhf36669usQ1V5Gixknbt2rmduBEjRrhqL91HZer/+c9/3I6MPmSNuW+0aqGCXVXAff/99y6p+9JLL9ljjz3mVnTP5L6pS2PeburSmLebL774ws3DOmXKFLdYX6TGvN3U1TeZtN3E0j/9+vWzZ555xp588kn32nU7VU0q0danT59Gve3U1TeZtO1E2zeqLH722Wdd3/iTXHnlle73PJO2GyAenyEAABJFxQQqMDjkkEPcQXNkiBDqrbi4OHTllVeGdt5551C3bt1CRx55ZGjOnDnuuu+++y7UsWPH0Jtvvll5+0WLFoWGDx8e6tGjR2innXYKXXTRRaHff/+98vqKiorQrbfeGtp9991DO+ywQ2jw4MGh119/PS3fkXj3zfLly0Pjxo0L7brrrqGePXuGDj744NDjjz8eyvS++eCDD9y2oFPnzp1DnTp1qvz7v//9b6PeburTN411u9HnJ7w/wk+NfbupT99k0nYTy/ex+uGQQw4J9erVy91n5MiRoQULFlRe31i3nfr0TSZtO9H2TSRdP2vWrIzcboCGfoYA1G7gwIHut6Jr167u90T/6+8TTzyRrgPq8OGHH1b53ISf+Aylryz9k+qEMQAAAAAAAAA0dkyDAAAAAAAAAAABQLIWAAAAAAAAAAKAZC0AAAAAAAAABADJWgAAAAAAAAAIAJK1AAAAAAAAABAAJGsBAAAAAAAAIABI1gIAAAAAAABAAJCsBQAAAAAAAIAAIFkLAAAAAEAC7L333nbLLbcEom8/+eQTGzhwoPXo0cOdb4h//etf7rXF25QpU+zggw+2oqIiC5KLL77YevXqZWeccUZcHu/999+3Tp062ffff1/jbU466SS74IILarx+yZIl7jH0WDUZM2aMHX/88RYPJSUldvjhh9utt94al8cDUDOStQAQUJdccokdd9xxKQ2Yw4OzJ5980gWNe+65pwvyd9ttNxs5cqQ9//zzCXteAACAhlCiqnPnztUmtJREjVciKx3cdddd9pe//MU+/PBD6969e40JRCUBIympqOveeust97eSlq+99lrl9R999JG9++67DWrfrFmz7Pbbb7ebb77ZCgoKLB7WrFnjXndDfPnll/boo4/a1Vdfbbfddlu1t/nqq69s9OjRtssuu7ik7uDBg+2RRx5p0PPefffd9s9//tOCIi8vzyZPnmz//ve/K7cDAImRk6DHBYCMoSBeAWhOzv99ZYZCIWvVqpXtuOOOdvbZZ1u7du0S8rxXXnllvW+rgDleR/qrCz71Orfddls75ZRT3A6PXv/q1atdUH3HHXfYM88844I330c///yz7b777pabm2tZWVmVj6X7EdwBAIBkUvzx97//3Z566qm4JQFTpbS01MVXsVi1apVts802LukWb/fee69tvfXW1q9fv5jur/j6mmuucZWbepx4UQJaSc+TTz455sdQv0nHjh2rxLWeqoCHDx/uChpeeOEFa9q0qdvWLrroIttkk01sjz32sEyxxRZb2NFHH20TJ060XXfd1Zo0aZLqJgEZicpaAKiH/fff3z777DN3+vzzz23GjBlWXl5uJ554ov3xxx/rBdGZ4qeffrITTjjBzjrrLLvppptcAL7hhhu6QFU7PoMGDXKVBuqD8CFRSuTKyy+/XNlvOpGoBQAAyXbEEUe4JK0OLNdGlaMPPvhglcuUkPLTGCgWGjJkiBtt5Eca6YD2ihUrXKykikol5p577rn1knkXXnih9enTx/r37+8qNMPjxZdeeskN/Ve1qx5XQ+59gtC3SwnHAw880A499NAa269KTrVP7RgwYID94x//qIxT99tvP1dRq2Rit27dbPbs2dYQ6hP1jQwbNsy9BrVRj60RWfPnz3cx5F//+lfXnqFDh1apxI30zjvv2IIFC2zEiBH1fk2R1b5SXFzsLnv88cft/vvvd9Wu//vf/1y7aqp0Vbyr91HvzU477WRHHXWUvffee+66J554wo0sE71Hp5566nr3X7t2rbv/uHHjrEWLFi6Zfthhh7nz6ofafPvtt3bsscdaz549ba+99nLtDi8Y0TQG3iuvvOK2AW13Smqrv8KpX84991zr27evq/C97rrrXBI83MKFC93rUX/uvPPOLom9aNGiyuv12rV96v1Vf+h2es0rV66svI0S0yrmePPNN2t9bQBiR7IWAGLQpk0bd7Rcwd3HH3/spiBQAK8AR0GpVFRUVE5PoKBKCd8777zTysrKKh/n008/tWOOOcZdr4D3iiuucEGmjB8/3u1ceP/5z3/cYyiYUxCmnYLl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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# ── Visualize the evaluation results ────────────────────────────\n", "fig, axes = plt.subplots(1, 2, figsize=(14, 5))\n", "\n", "# Precision distribution\n", "eval_results['precision_at_k'].hist(bins=10, ax=axes[0], color='#7BA88B',\n", " edgecolor='white', alpha=0.85)\n", "axes[0].set_title('Distribution of Precision@5', fontweight='bold')\n", "axes[0].set_xlabel('Precision@5')\n", "axes[0].set_ylabel('Number of Customers')\n", "axes[0].axvline(eval_results['precision_at_k'].mean(), color='#333', linestyle='--',\n", " label=f\"Mean: {eval_results['precision_at_k'].mean():.3f}\")\n", "axes[0].legend()\n", "\n", "# Hit distribution\n", "eval_results['hits'].value_counts().sort_index().plot(\n", " kind='bar', ax=axes[1], color='#D4845A', edgecolor='white')\n", "axes[1].set_title('How Many Hidden Favorites Did We Find?', fontweight='bold')\n", "axes[1].set_xlabel('Number of Hits (out of 3 hidden)')\n", "axes[1].set_ylabel('Number of Customers')\n", "axes[1].tick_params(axis='x', rotation=0)\n", "\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 💡 Interpreting the Results (Business Translation)\n", "\n", "**For the executive summary:**\n", "- **Hit Rate** tells us: \"For what % of customers did we get *at least one* recommendation right?\" This is the metric a restaurant manager cares about most.\n", "- **Precision@5** tells us: \"Of our 5 recommendations, how many were items the customer actually loves?\" This is the *quality* metric.\n", "\n", "**What's \"good enough\"?**\n", "- A random recommender on 64 items with top-5 would have Precision@5 ≈ 5/64 ≈ 0.078\n", "- Anything significantly above that means our model is adding value!\n", "\n", "**What could improve this?**\n", "- More granular attributes (cuisine sub-types, preparation methods)\n", "- Combining with collaborative filtering (Notebook 5B!)\n", "- Adding time-of-day or seasonal context" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "---\n", "\n", "## Phase 6: Deploy to Excel — \"Train in Python, Deploy in Excel\"\n", "\n", "Here's where it gets real. Our model works in Python, but the restaurant manager doesn't use Python. They use **Excel**.\n", "\n", "We'll export two things:\n", "1. **A taste profile for every customer** (the pre-computed weights)\n", "2. **A recommendation lookup table** (top-5 picks per customer)\n", "\n", "The manager opens the Excel file, types a customer ID, and sees personalized recommendations. No Python required." ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Generated profiles for 197 customers\n", "Generated 985 total recommendations (197 × 5)\n" ] } ], "source": [ "# ── Generate recommendations for ALL customers ──────────────────\n", "\n", "all_customer_ids = ratings_clean['customer_id'].unique()\n", "all_recommendations = []\n", "all_profiles = []\n", "\n", "for cid in all_customer_ids:\n", " # Build taste profile\n", " profile = build_taste_profile(cid, ratings_clean, menu_df, attribute_cols)\n", " profile_dict = {'customer_id': cid}\n", " profile_dict.update(profile.to_dict())\n", " all_profiles.append(profile_dict)\n", " \n", " # Get top-5 recommendations\n", " recs = get_recommendations(cid, ratings_clean, menu_df, attribute_cols, top_n=5)\n", " for rank, (_, row) in enumerate(recs.iterrows(), 1):\n", " all_recommendations.append({\n", " 'customer_id': cid,\n", " 'rank': rank,\n", " 'item_id': row['item_id'],\n", " 'item_name': row['item_name'],\n", " 'category': row['category'],\n", " 'price': row['price'],\n", " 'match_score': round(row['match_score'], 4)\n", " })\n", "\n", "profiles_df = pd.DataFrame(all_profiles)\n", "recs_export_df = pd.DataFrame(all_recommendations)\n", "\n", "print(f\"Generated profiles for {len(profiles_df)} customers\")\n", "print(f\"Generated {len(recs_export_df)} total recommendations ({len(all_customer_ids)} × 5)\")" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "✅ Files exported for Excel deployment:\n", " 1. urban_bites_recommendations.csv — Top-5 picks per customer\n", " 2. urban_bites_taste_profiles.csv — Customer preference weights\n", " 3. urban_bites_menu_reference.csv — Full menu with attributes\n", "\n", "💡 Next step: Open these in Excel to build the manager-facing lookup tool.\n", " Or use the pre-built 'UrbanBites_Recommender.xlsx' workbook!\n" ] } ], "source": [ "# ── Export to CSV files (for Excel import) ──────────────────────\n", "\n", "# Recommendation lookup table\n", "recs_export_df.to_csv('urban_bites_recommendations.csv', index=False)\n", "\n", "# Customer taste profiles\n", "profiles_df.to_csv('urban_bites_taste_profiles.csv', index=False)\n", "\n", "# Menu reference\n", "menu_df.to_csv('urban_bites_menu_reference.csv', index=False)\n", "\n", "print(\"\\n✅ Files exported for Excel deployment:\")\n", "print(\" 1. urban_bites_recommendations.csv — Top-5 picks per customer\")\n", "print(\" 2. urban_bites_taste_profiles.csv — Customer preference weights\")\n", "print(\" 3. urban_bites_menu_reference.csv — Full menu with attributes\")\n", "print(\"\\n💡 Next step: Open these in Excel to build the manager-facing lookup tool.\")\n", "print(\" Or use the pre-built 'UrbanBites_Recommender.xlsx' workbook!\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Sample: What the Excel Deployment Looks Like\n", "\n", "Let's preview what the manager would see:" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "╔══════════════════════════════════════════════════════════╗\n", "║ URBAN BITES — Personalized Recommendation Lookup ║\n", "╠══════════════════════════════════════════════════════════╣\n", "║ Customer ID: 15 Segment: Adventurous Eater ║\n", "╠══════════════════════════════════════════════════════════╣\n", "║ Rank Item Category Price ║\n", "╠══════════════════════════════════════════════════════════╣\n", "║ 1 Hawaiian Teriyaki Burger Burger $12.35 ║\n", "║ 2 Mushroom Swiss Burger Burger $16.39 ║\n", "║ 3 Loaded Nachos Appetizer $11.28 ║\n", "║ 4 Meat Lovers Pizza Pizza $15.1 ║\n", "║ 5 Philly Cheesesteak Sandwich $15.83 ║\n", "╚══════════════════════════════════════════════════════════╝\n" ] } ], "source": [ "# ── Preview: Manager's view ─────────────────────────────────────\n", "sample_cid = 15\n", "segment = customers_df[customers_df['customer_id'] == sample_cid]['customer_segment'].values[0]\n", "\n", "print(f\"╔{'═'*58}╗\")\n", "print(f\"║ URBAN BITES — Personalized Recommendation Lookup ║\")\n", "print(f\"╠{'═'*58}╣\")\n", "print(f\"║ Customer ID: {sample_cid:<10} Segment: {segment:<20} ║\")\n", "print(f\"╠{'═'*58}╣\")\n", "print(f\"║ {'Rank':<6} {'Item':<30} {'Category':<12} {'Price':<8} ║\")\n", "print(f\"╠{'═'*58}╣\")\n", "\n", "cust_recs = recs_export_df[recs_export_df['customer_id'] == sample_cid]\n", "for _, row in cust_recs.iterrows():\n", " print(f\"║ {row['rank']:<6} {row['item_name']:<30} {row['category']:<12} ${row['price']:<7}║\")\n", "\n", "print(f\"╚{'═'*58}╝\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "---\n", "\n", "## Wrap-Up: Key Takeaways\n", "\n", "### What We Built\n", "A complete content-based recommendation engine that:\n", "1. ✅ Starts with a **business question** (\"What should we recommend to each customer?\")\n", "2. ✅ Explores and **cleans the data** (duplicates, uninformative raters)\n", "3. ✅ Builds **taste profiles** using weighted attribute vectors\n", "4. ✅ Generates **personalized recommendations** via cosine similarity\n", "5. ✅ **Evaluates** performance with Precision@K and Hit Rate\n", "6. ✅ **Deploys** results to Excel for business users\n", "\n", "### PAIR Framework Recap\n", "\n", "| Element | What We Delivered |\n", "|---|---|\n", "| **P**rediction | Match scores for every customer-item pair |\n", "| **A**ction | Top-5 personalized recommendations in Excel |\n", "| **I**mpact | Measurable via Precision@5 and Hit Rate |\n", "| **R**isk | Filter bubble (addressed by mixing in popular items); cold-start (flagged customers with <3 ratings) |\n", "\n", "### Content-Based Filtering: Strengths & Limitations\n", "\n", "| Strengths | Limitations |\n", "|---|---|\n", "| Works with **new items** (no ratings needed — just attributes) | Only as good as the **attributes you define** |\n", "| **Transparent** — you can explain *why* an item was recommended | Creates **filter bubbles** (never surprises the customer) |\n", "| **No cold-start for items** (unlike collaborative filtering) | Doesn't learn from **other users'** behavior |\n", "| Easy to **deploy** (pre-compute profiles, lookup in Excel) | Misses **cross-category discoveries** (\"People who like X also like Y\") |\n", "\n", "### What's Next?\n", "\n", "**Notebook 5B** will build a **Collaborative Filtering** recommender on the same Urban Bites data — so you can compare both approaches side by side and see when each one shines.\n", "\n", "---\n", "\n", "*\"The best recommendation system isn't the most sophisticated one — it's the one that actually gets deployed and drives decisions.\"*" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.13.12" } }, "nbformat": 4, "nbformat_minor": 4 }