Machine learning – the ability of computers to understand data, manage results and infer insights from uncertain information – is the force behind many recent revolutions in computing. Email spam filters, smartphone personal assistants and self-driving vehicles are all based on research advances in machine learning. Unfortunately, even as the demand for these capabilities is accelerating, every new application requires a Herculean effort. Teams of hard-to-find experts must build expensive, custom tools that are often painfully slow and can perform unpredictably against large, complex data sets.
The Probabilistic Programming for Advancing Machine Learning (PPAML) program aims to address these challenges. Probabilistic programming is a new programming paradigm for managing uncertain information. Using probabilistic programming languages, PPAML seeks to greatly increase the number of people who can successfully build machine learning applications and make machine learning experts radically more effective. Moreover, the program seeks to create more economical, robust and powerful applications that need less data to produce more accurate results – features inconceivable with today’s technology.
PPAML has five specific tactical objectives:
If successful, PPAML could help revolutionize machine learning capabilities in fields from Intelligence, Surveillance and Reconnaissance (ISR) and Natural Language Processing (NLP) to predictive analytics and cybersecurity. The program would help free people wishing to build useful machine learning applications from needing to be experts in machine learning as well as their own areas of interest. Through new, reusable tools and new probabilistic programming languages specifically tailored to probabilistic inference, PPAML aims to decisively reduce the current barriers to machine learning and foster a boom in innovation, productivity and effectiveness.
PPAML started in March 2013 and is scheduled to run 46 months, with three phases of activity through 2017. The PPAML Broad Agency Announcement (BAA) provides detailed information about the program’s objectives and the specific capabilities it seeks. Successful solutions will likely involve contributions from many areas, including statistics and probabilistic modeling, approximation algorithms, machine learning, programming languages, program analysis, compilers, high-performance software and parallel and distributed computing.
Dr. Kathleen Fisherkathleen.firstname.lastname@example.org