CoolFace
Apppublic

RituJoshi/RecommendationSystem

sourceHugging Faceupdated 1y agoView on Hugging Face
0likes
evaluation.ipynb68 linesDownload Raw Back to root
1{2 "cells": [3  {4   "cell_type": "code",5   "execution_count": null,6   "id": "d8df944a",7   "metadata": {},8   "outputs": [],9   "source": [10    "# EVALUATION NOTEBOOK\n",11    "import pandas as pd\n",12    "from src.models.recommender import SHLRecommender\n",13    "from src.evaluation.metrics import recall_at_k, mean_average_precision\n",14    "\n",15    "# Defining benchmark queries with known relevant assessments\n",16    "benchmarks = [\n",17    "    {\n",18    "        \"query\": \"Hiring for Java developers who can collaborate with business teams, need 40-min assessment\",\n",19    "        \"relevant\": [\"Java Programming Test\", \"Inductive Reasoning\", \"Situational Judgement Test\"]\n",20    "    },\n",21    "    # Adding more benchmark queries\n",22    "]\n",23    "\n",24    "recommender = SHLRecommender()\n",25    "results = []\n",26    "\n",27    "for benchmark in benchmarks:\n",28    "    recommendations = recommender.get_recommendations(benchmark[\"query\"])\n",29    "    rec_names = [r[\"description\"] for r in recommendations]\n",30    "    \n",31    "    recall = recall_at_k(benchmark[\"relevant\"], rec_names, k=3)\n",32    "    map_score = mean_average_precision(benchmark[\"relevant\"], rec_names, k=3)\n",33    "    \n",34    "    results.append({\n",35    "        \"query\": benchmark[\"query\"],\n",36    "        \"recall@3\": recall,\n",37    "        \"map@3\": map_score\n",38    "    })\n",39    "\n",40    "results_df = pd.DataFrame(results)\n",41    "print(f\"Mean Recall@3: {results_df['recall@3'].mean()}\")\n",42    "print(f\"Mean MAP@3: {results_df['map@3'].mean()}\")\n"43   ]44  }45 ],46 "metadata": {47  "kernelspec": {48   "display_name": "Python 3 (ipykernel)",49   "language": "python",50   "name": "python3"51  },52  "language_info": {53   "codemirror_mode": {54    "name": "ipython",55    "version": 356   },57   "file_extension": ".py",58   "mimetype": "text/x-python",59   "name": "python",60   "nbconvert_exporter": "python",61   "pygments_lexer": "ipython3",62   "version": "3.10.0"63  }64 },65 "nbformat": 4,66 "nbformat_minor": 567}68