Cliffton

Cliffton Owen Gunawan

ML engineer. Singapore.

“the gunplay is tight but the story drags in the back half”
BioShock Infinite31.4%
Spec Ops: The Line17.2%
Call of Juarez Gunslinger8.8%
Try your ownReal output from the shipped 68MB model
1232 possible classes; probabilities shown for the top 3.

1,232 possible titles. No server.

About

I build machine-learning systems people can use, not just notebook experiments. The work often begins with a messy sensor stream, past papers or four million game reviews, then becomes something measured and shipped.

Cliffton Owen Gunawan, portrait

I am a third-year Computer Science and Design undergraduate at the Singapore University of Technology and Design, on exchange at the University of Waterloo for the autumn term. I previously spent four months at Bosch building time-series models for virtual sensing. I will join Infineon in December 2026 as a data science and automation intern.

The projects below are live or reproducible. The models on this site run in your browser, so you can try them without relying on a server or taking my word for it.

Work

Infineon Technologiesincoming

Dec 2026 – Apr 2027

Data Scientist and Automation Intern · Singapore

  • Will join the Digitalization team in Advanced Analytics and AI to work on Python and SQL automation pipelines, machine-learning models over manufacturing data, and analytics dashboards.

Bosch Group (Southeast Asia)

Sep 2025 – Dec 2025

Machine Learning R&D Intern · Singapore

  • Trained PatchTST and PatchTSMixer time-series Transformers to predict food weight from fused oven sensor streams, reaching R² = 0.982 and MAE = 40.44 g across 125 cakes.
  • Ran the sensor-data exploration, per-cycle feature engineering and PCA, then used deliberately simple ElasticNet and Ridge baselines to show that a linear model could not fit the problem, which is what justified moving to deep learning.
  • Built the data pipeline over 441 raw sensor-log files, handling alignment, quality-control filters and weighted quality scoring, for the meat-weight extension of the project.
  • Presented virtual-sensing feasibility to cross-functional stakeholders, translating sensor dynamics into features the product teams could act on.

Projects

markpoint

Aug 2026 – present

Solo

Finds every past paper an exam question has appeared in, cites each appearance exactly, then marks a written answer one mark point at a time and explains why a correct-sounding answer still scored zero.

markpoint's landing page, showing a single exam question plotted across nine past-paper appearances between 2010 and 2025

30,176mark points parsed from 315 papers

  • FastAPI
  • PostgreSQL 17
  • pgvector
  • React 19
  • Docker

DAS D.I.A.L

May 2026 – Aug 2026

Industry project

A learning platform for the Dyslexia Association of Singapore that clusters learner assessment data into readable cohort profiles and generates differentiated literacy activities through a curriculum-grounded retrieval pipeline that refuses rather than invents.

The DAS D.I.A.L therapist dashboard: 5,783 learners enrolled, three missing profiles, two activities pending review, a calendar and a task list

Team of 8149 commits, ~16,700 lines

Sign in with the demo account shown on the login screen; public sign-up is closed.

  • FastAPI
  • pgvector
  • Azure Container Apps
  • GitHub Actions

GenAI Content Detection

May 2026 – Aug 2026

Team of 5

Detecting machine-generated text when the test set is drawn from entirely different source corpora than the training set, which turned a model-selection exercise into a domain-shift one.

0.801Macro F1, up from 0.657; beats the shared task's fine-tuned RoBERTa at 0.7342

  • LightGBM
  • scikit-learn
  • NumPy

Game Review NLP

Sep 2025 – Dec 2025

Solo

Two DistilBERT models over 4.2 million game reviews: one reads sentiment, the other names which of 1,232 games a review is about from the text alone.

60.7%top-1 across 1,232 titles, against a ~0.08% random baseline. Sentiment: 94.9% accuracy, 0.949 F1

  • PyTorch
  • HuggingFace
  • DistilBERT

Multiple LLM Agents

Jan 2026 – Aug 2026

UROP, self-initiated

An educational-content pipeline that turns notes into flashcards, a video and a PDF, implemented three separate ways behind one interface so the concurrency models could be compared directly.

The multi-agent content lab front end

