Alexander Hsu · Ph.D.

I lead the work that turns business questions into production ML — and into decisions people act on.

Quick check — keeps the PDF away from scrapers
LinkedIn
Portrait of Alexander Hsu
3-stage validationdata · model · decision quality — what keeps production ML trustworthy
4-step AI systemanalyze · discuss · reconcile · verify — agents with a person in the loop
160TBof video and neural data, pipeline built and processed end to end
100+ labsuse open-source ML tools I authored
Production ML · Recommendation & ranking

From multiple product models to one production decision system

Predict what a client may need next, prioritize what matters, deploy the models, and continuously test whether the system remains trustworthy.

Built and productionized likelihood models across 30+ commercial-banking products, accounting for selection bias in historical offer data and automating recurring evaluation. Led the ranking layer that converts independent model outputs into prioritized recommendations by combining predictive likelihood with economic and customer-context signals — from algorithm design and stakeholder alignment through Model Risk Management and production release. The system now refreshes thousands of recommendations a month, with multiple-fold lift over baseline targeting, and replaced workflows that took one to two days of manual work per cycle.

Designed monitoring around three distinct failure points: data validity between refreshes with Anomalo, model validity through recurring AUC evaluation, and output usefulness through lift against downstream outcomes. Data quality, model quality and decision usefulness are three different questions, so they get three different checks. In 2026, led the signal discovery — customer patterns, peer behavior, emerging needs — that extends the framework into new product areas.

Python · LightGBM · scikit-learn · Polars · Snowflake · AWS SageMaker · Evidently AI · Anomalo
1 · datarecurring features+ past outcomes2 · modelsper product area3 · decision+model + context→ ranking layer→ ranked actions4 · workflowbanker+ the why5 · monitor — three failure points, three checksdata quality!last refreshthis refreshmodel qualityAUC over time · driftdecision usefulnesslift vs baseline, on outcomesdata quality ≠ model quality ≠ decision usefulness
1Data — recurring features and historical outcomesrefreshed on a schedule; selection bias in past offers handled explicitly
Applied AI · Multi-agent systems · 2026

Enterprise AI agents designed to reason, collaborate, and verify

Specialist agents analyze the data, humans participate in the discussion, an orchestrator reconciles the findings, and a final layer checks conclusions against evidence.

Led development of a four-layer multi-agent architecture for working with enterprise information. Specialist agents independently summarize data, surface key findings, and raise questions. Their outputs enter a discussion layer where agents exchange evidence and incorporate human-in-the-loop feedback.

An orchestrator then consolidates and reconciles competing or overlapping findings into a coherent result. A separate verification layer checks conclusions back against source data where possible and applies structured evaluation where direct verification is harder.

The architecture powers customer and colleague synthesis, recommended actions, grounded content generation, and self-service prospecting — letting sales colleagues work iteratively with enterprise information without SQL or programming expertise. It is being scaled across the commercial bank to hundreds of bankers, cutting customer research from hours to minutes, and is one of eight concurrent AI, ML and analytics workstreams I lead with a team of four senior data scientists. Built as a React front end on a FastAPI service, deployed through Shakudo, with models served from Amazon Bedrock.

Python · FastAPI · React · Amazon Bedrock · Shakudo · Snowflake
1 · specialistssummarize · find · questionsummarizekey findingsquestionsobservations2 · discussionagents ↔ agents ↔ humanhumancontext · challenge?!3 · orchestratorconsolidate · reconcileone coherent view4 · verificationcheck against evidencedirect checkevaluatedunsupportedsource datadirect or structuredthe model may reason · the system verifies before it trusts
1Specialists — summarize · find · questioneach agent takes one slice of the problem; no single model is handed everything
ML applications · Decision systems

From messy enterprise data to decisions people can act on

Resolve imperfect data, apply analytical logic, and put the result into interactive tools instead of static analysis.

Built applications that turn inconsistent enterprise data into structured decision support using entity resolution, fuzzy matching, analytical calculations, and dynamic user inputs. The same pattern has been applied to prospecting, customer segmentation, and sales prioritization: resolve the underlying data first, then calculate context-specific signals and expose them through an interface where users can explore and act on them.

