Shi YanZhe
The Earth's horizon at sunset, photographed from the Space Shuttle

Computer Engineering at NTU Singapore

Shi YanZhe

I find where good models break.

  1. (1) About
  2. (2) Research
  3. (3) Projects
  4. (4) Timeline
  5. (5) Academics
  6. (6) Contact

Year 3 Computer Engineering at NTU Singapore with a Minor in Mathematics. Machine learning and low level systems, and most interested in how models fail.

Now Business Analyst Intern at IRAS

Read the research

Ctrl K to search, T to switch theme

(1) About

I like finding out why models fail

Most of my work is stress testing machine learning models. A model that scores 100% and drops to chance under a bit of noise teaches me more than one that scores 99%.

Languages

Machine learning

Data and tooling

The tools I use. Hover a star to see where I used it.

(2) Research

Diagnosing what a model cannot do

URECA research with Asst Prof Zhang Mengmi, NTU CCDS. A near perfect working memory model, stressed until it broke.

The Mark I Perceptron, an early machine that learned to recognise letters

Memory

One trial, illustrated: remember a frame, sit through a delay filled with the patterns from Stage 1, then judge the probe. The model itself saw 32 by 32 arrays. Mark I Perceptron. US Navy, National Archives

Stage 1 · one trial, then five kinds of delay

memory
delay random static
probe

same? Changed 97%

chance Clean grey 1.000 Random static 0.503 Checkerboard 0.508 Horizontal grating 0.501 Vertical grating 0.526

Hover a row to see its delay.

Stage 2 · move the objects, or move the background

93.6% Objects recoloured answers Changed 44%
50.3% Background recoloured answers Changed 100%

A few pixels moved: fine. Most of the image moved: chance.

Stage 3 · turn the contrast up slowly

0.0 0.5 1.0 chance contrast 0.00: accuracy 1.000 contrast 0.10: accuracy 1.000 contrast 0.25: accuracy 0.693 contrast 0.50: accuracy 0.505 contrast 0.75: accuracy 0.516 contrast 1.00: accuracy 0.503 0.00 0.10 0.25 0.50 0.75 1.00 distractor contrast

contrast 0.25 accuracy 0.693 answers Changed 62% of the time

(1)

Noise in the delay

1.000 → 0.50

The frames the model must remember across are filled with static, checks or gratings. The arrays are untouched. Accuracy falls to chance every time.

(2)

Objects against background

93.6% vs 50.3%

Recolour the bars the task is about and the model copes. Recolour only the background and it answers Changed almost always.

(3)

A dose response

holds to 0.10, gone by 0.50

Sweep the distractor contrast. The failure is graded: it is saliency, not the mere presence of a pattern, that breaks the memory.

100%

Clean baseline accuracy

50.3%

Under retention interference

93.6%

Object vs background recolour

445

Trials per condition

(3)Projects

Things I have built

Each card is the actual system, drawn. Hover any part of a diagram for a note.

Hubble's primary mirror being ground at Perkin-Elmer, with the hole at its centre
Hubble's primary mirror being ground, 1979. NASA

TikTok TechJam 2026, Track 5 Aug 2026 to Sep 2026

Robust AI vs Real Image Detection

A frozen CLIP model and eight tiny probes that tell AI images from real ones, even after the internet has mangled them.

98.6%

Clean accuracy

0.996

AUROC

98.14%

Mean over 14 transforms

15.2%

Of the 2B parameter budget

Buzz Aldrin on the Moon, Apollo 11, used here as a test photograph

Original

The training augmentations I built, applied one by one. Apollo 11, AS11-40-5903, NASA

How it works

The detector as a machine An image passes through a frozen CLIP ViT-L/14 feature extractor. During training, gears for JPEG, blur and noise augmentation feed transformed copies in. The 768 dimensional feature feeds eight logistic regression probes, whose probabilities are averaged and read against a threshold frozen at 0.5. an image augmentation training only JPEGblurnoise ×3 copies CLIP ViT-L/14 patches layers frozen, 768-d features 8 probes all generators plus extra data one generator each Σ mean P(AI) real AI 0.5, frozen real or AI

