- New AI programming language [Gen] makes it easier for beginners to get started, while also helping professionals advance the field.
- It outperforms existing probabilistic programming systems on problems such as estimating 3D body pose from a depth image and object tracking.
Probabilistic modeling and inference paradigm is used in various fields, including artificial intelligence, robotics, natural language processing, cognitive science, machine learning, and statistics.
Since implementing inference algorithms is quite tricky and error-prone, high-level programming constructs are used to automate aspects of inference. However, existing systems aren’t practical for general purpose use: they lack efficiency and flexibility required for challenging models in fields like robotics and computer vision.
Some systems provide restricted modeling languages that are only suitable for certain problem domains. Google’s TensorFlow, for example, is narrowly focused on deep-learning models.
Now, researchers at MIT have come up with a new artificial intelligence (AI) programming language — called Gen — that goes beyond just deep learning models and makes it easier for beginners to get started, while also helping professionals advance the field.
Gen: A Novel Probabilistic-Programming System
With Gen, developers can write AI algorithms and models for various fields such as statistics, robotics, and computer vision, without having to manually write complex code or deal with equations. It allows professional programmers to write inference algorithm and sophisticated models for prediction tasks that were previously not feasible.
The research team has demonstrated that a simple Gen code can infer tricky tasks that have application in augmented reality, human-machine interactions, and autonomous systems. In the background, the system carries out all types of probability simulations, deep-learning, graphics rendering.
Researchers claim that Gen can be used by anyone due to its simplicity and it provides results in less time with better accuracy compared to earlier systems. The goal is to make AI more accessible to users with less expertise in math or computer science and increase their productivity.
Gen’s Architecture
Gen can automatically create sophisticated statistical models to examine, interpret and predict specific patterns in data, simplifying data analytics.
This programming system is embedded in Julia so that users can define models and implement high-level inference programs in the host language. It has the following features –
- The generative function interface that separates logic from inference algorithm design.
- Three generative function combinators for exploiting common patterns of conditional independence.
- Three interoperable modeling languages: one is amenable to static analysis, one is Turing complete, and one is based on TensorFlow.
A few companies have already started using this new programming system. Intel, for instance, is working with the research team to use Gen for estimating 3D body pose from a depth image and inferring the structure of a time series.
Read: Bosque: Microsoft’s New Programming Language Without Loops
Also, MIT-IBM Watson AI lab project aims to build a model that has human common sense at the level of a 1.5-year-old child. MIT Lincoln Laboratory is using Gen to develop aerial robotics for disaster response and humanitarian relief.
You can test it yourself if you are really interested. The source code is available on GitHub.