Adrian Chen

Machine learning and AI engineering.

BSc Mathematics and Statistics at UCL, graduating 2027. I build machine learning systems, from research prototypes to production deployment.

Scroll

Detector demo

On-device inference on a London street.

A 13-second screen recording from the handset. The overlay shows the model’s telemetry: input downscaled to 640, inference time per frame, p50 and p95 over a rolling window, frame rate and device temperature.

The recording also shows the app’s controls: confidence and NMS thresholds, per-class toggles, and a switch between the pseudo-label-distilled model and its baseline for comparison in the field.

Classes
Cone, barrier, site information board, roadworks sign, other temporary sign
Backend
CPU only, thread count selectable at runtime
Purpose
Local detection reduces the number of frames sent to the server-side vision-language model
On-device inference, recorded 2 September 2026.

Experience

Work experience.

  1. Jul — Sep 2026

    Product & Engineering Intern at FYLD

    London

    Two research workstreams on a field-operations platform: an on-device computer vision model for automated site-compliance checks, and a job duration prediction model. Responsible for the detector, including the dataset, through to architecture sign-off.

    Most of the effort went into the dataset. I built it with a model in the loop: automatic labels, mask refinement by a segmentation model, then iterative self-training, with human review of every batch. The final dataset contained 1,400 human-reviewed images and 3,530 boxes from 633 source videos, including 264 true negatives. Ten alternative approaches were tested and rejected along the way, several at a cost of under five dollars each.

  2. Jun — Nov 2025

    AI Engineer at Vmor Technology

    Sydney

    Led development of a real-time speech-to-speech system, built as a reusable module rather than for a single client. Deployed for customer service, automated reception and booking, and clinical note-taking. Peak production load was 1,250 concurrent users.

    The pipeline has five stages: a custom PyTorch voice-activity detector, faster-whisper transcription, an LLM with retrieval and an agent layer, open-source speech synthesis, and delivery over WebSocket. It is queue-based and modular, so each stage can be replaced independently. Component choices were driven mainly by cost and data security, so the stack is largely open source. Locally hosted models were also tested, benchmarked and rejected.

  3. Jul — Nov 2025

    Research Assistant at University of Technology Sydney

    Sydney

    Built two systems: a retrieval assistant for pharmaceutical regulatory documents, and a trend-detection pipeline processing more than 10,000 news articles.

    The trend pipeline matched articles to known themes by embedding similarity. It identified emerging themes using UMAP and HDBSCAN clustering with near-duplicate filtering, and classified them with supervised models. The regulatory assistant is the subject of a manuscript in preparation. I am sixth of ten authors, and contributed the retrieval pipeline and its evaluation.

  4. Aug 2024 — Jun 2025

    Software Engineer Intern at Vmor Technology

    Sydney

    Backend platform for a member-management product with more than 3,000 users. Two ASP.NET Core APIs over Entity Framework Core and MySQL, covering authentication, payments and membership.

    JWT authentication with optional TOTP two-factor authentication, including QR provisioning and expiry handling. Square for card payments, Twilio for one-time passcodes and AWS SNS for notifications, with membership status updated on successful payment. Also profiled and removed N+1 query patterns that were slowing response times.

  5. Feb — May 2024

    IT Systems at WollemAI

    Sydney

    Cloud platform administration at a seed-stage climate analytics startup, including a full migration from Google Workspace to Microsoft 365 for around twenty staff.

    The migration had to avoid any email downtime, as the founders were in ongoing client discussions. After the cutover, I diagnosed and fixed an outbound deliverability problem that was sending mail to spam.


Projects

Other projects.

UCL · 2026

Finite difference pricing of European options

A Python solver for European option prices, validated against the Black–Scholes closed-form solution.

Read more Read less about Finite difference pricing of European options

Derived the explicit finite difference scheme for the Black–Scholes PDE and implemented backward time-stepping. Analysed convergence across four grid resolutions, and computed Delta and Gamma directly from the grid.

10.4658 vs 10.4506absolute error 0.0152

Early

Chick embryo developmental staging

Computer vision for classifying the developmental stages of chick embryos, in collaboration with a developmental biology colleague.

Read more Read less about Chick embryo developmental staging

Stages are labelled using the Hamburger–Hamilton staging table. The project applies computer vision to a biology research question.


Outside work

Interests and achievements.

Standing on a ridge with a deep valley and snow-streaked mountain face behind.
On a summit in full winter kit, with a flat sea of cloud below the ridgeline.
Standing on a summit trig point in snow, a sun halo arcing through the sky.
Outdoors
Hiking and winter camping. All photographs on this page are my own, including the one at the top.
Fencing
UCL Men’s 2nd team for two seasons, and team captain for 2026–27.
Chess
Peak online rating of around 1700.
Piano
Currently learning the third movement of Beethoven’s Moonlight Sonata.
Also
Swimming, badminton, drawing and graphic design, Gunpla, laptop hardware upgrades, and cooking.

Vice President, founding team

UCL Actuarial Society. Grew to around fifty members in its first year

Academic Achievement Award

UNSW entry scholarship covering one year of tuition

Dux, ATAR 98.75

Top 1.25% nationally. First in year in Mathematics Extension 2, Chemistry and Physics

Get in touch by email.

Email is the most reliable way to reach me.

email me