Edge Impulse logo
Blog Post

BrainChip Akida™ Platform Features in Edge Impulse

Embedded Devices, Machine Learning, Artificial IntelligenceThis blog highlights the new features with BrainChip technology that are now available in Edge Impulse Studio.

Joshua Buck

January 13, 2023

Edge Impulse enables developers to rapidly build enterprise-grade ML algorithms, trained on real sensor data, in a low- to no-code environment. With the complete integration of BrainChip Akida™ technology, these trained algorithms and new algorithms can now be converted into spiking neural networks (SNNs) and deployed to BrainChip Akida target devices such as the Akida mini PCIe development board. This blog highlights the new features with BrainChip technology that are now available in Edge Impulse Studio to provide easy, quick, and advanced model development and deployment for BrainChip Akida neuromorphic technology. 

Read the Design an Impulse with BrainChip Akida Learning Blocks sectionDesign an Impulse with BrainChip Akida Learning Blocks

The development of models for BrainChip Akida is now integrated in Edge Impulse Studio. Developers can select BrainChip Akida (refer Figure 1) in the learning block of an impulse design. There are two learning blocks available today — classification, which supports development of new models and transfer learning, which provides access to a model zoo that is optimized for BrainChip Akida devices. The type of learning blocks visible depend on the type of data collected and intent of the project such as classification, object detection. Using the BrainChip Akida learning blocks ensures that the models developed are optimized and successfully deployed to the BrainChip Akida mini PCIe development board.

Figure 1: Choose BrainChip Classification or Transfer learning blocks for development on BrainChip Akida devices

Read the Training a BrainChip Akida Compatible Model sectionTraining a BrainChip Akida Compatible Model

In the learning block of the impulse design one can compare between float, quantized, and Akida versions of a model. If you added a processing block to your impulse design, you will need to generate features before you can train your model. Developers can use Edge Impulse Studio (refer Figure 2) to edit predefined models, and training parameters.

Figure 2: Visual mode of BrainChip Akida learning block with options for to profile float, quantized, and Akida accuracies

Edge Impulse Studio also gives the ability for users to modify pre-generated Python code as a way to get more exact behavior from the learn blocks. In this area the more advanced user can also call into the Akida MetaTF Python package as is integrated into the Akida learn blocks (Figure 3a and 3b).

Graphical user interface, application, Teams

Description automatically generated
Figure 3a: How to access Expert Mode of a BrainChip Akida learn block
Graphical user interface, application

Description automatically generated
Figure 3b: Example of Expert Mode code that calls BrainChip’s MetaTF package functions

While training the BrainChip Akida learn block, useful information such as model compatibility, summary, sparsity, and # of NPs required are also displayed in the log output (refer Figure 4). This helps developers to review and modify their models to generate custom, optimized, and desired configurations for BrainChip Akida devices (Figure 5).

Text

Description automatically generated
Figure 4: Profile information for BrainChip Akida

 If the project uses a transfer learning block, the developer will be presented with a list of models (refer Figure 5) from BrainChip’s Model Zoo that are pre-trained and optimized for BrainChip Akida. These models will provide a great starting point for developers and implement transfer learning for their projects. As of today, several AkidaNet-based models are integrated into the Edge Impulse Studio and many more will be integrated over time. If developers have a specific request on this, please let us know via the Edge Impulse forums.

Figure 5: List of models available when BrainChip Transfer Learning block is chosen

Read the Deployment Options sectionDeployment Options

Any model that has been developed in the impulse design on Edge Impulse Studio can be deployed to BrainChip Akida target devices. In order to download these models for custom deployments, developers must choose the BrainChip MetaTFTM model block (refer Figure 5a) under the deployment stage to obtain a .zip file with the converted model in it. Alternatively, there is also a BrainChip Akida PCIe deployment block (refer Figure 5b) available which will generate a pre-built binary that can be used with Edge Impulse Linux CLI to run on any compatible Linux installation where this board is installed. 

Graphical user interface, application, Teams

Description automatically generated
Graphical user interface, application

Description automatically generated
Figure 6a: Download BrainChip Akida-compatible model for custom deployment on BrainChip Akida devicesFigure 6b: Download pre-built binary for AKD1000 mini PCIe development board

The pre-built binary that is provided from the deployment block also has in-built tools that provide performance metrics for the AKD1000 mini PCI reference board (refer Figure 7). This is a very unique integration as developers can not only deploy their favorite projects to BrainChip Akida devices but can also capture information such as efficiency that help build a prototype system with Akida technology.  

Figure 7: Performance information unique to BrainChip Akida devices

Read the Edge Impulse Example Projects Using BrainChip Features sectionEdge Impulse Example Projects Using BrainChip Features

To quickly get started, please see these example projects that are available to clone immediately for quick training and deployment to the AKD1000 development platform.

Read the Getting Started with Edge Impulse sectionGetting Started with Edge Impulse

If you are new to Edge Impulse, please try out one of the Getting Started tutorials before continuing with Edge Impulse BrainChip Akida features. Please reach out to us on Edge Impulse forums for technical support. If you need more information about getting started with BrainChip Akida on Edge Impulse, visit the documentation page.

Subscribe

Are you interested in bringing machine learning intelligence to your devices? We're happy to help.

Subscribe to our newsletter