👋 Hi, I’m Yueheng!

  • 🎓 I’m a Master of Data Science student at The University of Hong Kong.
  • 📝 I write on topics including data science, computer science, hardware projects, and anything tech-related that catches my interest.

Crypto ML Platform: Machine Learning Cryptocurrency Trading Backtest Platform

Overview Crypto ML Platform is a comprehensive cryptocurrency trading strategy backtesting platform that combines modern web technologies with machine learning. Built as my outstanding undergraduate thesis, this platform enables users to fetch real-time market data, configure ML models, and run sophisticated backtests with an intuitive web interface. System Architecture Tech Stack Backend FastAPI - Modern, fast web framework for building APIs PyTorch - Deep learning framework for custom neural networks CatBoost/XGBoost/scikit-learn - Traditional ML libraries CCXT - Unified cryptocurrency exchange API for data fetching TA-Lib - Technical analysis library with 50+ indicators SQLite - Lightweight database for persistent storage Frontend Next.js 15 - React framework with App Router TypeScript - Type-safe JavaScript Tailwind CSS - Utility-first CSS framework shadcn/ui - Accessible UI component library built on Radix UI Key Features 1. Real-Time Market Data Fetching The platform automatically fetches OHLCV (Open, High, Low, Close, Volume) data from Binance with automatic duplicate detection and incremental updates. ...

March 14, 2025 · 4 min · 757 words · Yueheng

Neural Radiance Field!

Overview This project is a fun exploration of the neural field and neural radiance field. In the first part, we fit a neural field to a 2D image. In the second part, we fit a neural radiance field to a 3D scene. Rendered Images Rendered Depths Part 1: Fit a Neural Field to a 2D Image In this part, we implement and train a neural field to represent a 2D image. More mathematically, we are trying to fit a neural field that: $$ F: {x, y} \rightarrow {r, g, b} $$ where $x, y$ are the coordinates of the image and $r, g, b$ are the RGB values of the image. ...

December 13, 2024 · 5 min · 1062 words · Yueheng

Fun With Diffusion Models!

Overview This project focuses on implementing a diffusion model to generate images. The diffusion model is a generative model that generates images by iteratively applying a series of transformations to a noise image. The model is trained to generate images that are similar to the training data. The project is divided into two parts. In Part 1, we implement the forward process of the diffusion model and explore different denoising techniques using a pre-trained diffusion model. In Part 2, we train a single-step denoising UNet and extend it to include time-conditioning and class-conditioning. ...

November 23, 2024 · 7 min · 1458 words · Yueheng

Auto Stitching Photo Mosaics

Overview This project focuses on auto stitching photo mosaics. It is divided into two main parts: the first involves capturing source images, establishing correspondences, and manually warping and compositing them into a mosaic. The second part aims to automate the correspondence-finding process from Part 1, allowing for the efficient creation of these composite images. Automatically stitched mosaic of my deck. Automatically detected inlier matches between the two images in my living room. ...

October 30, 2024 · 9 min · 1748 words · Yueheng

Face Morphing

Overview This project involves implementing face morphing and image manipulation techniques using computational photography. The primary goals are to morph an image of your face into someone else’s face, compute the average face of a given population, and create a caricature by extrapolating from the population mean. Moreover, we can change the smile of an individual by adding or subtracting a “smile vector” from their face. Finally, we can perform PCA on the face shapes of the individuals in the FEI face database and generate a laughing face by altering the PCA components. ...

October 8, 2024 · 7 min · 1292 words · Yueheng