Technology Friday: Bonsai Is Making Deep Learning Real for Enterprises
On today’s Technology Friday I would like to cover one of my favorite artificial intelligence(AI) — deep learning platforms in the market: Bonsai. A long time favorite of AI researchers, Bonsai recently gained more notoriety by raising a $7.6 million funding round led by Microsoft Ventures.
Architecturally, Bonsai expands the capabilities of well-known, deep learning frameworks such as Theano, Torch or TensorFlow by providing a complete platform that enables the end-to-end implementation of deep learning solutions. From that perspective, Bonsai provides a series of tools and frameworks components that abstract the fundamental building blocks of AI applications.
At the center of the Bonsai platform, we have the concept of a BRAIN ( Basic Recurrent Artificial Intelligence Network)/ Bonsai’s BRAINs are AI agents programmed with deep learning models using the Inkling AI domain specific language. Bonsai leverages Inkling as the main programming interface for the implementation of AI models. Based on Python (shockingly so ;) ), Inkling is a domain-specific language based on Pedagogical Programming techniques. Pedagogical Programming contrasts with traditional AI techniques in the sense that it teaches an AI agent how to find a solution to a problem instead of how to simply calculate it. Inkling relies on teaching-oriented approach that uses a series of AI foundational primitives but abstracts most of the underlying aspects of the implementation AI models. Developers can use Inkling from different Python environments including Bonsai’s own Mastermind IDE.
One of my favorite capabilities of Bonsai is its programming model that includes components of real world AI solutions such as Simulators and Generators. Bonsai Simulators imitate a representation of a virtual environment use for training. Simulators could be as simple as a basic data pattern or as complex as a game or a self-driving vehicle scenario. Generators are the component of Bonsai responsible for producing labeled data used as a training source.
Bonsai AI Engine is the core runtime component of the platform. The AI Engine is responsible for executing and scaling BRAINs deployed on the platform. This component of the Bonsai stack includes a rich portfolio of machine learning algorithms and is in charge of managing the resources required to execute AI models. Additionally, the AI Engine manages the streaming data flow and the storage of data. One of the most fascinating aspects of Bonsai AI Engine are the heuristic algorithms it uses to determine the specific, models, topologies and optimization techniques required to train a specific BRAIN. That type of heuristic removes a lot of the heavy lifting from developers so that they can focus on building the fundamental aspects of the AI model.
Bonsai includes several components to enable the automation and extensibility of AI solutions. The Bonsai CLI provides a command line interface to dynamically interact with the AI Engine. Similarly, Bonsai exposes many of its capabilities programmatically thought its APIs. Developers can extend Bonsai’s applications by implementing custom Generators or Simulators using the Bonsai SDKs.
Bonsai can be certainly classified as one of the most innovative AI platforms in the market. From a competitive landscape standpoint, I believe Bonsai should be compared to end-to-end AI application development platforms such as H2O.ai rather than to deep learning frameworks such as TensorFlow or Theano. However, developers should be aware that by selecting Bonsai, they are buying into a specific programming model for AI applications.
At least for now, Bonsai presents one of the most complete and innovative AI platforms in the market and can be a great option for enterprises venturing in their AI journey.