HOUDINI: a neurosymbolic framework

Deepak Chaudhari, Rice University CS postdoctoral research associate.Researchers at Rice University and the University of Edinburgh have created HOUDINI, a neurosymbolic framework that allows lifelong learning of algorithmic tasks to transfer high-level concepts more effectively.

In a lifelong learning setting, models are trained on a series of tasks, and each training round is expected to benefit from previous rounds of learning.

“The current machine learning approaches are good at learning single tasks,” Dipak Chaudhari, postdoctoral research associate in computer science at Rice and co-author of a paper titled “HOUDINI: Lifelong Learning as Program Synthesis” said.

“When you try to learn a new task, the knowledge gained from solving the previous tasks is not easily transferable. In HOUDINI, we represent neural networks as typed functional programs. The modularity inherent in the typed functional programs really helps in the process of transferring the high level modules. That’s the basic idea of HOUDINI,” he said.

HOUDINI uses a program synthesizer to automatically generate candidate programs by piecing together already learnt neural modules in various configurations.

The generated programs can also contain fresh trainable neural modules whose parameters are learned by end-to-end training. This compositionality facilitates reuse of knowledge across tasks possibly in different domains.

Consider the task of counting the number of occurrences of digit “5” in a list of digit images for example. Program learned by HOUDINI on this task constitutes of two components: a perceptual component for recognizing digit “5” and an algorithmic component for counting the number of occurrences of the digit. Now consider a subsequent task of counting number of a certain toy, say a car, given a list of toy images.

For this task, HOUDINI reuses the already learned counting component and only learns the perceptual component for learning to recognize a car.

“In conventional deep learning, you have a monolithic neural network which is not interpretable. We cannot look at a component of a neutral network and understand, in a meaningful way, what it is doing. It’s kind of a black box. This makes it difficult to reuse components of the network for learning a new task. Representing the network compositionally is important to enable transfer,” Chaudhari said.

HOUDINI is the first of its kind to use symbolic methods to induce differentiable programs. HOUDINI transfers high-level concepts more effectively than traditional transfer learning approaches.

Chaudhari said being able to modularly represent the neural networks as functional programs and leveraging the rich type system during program synthesis makes HOUDINI unique.

“Humans are good at learning things and applying the knowledge gained to solve problems in different domains. The idea of lifelong learning is to develop a system that is continuously learning. As the system learns more and more tasks, it accumulates knowledge which is used in learning subsequent tasks. The ultimate aim is to build a system that works across domains. HOUDINI is a step towards this goal wherein we have shown that integrating symbolic and neural approaches works well for lifelong learning of algorithmic tasks that mix perception and procedural reasoning.” Chaudhari said.

Choosing what to call the framework was the fun part of the process. Chaudhari said the name HOUDINI, was the perfect combination of the words Houston and Edinburgh, the cities where all researchers work.

Deepak Chaudhari is a Computer Science postdoctoral research associate working with Rice University associate professor Swarat Chaudhuri.

–written by Cintia Listenbee, Communications and Marketing Specialist in Computer Science.