Mean accuracy under 14 real world degradations: 98.1%

PyTorchCLIP ViT-L/14Logistic regressionEnsemble methodsData augmentationSID_Set

PSA Code Sprint 2025 Oct 2025

JobFinder, a Qualification First Job Search Chatbot

A job search chatbot that asks what you can do before it answers.

100+

Job listings covered

5+

Job search intents handled

50+

Test queries evaluated

Telephone operators at a Bell System switchboard in the 1940s

All listings

An illustration of the flow: read every listing, filter by what you can do, keep the few that fit. Bell System switchboard, 1940s. US National Archives

How it works

JobFinder as a flow The first message is read as the user's qualifications and rewritten into a structured prompt. A Node and Express server routes it across five or more job search intents to a hosted LLM through OpenRouter, where the model can be switched, and returns personalised recommendations drawn from over one hundred listings. your qualifications, first role: skills: intent: filters: structured prompt Express Node server 5+ intents A B C OpenRouter, model A from 100+ listings
Node.jsExpressLLM APIsOpenRouterPrompt engineeringJavaScript

NTU SBS BioHackathon 2025 Aug 2025

Predicting Gene Stress Relationships in Plant Genomics

From 300k+ messy genomics records to a model that placed Top 5.

300k+

Records analysed

80%

Model accuracy

Top 5

Placing

Wheat, Triticum vulgare, a botanical plate from Koehler's Medizinal-Pflanzen

Raw records

An illustration of the pipeline: messy records, cleaned, turned into a heat map, then read for correlations. Triticum vulgare, Koehler's Medizinal-Pflanzen, 1890

How it works

The BioHackathon pipeline Over 300 thousand plant genomics records are cleaned with pandas and NumPy, studied with correlation heat maps and distribution plots, and fed to a PyTorch model that predicts gene stress relationships at 80 percent accuracy, placing in the top five. gene stress 300k+ records pandas, NumPy correlations, distributions PyTorch model 80% accuracy, Top 5
PythonPyTorchpandasNumPyMatplotlibStatistical analysis

(4) Timeline

The path so far

Study, research, projects, work and leadership on one chart.

Study

Research

Projects

Work

Leadership

Select a star

Every piece of work, on one chart.

Scroll to travel along it. Click or tap a star to read its note.

  1. Aug 2024 · Study

    BEng Computer Engineering, NTU Singapore

    Minor in Mathematics. Graduating 2028.

  2. Aug 2024 to Aug 2025 · Leadership

    Welfare Secretary, Binjai Hall Council (JCRC)

    Welfare events for 800+ residents on an annual $10k+ budget.

  3. Jul 2025 to Jun 2026 · Research

    Undergraduate Researcher, NTU URECA

    Diagnosed an artificial working memory model. Merit award.

  4. Aug 2025 · Projects

    BioHackathon, NTU SBS

    300k+ plant genomics records, PyTorch model at 80%. Top 5.

  5. Aug 2025 to Jun 2026 · Leadership

    Main Committee, NTU Innovation Lab

    Ran preparation for the SummerBuild hackathon on an $18k budget.

  6. Oct 2025 · Projects

    PSA Code Sprint, Port of Singapore Authority

    JobFinder, an LLM job search chatbot over 100+ listings.

  7. Jul 2026 to now · Work

    Business Analyst Intern, IRAS

    Test data for readiness testing of an Azure tax system. SQL automation of address records.

  8. Aug 2026 to Sep 2026 · Projects

    TikTok TechJam, Track 5

    AI vs real image detector. 98.6% clean, 0.996 AUROC.

  9. May 2028 · Study

    Graduation, NTU Singapore

    Expected May 2028.

(5) Academics

Degree and honours

Bachelor of Engineering, Computer Engineering

Nanyang Technological University, 2024 to 2028, Minor in Mathematics

  • Dean's List College of Computing and Data Science, NTU, AY 2025/26
  • Merit, URECA Undergraduate Research Programme Nanyang Technological University, 2025/26

(6) Contact

Write to me

Open to internships and collaborations in machine learning, quantitative research and systems.

Search sections, work and actions

Esc
↑↓ move ↵ open