PhD from Ohio State's Computer Vision Lab, advised by Jim Davis. I work on when a system should answer, weigh evidence, revise, or stay quiet — writing the training code in PyTorch, the evaluation harnesses around it, and the distributed runs on Slurm that produce the numbers below.
Every model ships with a confidence signal, and every one of them answers a slightly different question than the one the next decision depends on. Three studies, three places that gap bites.
Where it ran
4 vision, 3 text and 8 synthetic datasets; 25,870 held-out questions
Peer review
ISVC · MVA · WMT · ICCVW
Code
Public for the reject-option and calibration work
01Abstain
Should it answer at all?
Abstention without a budget
A classifier names a class for every input, including the ones it is plainly confused by. The standard fix — threshold the softmax — needs a rejection cost or coverage target that real deployments rarely have. On binary problems it rejects nothing at all, since one of two softmax scores is always at least 0.5.
B-CDF learns per-class abstention thresholds from a validation set, post-hoc, with no retraining. The constraint is inverted: rather than targeting accuracy on what the model keeps, it requires the rejected set to look like a coin flip — so a model cannot inflate its score by quietly discarding answers it had right.
88.3% → 97.8%
CIFAR-100 selective accuracy, at 77.3% coverage
The same result read as errors, after abstaining on 22.7% of inputs.
Answering everything
11.7
Answering only what it keeps
2.2
0mistakes per 100 predictions15
ImageNet moves 88.4% → 97.4% at 79.7% coverage. Verified across four vision benchmarks, three text benchmarks and eight synthetic datasets, from 2 to 1,000 classes.
Springer Best Paper Award, ISVC 2022 · extended in Machine Vision and Applications, 2025
Read the paper
02Weigh evidence
Is it really using the evidence?
Measuring whether the image mattered
Multimodal translation systems get an image to resolve an ambiguous sentence — “that's lots of bucks” is about deer or about dollars. But a model that always guesses “dollars” still scores about 50%, so the benchmarks could not separate genuine evidence use from a lucky prior. The field largely concluded that images do not help.
ImageCoMMuTE holds the translation fixed and swaps the image, then asks whether the correct image lowers the model's perplexity for the correct translation. That is an intervention on the evidence channel rather than an inference from aggregate scores. Group variants give credit only when a model resolves both readings of the same ambiguity.
81% vs. 63%
how often VGAMT reads the image correctly, vs. how often that changes its translation
VGAMT, English→French. Give it a perfect image and the gap widens: 92% vs. 34%.
Reads the image correctly
81%
…and changes the translation
63%
0% of ambiguous sentences100
Hand the model a perfect image and evidence use climbs to 92%, while translation accuracy barely moves — 26% → 34%. The images were working; the text prior was overriding them. A fusion problem, not an image problem, and aggregate BLEU hides it entirely.
RAG systems revise their own draft answers and average accuracy goes up, so refinement looks free. The average hides the trade: the same retrieval step that repairs one answer silently overwrites another that was already correct.
Score both branches for every question and label each outcome preserved, repaired, harmed, or unrecovered — the value of refining is then exactly repair minus harm. A two-head policy routes each question to answer, refine, or abstain.
repairs 10.8%, harms 8.1%
across 25,870 held-out questions on NQ-Open, TriviaQA and PopQA
Confidence cannot predict which you get, so the policy reads the retrieved passages instead — holding the accuracy of always-refine while cutting wrong answers from 47.5% to 10.6%.
Five summers of AFRL-sponsored research, five years in the Computer Vision Lab.
Technical Analyst II — DCS Corp
AFRL-sponsored · Dayton, OH / May 2025 — Present
Built the paired-outcome evaluation behind a 25,870-question study of retrieval-augmented QA across NQ-Open, TriviaQA and PopQA, measuring when evidence-based refinement repairs a draft answer and when it destroys a correct one.
Trained LoRA answer/refine/abstain controllers on 8× NVIDIA H200 GPUs (~400 GPU-hours for a clean reproduction), beating the strongest confidence baseline and closing two thirds of the gap to an oracle policy.
Graduate Research Associate — Computer Vision Lab
Ohio State University · Columbus, OH / Aug 2021 — Present
Build selective-prediction systems for vision, multimodal, and language tasks, advised by Prof. Jim Davis.
Developed per-class reject-option classification that lifts CIFAR-100 selective accuracy from 88.3% to 97.8% at 77.3% coverage, validated on 4 vision, 3 text and 8 synthetic datasets (Springer Best Paper Award at ISVC 2022; MVA 2025 journal extension).
Graduate Research Intern — AFRL
Dayton, OH / Summers 2022–2024
Summer 2024: Adapted and trained JEPA and MAE transformers in a distributed Slurm/Singularity setup for multimodal EO/SAR representation learning in low-data regimes.
Summer 2023: Developed Reject Option Beam Search for machine translation at large beam widths.
Reported LLM reject-option training and evaluation results for DCS Corp / AFRL.
Joined DCS Corp (AFRL) as Technical Analyst II working on LLM reject-option training and evaluation.
Work with me
Research Scientist, Applied Scientist, and ML Engineer roles.
Best fit: teams working on LLM evaluation, calibration, retrieval-augmented
systems, or reliability infrastructure. I design the experiments, write the
training and evaluation code, and run them at cluster scale.