Carter Blair | | CV



I am currently an MMath CS student at UWaterloo, supervised by Kate Larson and Edith Law. My research mainly focuses on the intersection between game theory, reinforcement learning, and human-AI interaction. Recently I have been working in the area of reward design and using language models to augment RL.



Towards Online PU-Learning

Janurary 2022 - Present
pdf | code

PU-learning is the task of learning a positive vs. negative (PvN) classifier from only positive and unlabeled data. In general, this task can be split up into two main parts: (1) Mixture proportion estimation (MPE), the task of estimating the proportion of positive examples in the unlabeled data, and (2) using this estimate to help train a PvN classifier. This project focused on mixture proportion estimation, and the goal was to build the first algorithm to do mixture proportion estimation in the online setting. In pursuit of this, I built TOM-ON, an algorithm for MPE that runs in constant time and accurately predicts the mixture proportion. And in addition to this, I developed another algorithm for the batch setting, TOM, that achieves state-of-the-art performance.

Context, Color and Emotion in Data Visualization

May 2021 - Present

The goal of this project is to understand the relationship between the emotions induced by a data visualization and the visual features of visualization itself. To uncover these relationships, we are using traditional hypothesis testing. Phase 1 of this study focused on the relationship between the color of a visualization and emotion, Phase 2 focused on the relationship between properties of the data (e.g. trend) and emotion, and Phase 3, which we are working on now, is focused on the relationship between data labelling and the induced emotion. This project is funded by an NSERC USRA grant.

Visualization of the Canadian Community Health Survey from 2015-2019

Janurary 2021 - March 2021

Statistics Canada releases the anonymized results from their Canadian Community Health Survey every year, but the data tends to sit lifelessly in tables. The goal of this project was to make this valuable resource more interpretable by visualizing it using D3.js.

Work Experience

Technical Skills

Languages: Python, R, C++, CUDA, SQL, Java, C, MATLAB, JavaScript, LaTeX
Developer Tools: Git, VS Code, Atom, Jupyter
Libraries: PyTorch, Scikit-Learn, SciPy, AutoKeras, NumPy, Pandas, NLTK, Matplotlib, seaborn, D3.js
Applications: Excel