Postdocs / Research Programmer for Compositional Learning via Generalized Automatic Differentiation
The goal of this project is to make a qualitative improvement in our ability to write sophisticated numeric code, by giving numeric programmers access to _fast_, _robust_, _general_, _accurate_ differentiation operators.
To be technical: we are adding exact first-class derivative calculation operators (Automatic Differentiation or AD) to the lambda calculus, and embodying the combination in a production-quality fast system suitable for numeric computing in general, and compositional machine learning methods in particular. Our research prototype compilers generate object code competitive with the fastest current systems, which are based on FORTRAN. And the combined expressive power of first-class AD operators and function programming allows very succinct code for many machine learning algorithms, as well as for some algorithms in computer vision and signal processing. Specific sub-projects include: compiler and numeric programming environment construction; writing, simplifying, and generalising, machine learning and other numeric algorithms; and associated Type Theory/Lambda Calculus/PLT/Real Computation issues.
TO THE PROGRAMMING LANGUAGE COMMUNITY, we seek to contribute a way to make numeric software faster, more robust, and easier to write.
TO THE MACHINE LEARNING COMMUNITY, in addition to making it easier to write efficient numeric codes, we seek to contribute a system that embodies "compositionality", in that gradient optimisation can be automatically and efficiently performed on systems themselves consisting of many components, even when such components may internally take derivatives or perform optimisation. (Examples of this include, say, optimisation of the rules of a multi-player game to cause the players' actions to satisfy some desiderata, where the players themselves optimise their own strategies using simple models of their opponents which they optimise according to their opponents'
To this end, we are seeking to fill three positions (postdoctoral or research programmer, or in exceptional cases graduate students) with interest and experience in at least one of: programming language theory, automatic differentiation, machine learning, numerics, mathematical logic.
Informal announcement: http://www.bcl.hamilton.ie/~barak/ad-fp-positions.html
Formal job postings on http://humanresources.nuim.ie/vacancies.shtml, in particular http://humanresources.nuim.ie/documents/JobSpecPostdoc2_Final.pdf and http://humanresources.nuim.ie/documents/JobSpecProgrammer_Final.pdf
Barak A. Pearlmutter
Hamilton Institute & Dept Computer Science NUI Maynooth, Co. Kildare, Ireland