Event Recommender
Select what you're interested in and the recommender will find your best-matching events using cosine similarity.
What are you looking for?
How this recommendation works
Inputs / Features
Each event in the dataset is described using 5 binary features like academic, social, sports, indoor and evening. 1 means yes and 0 means no. The user also picks their preference using the same 5 features. Both the user and each event are represented as vector.
Model Used
The system uses cosine similarity, a technique from content-based filtering. This measures the angle between the user's preference vector and each event vector. The smaller the angle between them, the more similar they will be. This is inspired by the k nearest neighbours instead of rules.
Output
The system scores every event against the users' preferences and gives us back the top 3 highest scoring matches. This is displayed with a percentage score and a visual bar. If a 100% score is present this means that the event perfectly matches every preference the user selected.
Evaluation
The recommender was tested manually. Selecting academic and indoor correctly retured three academic indoor events which were guest lecture, cv workshop and study skills bootcamp which all scored 100%. Selecting social and evening preferences returned different events like we expected. Results were logical and consistent.
🧠 How this works
- Input: Your preferences become a 5-number vector e.g. [1, 0, 1, 0, 1]
- Events: Each event also has a 5-number feature vector stored in the dataset
- Algorithm: Cosine similarity measures the angle between two vectors — the smaller the angle, the better the match
- Output: Events are ranked by similarity score (0–100%) and the top 3 are shown
- Why not if/else: Cosine similarity weighs all features together — no single rule decides the result