I currently work on machine learning research and engineering at Google. Previously, I worked on similar topics at Microsoft Research AI. Before that, I was a software developer at Wolfram Research, working on large scale natural language processing and data mining of technical literature, primarily in math, using a variety of techniques in supervised and unsupervised learning, and creating scalable data processing and retrieval pipelines with e.g. Java, Python, and SQL.

My interests primarily lie in two areas: 1) develop efficient algorithms to understand and process high-dimensional, large-scale data, and 2) build deep models to learn language and universal language-vision representations.

Towards 1) I have developed algorithms for fast optimal transport, graph representation learning, efficient outlier detection in high dimensions, and methods for neural locality sensitive hashing. Towards 2) I have built various large-scale network architectures in NLP and text-image retrieval on web-scale data. In general I enjoy applying mathematical principles to improve model building. Please refer to my papers for more details. At the moment I'm working on building universal vision-language representation models to improve core relevance algorithms for Bing.

I studied math at Princeton (undergraduate) and the University of Wisconsin - Madison (graduate).

I am also broadly interested in a wide range of current research developments in machine learning. I enjoy figuring out and implementing new algorithms.