← All work

06 / AI and agents

Cold-Start Recommender

Meta-learning for travellers with no history

Client
MSc research in software engineering
Role
Researcher, MSc thesis
Year
2026

MSc research. Results measured offline on public check-in data at three scales.

The challenge

Classic collaborative filtering needs neighbours to compare against, and a new traveller has no bookings, reviews or check-ins. On the full dataset fewer than 0.25% of user and place pairs have any interaction, an order of magnitude sparser than standard benchmarks, and all feedback is implicit. The system has to learn a person from almost nothing.

How it fits together

adaptCheck-insa handful per userInteraction graphSupport setadapt on theseGNN embeddingsPlace featuresgraph + geo + socialMeta-learnerMAML or ProtoNetRankingtop places
A new user’s few check-ins become a support set; place features join graph, geographic and social signal; a meta-learner (MAML or a prototypical network) adapts and ranks places.

The approach

  1. 01

    Every user is a task

    Each user becomes a meta-learning task: a small support set to adapt on and a held out query set to evaluate on. The model learns how to learn a new person quickly, rather than memorising existing ones.

  2. 02

    Context the graph cannot see

    Place embeddings from a graph neural network are joined with a geographic vector, so nearby places relate even if nobody visited both, and a social vector that warm starts a newcomer from their connections.

  3. 03

    Two meta-learners, one feature set

    A MAML model adapts with gradient steps per user; a prototypical network simply averages a user’s support embeddings and ranks by distance. Training both on the same features separates the effect of the algorithm from the effect of the data.

  4. 04

    Three scales and an ablation

    Real check-in and friendship data at country, continent and global scale, evaluated with NDCG and Recall at 10 and 20, and an ablation that removes one component at a time.

Results

+21.7%

NDCG@10 over the graph baseline

+26.3%

Recall@10 over the graph baseline

3.5x

faster training than MAML at similar accuracy

Looking back

The biggest lever was context, not the algorithm. Removing geography cost about 90% of the accuracy, while the choice of meta-learner mattered far less, and the simpler one was cheaper to train.

Stack

Python, PyTorch, Graph neural networks, MAML, Prototypical networks

Next project ↗

Tenancy and Org Structure

The backbone services every other service relies on