Leif Johnson

I am a Computer Science doctoral student at The University of Texas at Austin, working in Prof. Dana Ballard's Embodied Cognition Lab. I am interested in computational models of cognitive tasks such as language learning, motor learning, and attention allocation. My thesis focuses on the use of efficient codes for representing dynamic, feedback processes like movements and speech.


Email: leif@cs.utexas.edu
Desk: GDC 3.518B


Journal Papers

  • (2015) M Tong, S Zhang, L Johnson, DH Ballard, MM Hayhoe. "Modeling Task Control of Gaze." Journal of Vision 09/2015; 15(12):784. DOI:10.1167/15.12.784
  • Paper (2014) L Johnson, B Sullivan, MM Hayhoe, DH Ballard. "Predicting human visuomotor behaviour in a driving task." Phil. Trans. R. Soc. B 2014, 369.
  • Paper (2012) B Sullivan, L Johnson, C Rothkopf, MM Hayhoe, DH Ballard. "The effect of uncertainty and reward on fixation behavior in a driving task." Journal of Vision 12 (9). DOI 10.1167/12.13.19.

Conference Papers

  • (2015) I Karpov, L Johnson, R Miikkulainen. "Evaluating team behaviors constructed with human-guided machine learning." In Proc. IEEE Conference on Computational Intelligence in Games (CIG).
  • Paper Poster (2014) L Johnson, DH Ballard. "Efficient codes for inverse dynamics during walking." In Proc. Assoc. Advancement of Artificial Intelligence (AAAI).
  • Paper Poster (2014) L Johnson, DH Ballard. "Classifying movements using efficient kinematic codes." In Proc. Annual Meeting of the Cognitive Science Society.
  • Paper (2013) L Johnson, J Cooper, DH Ballard. "Unified loss functions for multi-modal pose regression." In Proc. IEEE International Joint Conference on Neural Networks.
  • Paper (2013) L Johnson, B Sullivan, DH Ballard, MM Hayhoe. "A soft barrier model for human behavior in a two-task driving environment." In Proc. Annual Meeting of the Cognitive Science Society.
  • Paper (2012) P Jyothi, L Johnson, C Chelba, B Strope. "Distributed discriminative language models for Google voice-search." In Proc. IEEE International Conference on Acoustics, Speech and Signal Processing.
  • Paper (2012) P Jyothi, L Johnson, C Chelba, B Strope. "Large-scale discriminative language model reranking for voice-search." In Proc. North American Association for Computational Linguistics - Human Language Technologies.
  • Abstract (2003) E Teiniker, S Mitterdorfer, L Johnson, C Kreiner, Z Kovacs, R Weiss. "A Test-Driven Component Development Framework based on the CORBA Component Model." In Proc. 27th Annual International Computer Software and Applications Conference.


  • Poster (2015) L Johnson, DH Ballard. "Modular Motor Control in Full-Body, Goal-Directed Movements." 2015 Meeting of the Society for the Neural Control of Movement (NCM).
  • Poster (2014) L Johnson, DH Ballard. "Analysis of Human Movement During a Virtual Tracing Task." 2014 Natural Environments, Tasks, and Intelligence (NETI) Meeting.


  • Slides Video (2013) L Johnson. "Python tools for coding and feature learning." Talk given at SciPy 2013.
  • Paper (2012) R Miikkulainen, E Feasley, L Johnson, I Karpov, P Rajagopalan, A Rawal, W Tansey. "Multiagent Learning through Neuroevolution." In J. Liu et al., eds., Advances in Computational Intelligence, LNCS 7311, 24-46, Berlin, Heidelberg: Springer.
  • Paper (2011) B Sullivan, L Johnson, DH Ballard, MM Hayhoe. "A modular reinforcement learning model for human visuomotor behavior in a driving task." In Proc. Active Vision Symposium, Artificial Intelligence and the Study of Behavior.
  • Paper (2002) L Johnson, P Wurman, "Information and Product Quality Dynamics in Tiered Supply Networks," In Proc. AAAI Workshop on Multi-Agent Modeling and Simulation of Economic Systems.


Most of my code these days is written in Python, with a lot of help from numpy and scipy. Recently I've also been using Theano for defining and optimizing cost functions.

A small set of utilities—at this point consisting of a file reader and writer, and a simple OpenGL visualization tool—for dealing with motion capture data files in the C3D binary format.
A Python library and command-line tool for non-projective dependency parsing of natural language text.
A command-line tool for creating quick plots from data in text files.
A collection of several vector quantizers, including self-organizing (Kohonen) map, neural gas, and growing neural gas.
A naïve Python implementation of a generic particle filter.
Several types of Restricted Boltzmann Machines.
Combines the ODE physics simulator with some OpenGL tools for visualization.
A collection of code for representing and manipulating sound data.
A Python wrapper for the Gnuspeech Tube Resonance Model, a vocal synthesizer.
Neural network implementations in Python, using Theano for transparent GPU computations.


North Carolina State University

August 1997 – May 2002 Raleigh, NC

  • BS with honors, Computer Science
  • BA with honors, Multidisciplinary Studies
  • BS, Applied Mathematics
  • Phi Kappa Phi, Phi Beta Kappa, Benjamin Franklin Scholar

North Carolina School of Science and Mathematics

August 1995 – August 1997 Durham, NC



Research Intern May 2010 – August 2010 Mountain View, CA

Research Intern May 2009 – August 2009 Mountain View, CA


Software Engineer March 2008 – August 2008 San Francisco, CA


Software Engineer November 2004 – March 2008 Mountain View, CA

Salomon Automation

Research Intern August 2002 – May 2003 Graz, Austria


For a year I headed up the Natural Language Learning Reading Group. In 2013 I started (along with fellow students Craig and Wes) the Feature Learning and Representation Encoding reading group for discussing papers in deep models and feature learning.