

Lomb
Data-driven platform for immersive language-learning.- User tackles complex, immersive language tasks like reading a book or watching a TV series.
- Machine learning algorithms craft perfectly-targeted revision sessions to optimize relevant vocabulary acquisition.
- Completely original concept which dismisses the SRS dogma in favour of actual science
Stack:
Python
React
MongoDB
Flask
antd

Memory-Trace Regression
Machine learning algorithm which powers Lomb's revision module.- Standard machine learning methods cannot reliably predict when a user will forget a word.
- My approach encodes domain knowledge from Experimental Psychology models (and elsewhere) using semi-supervised learning techniques.
- The paper which introduces my approach was recently accepted to the CSCW 2021 conference.
Stack:
Python
sklearn
Pandas
Numpy
Latex

Pubsub Testing Framework
Research into intelligent cloud middleware.- Message queues are the backbone of distributed systems and stream architectures. At their heart is a brokering algorithm which decides which events get forwarded to which consumers.
- Current message queue brokering algorithms are topic-based, so clients get all the events in a certain topic, of which usually a small percentage are relevant
- An important research direction in my lab is next-generation content-based publish-subscribe algorithms which can perform filtering directly at the broker, hence greatly improving the performance of cloud-native applications
- I worked on this C++ codebase for about 4 months.
- I implemented my own algorithms for the problem. The performance was ok in some cases, but it wasn't a super strong result and decided to pursue weakly supervised memory-tracing regression for my thesis instead.
- Another contribution was to automate much of the work involved in running experiments: user declares what should be done in a configuration file and the program runs the experiments, plots the results, typesets Latex tables, etc. (before this was a very time consuming process).
Stack:
C++
R
Python
Latex


Chemotherapy Management App
Medicine management solution.- Calculates chemotherapy drug doses, inventory expiry dates, prints labels, etc. for each patient.
- UI designed to prevent human error.
- Admin and user roles with different privileges.
- Used in Ruijin Hospital (Shanghai).
Stack:
Python
Django
Elm
Material design