Author Image

dogeplusplus

Albert Chung

After studying Mathematics at the University of Warwick, I started my career in data as a consultant, helping clients build data pipelines to make sense of their data.

I grew a passion for machine learning and became a Deep Learning Engineer where I performed research, developed infrastructure, and built tools that accelerate the research throughput of biologists. Now I am scaling up machine learning pipelines that increase the throughput and accuracy of analysing medical images, which have applications in supporting medical diagnosis and drug development.

My interests span a range of domains in Machine Learning that try to solve some of the biggest problems faced in our world. From model development to operations, from research to system design, I help bridge the gap between machine learning research and engineering.

Skills

Projects

ball-balancer
ball-balancer
Developer

Training RL agents using Unity ML-Agents. This shows how to interact with environments provided by Unity, and uses a PyTorch implementation of PPO from OpenAI’s spinning up library, instead of using mlagents-learn directly. There is some parallelisation of environments using MPI which allows for faster training.

cat-alan
cat-alan
Developer

Streamlit app that takes uploaded audio/video of cat sounds, and tries to categorise them into 1 of 10 emotions. The model is based off the M5 architecture trained on roughly 3000 labelled cat audio clips. A link to the deployment can be found here https://share.streamlit.io/dogeplusplus/cat-alan/main/app.py.

flax-u2net
flax-u2net
Developer

An implementation of U2-Net using Flax and JAX to detect visually distinctive image regions from the perspective of the human visual system.

neural-style
neural-style
Developer

neural-style makes use of a pre-trained model from TensorFlow Hub. By uploading a content image and a style one can create funky art. This is currently deployed as a HuggingFace space and can be found here https://huggingface.co/spaces/dogeplusplus/neural-style.

torch-actor-critic
torch-actor-critic
Developer

PyTorch implementation of Soft Actor-Critic to play around with MuJoCo environments. Includes mlflow logging to record experiments and explore different model/algorithm hyperparameters.

seafood-distillation
seafood-distillation
Developer

PyTorch demonstration of how to perform model distillation using the KL-divergence loss term. An example of student teacher networks.

cyclegan-cat
cyclegan-cat
Developer

Convert the fur coats of tabby cats to tortoiseshell and vice versa using a TensorFlow implementation of Cycle-GAN. Features include support for UNet and ResNet generators, saving/retraining, Tensorboard logging, and visualisation with Streamlit. I use DVC for dataset versioning, and Prefect flows to perform batch jobs such as scraping images using the PetFinder API or serializing to TFRecords.

termivision
termivision
Developer

Rust video player that prints directly to the terminal. Using the ansi_term create one can print coloured pixels. termivision shows how to use the OpenCV rust bindings to parse image/video data and transform them into coloured text.

haiku-transformer
Developer

Implementation of Vision Transformer in Haiku and JAX.

group-unet
Developer

An exploration of Group Equivariant convolutions applied to image segmentation, with Wandb for experiment tracking.