May 26, 2017

Machine Teaching & Machine Learning: Unique Combination for AI Models

This is the fifth installment of a six part series from our recently published whitepaper; A fundamentally different approach for building intelligent industrial systems. You can download the complete paper here.

Bonsai brings together state of the art techniques in machine teaching and machine learning, providing developers, data scientists, and subject matter experts with the tools to teach the desired intelligence to a system, while automating the complex, low level mechanics of machine learning. With the Bonsai Platform, enterprises can more efficiently build application specific AI models that increase the automation and operational efficiency of sophisticated industrial systems. 

Starting with Inkling, Bonsai’s special purpose programming language, developers codify the specific concepts they want a system to learn, how to teach them, and the training sources required (e.g. simulations, data). We refer to this technique as Machine Teaching. Each Inkling program developed with this approach is fed into the Bonsai AI Engine, where it is paired with state of the art machine learning libraries (e.g. Tensorflow) and techniques (e.g. reinforcement learning) to generate and train the most appropriate model. The resulting high-level model can then be connected into your hardware or software application through Bonsai provided libraries. Each model is available for ongoing debugging and refinement, and can be repurposed for use in other applications.


An AI learns from interacting with a simulation or analyzing recorded data. Using the Bonsai Platform, each AI model is created by following the three step sequence outlined below.

Step 1: Build 
  • Create a BRAIN - a high level model of the concepts to be learned and a set of lessons that can be used to teach them - using Bonsai’s Inkling programming language.
  • Specify any pertinent training sources, such as data or simulations, that will be used in conjunction with the lessons as part of teaching the model.
  • Filter data, configure simulations, or otherwise prepare the training materials as appropriate for each lesson.
  • Establish objectives used to evaluate the AI's mastery of each concept. This is typically a scoring function assessing the quality of the AI's prediction versus desired results.
  • Load the resulting project (the collection of your Inkling code, data, and simulations) into the Bonsai AI Engine using Bonsai's CLI, IDE, or web based tooling.
Step 2: Teach 
  • Start the training of your BRAIN in the Bonsai AI Engine - this will generate an appropriate low level model for your project (e.g. a deep learning neural network topology).
  • Assess training status throughout the training of your BRAIN.
  • Refine and iterate your project as desired; rerun training of the BRAIN as needed.
Step 3: Use
  • Connect your BRAIN via Bonsai provided libraries to your software or hardware application (just like you would connect a database to your application).
  • Your application will be able to stream in data and receive predictions from your BRAIN.
  • Your Inkling code can be leveraged in other applications.

For more detailed technical information and demos of the Bonsai Platform visit our Docs page.


Always. Be. Learning.

Stay up-to-date on our latest product news, AI industry highlights, and more!