3 runtimesThreadPoolExecutor, asyncio and Vertex AI ADK, over 253 Python and 45 front-end tests

Front end is deployed; backend hosting is still in progress, so generation does not run live yet.

  • FastAPI
  • SSE
  • MCP
  • React
  • Vercel
  • Fly.io

Breast Cancer Image Classifier

Sep 2025 – Dec 2025

Solo

ResNet50 transfer learning over mammogram and ultrasound images, retrained on a lesion-grouped split after an audit found leakage in the original evaluation.

97.09%leakage-free test accuracy on 962 images from 74 held-out lesions, against an 83.78% majority baseline; ROC-AUC 0.993

  • PyTorch
  • ResNet50
  • DICOM

Crop Yield Prediction

May 2025 – Aug 2025

Solo

Predicting Indian crop yield from climate and agricultural-input data, where per-crop specialised models beat a single general one by a wide margin.

0.967adjusted R² over 42,306 records, measured on a fresh retrain against a held-out 20% split

  • scikit-learn
  • NumPy
  • Streamlit

Shark Habitat Prediction

Nov 2025 – Dec 2025

Solo

A discrete-time Markov chain over ARGOS satellite telemetry, validated on each shark's final observations against persistence, uniform and empirical-marginal baselines.

Illustrative long-horizon Markov-chain heatmap off southern Africa

t=10: +7.6 pptop-5 hit rate over persistence (77.8% vs 70.2%) on a per-shark temporal holdout; tied at the one-day horizon

  • NumPy
  • Markov chains
  • Matplotlib

Hate Speech Classification

May 2026 – Aug 2026

Team, 50.007 Machine Learning

Catching an evaluation artefact before it became the headline number: a prior group's F1 = 0.9973 did not survive an honest, sealed holdout.

0.653sealed holdout F1, positive class; the trustworthy number after 0.9973 was found to be an artefact

  • scikit-learn
  • TF-IDF
  • LightGBM

P2P Book Exchange

Jun 2026

Solo

A proof-of-concept marketplace for giving unread physical books a second life: list a book, browse others, request an exchange, and rate the other side once it completes.

  • Laravel
  • Blade
  • Alpine.js
  • Tailwind
  • SQLite
  • OpenAI API

Twistronics: Chiral Photonic Design

Jun 2026 – present

UROP, self-initiated

Generating a dataset of twisted bilayer photonic crystals via RCWA simulation, as the training data for a future surrogate model of circular dichroism spectra.

Work in progress. Stage 1 (data generation) is done; the forward surrogate and inverse design stages haven't started.

  • Python
  • RCWA
  • NumPy

Education

Singapore University of Technology and Design

Sep 2024 – May 2028

BEng Computer Science and Design

GPA 4.99/5.0. SUTD ASEAN Scholarship. Honours List AY 2024/2025.

University of Waterloo

Sep 2026 – Dec 2026

Exchange semester, Computer Science (Faculty of Mathematics)

Canada-ASEAN SEED-2 Scholarship recipient (Government of Canada).

Skills

ML / AI
PyTorch, TensorFlow, HuggingFace, scikit-learn, LightGBM, time-series Transformers (PatchTST/PatchTSMixer), CNNs, DistilBERT fine-tuning, PCA, cross-validation, feature engineering, model quantisation (INT8/FP8/AWQ)
LLM systems
LangChain, LlamaIndex, Model Context Protocol, Vertex AI ADK, Gemini / Claude / OpenAI APIs, RAG, pgvector
Programming languages
Python, TypeScript, Java, C++, C, SQL, R, Kotlin, PHP
Web, backend and data
FastAPI, React, Next.js, Node.js, Express, Laravel, PostgreSQL, MySQL, MongoDB, Supabase, Streamlit
Deployment and CI/CD
Docker, GitHub Actions, Azure Container Apps, Cloudflare Pages & Tunnel, Vercel, Fly.io, Caddy, GitHub Container Registry, OIDC federated auth
Certifications
Deep Learning Specialization, DeepLearning.AI (2025); Full-Stack Web Development, Timedoor Academy (2024)

Available for an internship, May 2027 – Sep 2027.

Contact

The fastest way to reach me is owencliffton@gmail.com. I am also on LinkedIn and GitHub.