Developed forward-looking segmentation that combines current relationships, potential opportunity, and strategic priorities; took analytical products from prototype through scheduled production delivery and monitoring in Power BI and Tableau; and built planning applications that connect company strategy with colleague outreach to support executive customer engagement. Together they support decisions across thousands of commercial relationships and prospects. The current direction is to retire static dashboards in favor of these dynamic, agent-backed decision systems.

Python · FastAPI · React · Snowflake · Power BI · Tableau · Shakudo · Fuzzy matching
resolveCORP INCCorp.*CO 4471co.Inc.one entity ✓messy dataentity resolution ·fuzzy matchingcalculatestrategyvalueopportunitysignals · logicsegmentation andcontext-specific rulesinteractassumptionsegmentABresultbeforeafterdynamic inputschange an input andthe answer changesactprospect listoutreach planvisit schedulein the toolprospect · planoutreach, visits —decided in the toolresolve → calculate → interact → act
1Resolve — messy enterprise dataentity resolution and fuzzy matching turn inconsistent records into one structured signal
Open-source ML · Nature Communications 2021

B-SOiD — behavior discovery without a single human label

Labs with no programmers can classify animal behavior from pose data in minutes.

Pose time-series are embedded with UMAP, clustered with HDBSCAN, and a random-forest classifier is trained on the discovered groups so new video is labeled in milliseconds per frame. Shipped as a desktop app that reads DeepLabCut, SLEAP, and OpenPose files.

100+ labs · 250+ users216★ on GitHub; the basis for A-SOiD and LUPE
Python · UMAP · HDBSCAN · scikit-learn · StreamlitGitHub
frame 014328 kptsnoseearearspinetailpose estimate, per framedistanceanglespeedfeatures over timefeatures → 3 dimsgroomrearwalksniffclusters = behaviorsnew video, labeled frame by frame0 s60 sgroomrearwalksniff
1Track the animal: a pose estimate on every video frame8 keypoints, (x, y) per frame
Active learning · Nature Methods 2024

A-SOiD — let the model ask the expert only when it's unsure

Supervised behavior classifiers are data-hungry — thousands of hand-labeled frames per behavior. This is a way for the human and the model to do the labeling together.

Starts from a handful of labels, trains, and asks the expert only about the frames it isn't confident in; each answer goes back in and the model retrains. An unsupervised “discover” step then splits over-broad classes into behaviors nobody labeled. Co-first author; delivered as a no-code GUI with refinement, prediction, and ethogram tabs.

12%of the training data needed to beat all 49 AIcrowd challenge entries
Python · Active learning · scikit-learn · StreamlitGitHub
a few labelsmodelconfident → keepunsure → ask???expertlabels go back in → retrainhuman labels neededA-SOiD · 12%by hand · 100%
1Start with a handful of labeled framesout of thousands
Large-scale data · Brain signals

Reading behavior from brain chatter alone

160 TB of synchronized video and brain recordings turned into predictions of what the animal is doing — from the neural signal, with no camera.

Built the recording arena (24/7, four cameras, synthetic daylight), the Arduino-triggered sync between video and Neuropixels with under 33 ms of jitter, and the cloud pipeline that processed the data; then trained decoders that predicted 100,000s of behaviors across three animals and 150+ hours.

160 TBprocessed · 100,000s of behaviors decoded
PyTorch · Cloud compute · Neuropixels · Arduino
cortexL2/3cortexL5/6dorsalstriatumventralstriatum384-site probe4 cameras · 24/7 · <33 ms syncbrain chatterdecoded from chatterseen on video
1Record: 4 cameras around the clock, a 384-site probe in the brainvideo and brain signals synced to under 33 ms
Full-stack iOS app · On the App Store

Vowel for Weddings — answers your guests' questions so you don't have to

Hosts stop fielding the same fifty questions; guests get answers, photos of themselves, and a reason to talk to each other.

A native Swift app on a Supabase backend. A wedding assistant answers guests from what the host entered (schedule, venue, dress code, menu) and hands off to the host when it doesn't know; face matching lets guests find themselves in the gallery from a few selfies; nearby-guest discovery, icebreaker profiles, and pinned host announcements round it out. Designed, built, and shipped solo — and first used at my own wedding, by 30+ guests.

Swift · Supabase · Fly.ioApp Store
ScheduleVenue & arrivalDress code · Menuhost enters onceAsk the hostonly when it doesn't knowVowelFind my photosNearby guestsAnnouncementfor guests
1The host enters the details onceschedule, venue, dress code, menu