Positions Available Filled

Automatic Differentiation and Functional Programming


Positions: Three posts (postdoctoral or research programmer)
Start date: 1-Mar-2014, with some flexibility possible.
Term: 1.5 years
Topic: First Class Automatic Differentiation and Machine Learning
Remuneration: standard Irish academic scales
Project headquarters: Hamilton Institute, NUI Maynooth, Ireland, with dual affiliation with Computer Science

Official Posting

This page contains unofficial information. The official posting is was on the NUIM Human Resources Vacancies listing, with two listings:

Applications and Queries

To actually apply, please follow the procedure listed on the above pages, which goes through the NUIM Human Resources office.

You are also welcome to contact me, Barak A. Pearlmutter <barak@cs.nuim.ie>, if you may be interested, or with any questions. If you are interested, but are unsure as to whether you are qualified, please do get in touch. VoIP also welcome: for more interactive discussion drop me an email and we can set a protocol and time.

If you are going to apply, please feel free to CC me with your application materials.

Unofficial Description

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/λ Calculus/PLT/ℝ 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' observed behaviour.)

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.

National University of Ireland Maynooth is an equal opportunities employer.

Prof Barak Pearlmutter <barak@cs.nuim.ie>
Hamilton Institute & Department of Computer Science
National University of Ireland Maynooth
Maynooth, Co. Kildare