★graduating Dec 2026

PhD Candidate in Computer Science, UT Arlington

Research on brain imaging analysis with deep learning, and on multimodal AI systems.
Hands-on with PyTorch training pipelines, LLM fine-tuning, LangGraph orchestration, GraphRAG retrieval and multimodal evaluation.
Recent work centers on speech: preference alignment for TTS, inference benchmarking, ASR pipelines.
Papers with figures and summaries are on publications; citations on Google Scholar.

Python

Local Speaker Lab

Local speech experiments with reproducible inputs and scoring. One workflow transcribes mixed Chinese–English clips with no, a correct or an unrelated glossary; on 200 frozen ASCEND clips (600 CPU runs) the correct glossary did not recover missed terms, and the small drop in error rate was within noise. The other separates two overlapping speakers, matches them, transcribes with Qwen and writes meeting notes with Ollama.

Python

vLLM vs TensorRT-LLM on a TTS model's LLM backbone

Reproducible H100 benchmark of eager PyTorch, vLLM 0.17.1 and TensorRT-LLM on the autoregressive backbone of a multi-stage TTS model. vLLM reaches about 453 tok/s against 213 for TensorRT-LLM and 21 for eager, but the LLM is only about 21% of end-to-end latency; the flow-matching stage takes about 68%, which these engines do not cover.

Python

Anota

A keyboard-first, self-hosted workbench for translation quality assessment and speech transcription review. Blind golden sets, append-only audit trails, an LLM judge that must be calibrated before use, and content-hashed exports are part of the data model.

Python

kokoro-aws-demo

Open-weight TTS and ASR run as a production-style AWS service: Kokoro-82M text-to-speech on ECS Fargate (Graviton), a CPU Whisper transcription endpoint, infrastructure in AWS CDK, keyless OIDC CI/CD, and a GPU LoRA fine-tuning track.

Python

When Likelihood Disagrees with Quality

A diagnosis of Direct Preference Optimization on a continuous-latent flow-matching TTS model. The automatic-metric reward consistently prefers the candidate the model finds less likely, so standard DPO pushes the model the wrong way and quality degrades. Shown with a held-out benchmark, a training-free mechanistic probe and a cross-architecture replication, followed by the alignment routes that do work.

JavaScript

AI Medical Interpreter

Real-time Chinese–English interpretation for medical phone calls, built on Twilio Media Streams and the OpenAI Realtime API, with a live web dashboard and auto-generated SOAP notes. First-token latency is about 400–800 ms end to end.

TypeScript

Qiorazen

A wellness web app built around a 27-question Traditional Chinese Medicine constitution screening, scored with the GB/T 46939-2025 standard. Users ask follow-up questions; AI drafts diet, exercise and lifestyle guidance, and a Wellness Advisor reviews every answer before it is shown. Emergency symptoms block the form and point to 911 / 988.

Live at qiorazen.com.

Python

DensityMap-GyralNet

Extracts the gyral net — the network of gyral crests whose three-way junctions are 3-hinge gyri — from cortical surfaces. Reads VTK surface meshes with sulcal depth, isolates gyral regions, skeletonizes them with shortest paths and repairs missing crest links; run on HCP 32k surfaces.

Python★ 1

De-identification with open LLMs

Can open, locally run LLMs remove protected health information from clinical notes? Compares LLaMA 2 7B, Falcon-7B and Flan-T5 under explicit and implicit prompts, plus fine-tuned variants, and scores how much PHI each leaves behind.

Jupyter

Public Space Tracking

Course 640 final project: detects people in street video with TensorFlow Object Detection and Detectron2, tracks box centroids across frames to count entries and exits, and draws an occupancy heatmap.

Jupyter

Heart Disease Prediction

Course 603 term project: predicts heart disease from the four UCI cohorts (Cleveland, Hungary, Switzerland, VA) after one-hot preprocessing. SVM and random forest reach ROC AUC 0.97 on a held-out split, ahead of logistic regression (0.96), decision tree (0.95) and k-NN (0.89).

Jupyter★ 2

Policy Changes Prediction

DATA605 (big data systems) project: finds the days national COVID-19 policy levels change in the OxCGRT tracker and lines them up with CDC case counts. Policy changes trailed case waves by about a month.

JavaScript★ 47

Movie Recommendation System

Django movie site with user- and item-based collaborative filtering (Pearson and cosine similarity) over ratings crawled from Douban, plus search, rating, favourites, an admin back end and review word clouds.