I like the space between an interesting model and a genuinely useful tool.
I’m Kun Ming, an Applied AI & Analytics student in Singapore. I build experiments that keep their reasoning visible: the question, the baseline, the evidence, the limitations, and the path from notebook to something another person can actually try.
This profile is arranged as three connected worlds rather than a wall of badges. Each world pairs two builds that share a deeper question.
What if we could see both the model’s possibility and the pipeline’s proof?
Hybrid Generative Models — comparing classical and circuit-based latent priors
One controlled question, several model variants, shared configuration, and bounded evaluation. The interesting part is not novelty by itself; it is whether the comparison remains reproducible and interpretable.
Qiskit · TensorFlow · GANs · FID / KID
Leaf Object Detection — making the whole vision pipeline inspectable
Annotation checks, dataset preparation, training, evaluation, ONNX export, and browser inference connected as one reproducible path—not a training notebook floating on its own.
Python · YOLO · ONNX · Browser inference
Can an algorithm preserve structure without sanding away character?
HaikuForge AI — constrained generation that keeps its rules visible
A playful language system built from syllable-aware Markov generation, poetic transformations, controlled batch variation, and WAV narration.
Python · Markov chains · NLP · Audio
Newspaper Restoration — explainable search for damaged text
Prefix tries, wildcard recovery, edit-distance search, and graph visualisation combine into a restoration toolkit whose decisions can be followed rather than merely accepted.
Tries · Edit distance · NetworkX · pytest
How does a prediction become an experience people can navigate?
GoBest Trip Predictor — packaging prediction for reliable offline use
A desktop ML application with batch inference, feedback capture, lightweight drift checks, packaging, and smoke tests—the less glamorous work that makes a model usable.
scikit-learn · CustomTkinter · PyInstaller
FitnessQuest — turning progress into a responsive product journey
A gamified web application with authenticated APIs, a relational data layer, responsive journeys, and automated browser flows.
Node.js · Express · MySQL · Playwright
More experiments in the orbit
- EstateScope AI — multimodal housing-value modelling.
- VeggieAI — image classification as a tested application.
- Movie Sentiment AI — recurrent architectures for sentiment and ratings.
- Pendulum Reinforcement Learning — visible control and learning trade-offs.
- HDB Price Dashboard — Singapore resale data as an explorable story.
The shape below is not a mock-up. It is generated from a parametric (2, 3) torus-knot tube: 1,728 vertices and 3,456 triangular faces. It stands for the way I work—question, data, baseline, experiment, product, and sharing are separate strands, but the useful artifact is one continuous object.
Open the interactive 3D viewer · Download the OBJ model · Read the generator
Working rule: complexity has to earn its place. A strong build leaves behind the question, baseline, configuration, tests, limitations, and a path for someone else to try it.
I care less about collecting tools than about connecting them into a clear path from evidence to experience.
Open the toolbox
- Models:
Python·PyTorch·TensorFlow·Keras·scikit-learn·Qiskit·OpenCV - Data:
Pandas·NumPy·SQL·Matplotlib·Plotly·Tableau - Products:
Flask·FastAPI·Node.js·React·PostgreSQL - Delivery:
pytest·Playwright·Ruff·Docker·GitHub Actions
I prefer repositories that preserve the reasoning—not just the final screenshot. That means reproducible setup, tests, honest limitations, and enough context for another person to inspect the work.
If you are exploring careful ML experiments, creative computation, computer vision, or better ways to turn a model into a useful product, I’d be glad to hear from you.
Curious by default. Clear by design.



