I do research in machine learning and artificial intelligence, with frequent detours into the underlying fields of statistics, probability theory, and information theory. My Ph.D. supervisor is Csaba Szepesvári.

Research Interests

I am interested in symmetry, a powerful and uniform way to describe patterns and regularities that appear in the real world and therefore in machine learning. Finding and exploiting symmetries is one approach to solving problems that seem intractable but are simplified by uncovering their hidden structure. I am especially interested in learning representations of data that expose its symmetries.

I also work on online learning and sequential decision making, where an agent learns incrementally as it continuously interacts with the world. In particular, I focus on bandit problems and reinforcement learning, both involving agents that learn to maximize a reward which tells them how effective their actions are.

This course combines labs and lectures in a “studio” format with three-hour sessions twice a week. Designed to liberate you from being a consumer of magic technology to a creator of it, it includes object-oriented programming, the Python programming language, and more complex algorithms and data structures such as shortest paths in graphs; caching, memoization, and dynamic programming; client-server style computing; recursion; and limited distribution of computation tasks between the Arduino platform and the traditional desktop in order to explore design tradeoffs.