# About Me

Hello! I'm an AI Resident at Google researching natural language understanding. I recently graduated from the University of Virginia, where I majored in Computer Science & Mathematics. At UVA I did research in the Machine Learning Lab with Dr. Yanjun Qi. To read more about my academic work, please have a look at my Google Scholar profile.

# Posts

What are adversarial examples in NLP?
(redirects to __towardsdatascience.com)__

This article talks about the concept of adversarial examples as applied to NLP (natural language processing). The terminology can be confusing at times, so we’ll begin with an overview of the language used to talk about adversarial examples and adversarial...

Does Model Size Matter? A Comparison of BERT and DistilBERT
(redirects to __wandb.ai)__

This tutorial will cover two models – BERT and DistilBERT – and explain how to conduct a hyperparameter search using Weights & Biases Sweeps. We’re going to aim to answer two questions: How does DistilBERT compare in performance to the...

Tracking HuggingFace Transformer Model-Training with Weights & Biases
(redirects to __wandb.ai)__

This tutorial explains how to train a model (specifically, an NLP classifier) using the Weights & Biases and HuggingFace transformers Python packages. HuggingFace🤗 transformers makes it easy to create and use NLP models. They also include pre-trained models and scripts...

The Square-Sum Problem

Pick some integer N. Given all of the integers from 1 to N, can you arrange all elements such that each adjacent pair sums to a square number? This is a fun problem to think about. Let’s begin with an...

The Paradox of Set Notation

(written at some point in 2015) When I took my first upper level math class, I learned about Sets. In principle, sets are simple. Sets are collections of things. Sets can be big or sets can be small. Sets can...

Sorting with Color

Different Color Spaces There is no correct way to sort a list of colors. Every color can be mapped to a vector in a three-dimensional space. In other words, each color is defined by three unique numbers. There are competing...

Mapping the D.C. Metro

Labels Pause How I Made This Map I was inspired by this map online to create a similar map of the Washington, D.C. metro system. The map of the subway system plots stations with uniform spacing, often placing them in...

The Best Time to Post on Instagram

I recently argued with a friend about the best time of day to post on Instagram to maximize the number of likes on a given picture. We agreed that people view Instagram most frequently in nighttime hours, from around 8...

Recreating the Star Wars Opening Crawl

With all the recent news about Rogue One, I wanted to pay a tribute to the Star Wars franchise. One interesting change I noticed in the new movie was a lack of scrolling introductory text before the beginning of the...

Traveling Salesman Art

Imagine you’re planning a road trip across the United States. You pick thirty different cities to visit during the trip and have no preference on order. A question arises: what is the shortest possible trip that visits each city once...

Largest World Cities Over Time

I recently created this interactive map of the largest city at any point in time in world history. I used DataMaps to make the plotting easy and obtained the data from Professor Ian Morris via this Wikipedia article. Some cities'...

Animation with K-D Trees

Many animations appear simple but actually require complex calculation on each frame. This week, I worked to simplify an animation algorithm using a data structure called the k-dimensional tree. To demonstrate k-d trees, I created an HTML canvas visualization of...

Expected Salaries of NBA Players

I’ve always wondered what it would look like if one were to calculate the money a professional athlete deserves based on their production. The other day, Reddit user /u/aeisenst posted a rant that mentioned how a player’s productivity can be...