Galen Andrew


About Me:

I am a Research Software Developer in the Text Mining, Search and Navigation group at Microsoft Research. My research interests include machine learning, natural language processing, recommender systems, scientific computing and information retrieval.

I completed my MS in Computer Science at Stanford University, where I was a research assistant for Chris Manning in the Stanford NLP Group, part of the Stanford AI Lab. Before that, I majored in Math at Reed College.

When I'm not doing research, I enjoy playing/listening to music, dancing, reading, and playing go. I also love studying foreign languages; I lived for a while in Russia (St. Petersburg and Moscow) and in China (Beijing).

An out-of-date but flattering photo.

Email:

My email address is my MS username (as per the url of this page) at microsoft.com.


Publications:

Tutorials/Notes

I prepared these notes on quasi-Newton optimization methods for an informal tutorial at MSR.

Software:

Source code for the OWL-QN L1 regularization optimization algorithm is available for download. You can define your own differentiable loss to optimize with L1 regularization, or use the standalone trainer for training L1-regularized least-squares or logistic regression models.

At Stanford, I wrote Tregex, a utility for matching patterns in syntax trees, similar to Tgrep-2. It contains essentially the same functionality as Tgrep-2, plus several extremely useful relations for natural language trees, for example "A is the lexical head of B". Due to lack of indexing, it is somewhat slower than Tgrep-2 when searching over large treebanks, but not prohibitively so. It is available publicly (under the GNU GPL) from the Stanford NLP-group website.