Graduate
Masters topic: I'm working on a new dynamical-system-based natural language model. The model can be scaled via the dimensionality of the system, and experiments so far suggest that at its maximum size it outperforms trigram models. Experiments currently running will determine how performance is affected by down-scaling.
Undergraduate
Summer 2008: I received NSERC (USRA) funding to do a project on word prediction with Graeme Hirst. Previous work by Mohammad and Hirst showed that Jiang and Conrath's WordNet-based measure of pairwise semantic relatedness among words is effective in a malapropism correction task. We wanted to determine if it could be combined with a statistical model to perform accurate word prediction. The results were not especially encouraging.
Spring 2008: For a 4th-year project course I developed an algorithm to perform automated code refactoring via graph grammar induction. The basic idea is to build a parse tree for a piece of code and then identify repeated structures by inferring a straight-line (i.e. with only one possible derivation) context-free graph grammar from the parse tree. The repeated structures are then encoded as non-terminals of the grammar and can be factored out of the code as macros. If the non-terminal instances have unique subtrees then those become arguments to the macro. This was successful with small scheme fragments but currently requires more work to be universally applicable.