Building a Model

The Model Building part of the Analytics Studio uses SensiML’s AutoML to build a model that gives you control of the features you want in your device. For example, if you build an algorithm that detects your events with 100% accuracy, the algorithm may use more resources. But by tweaking parameters in the Build Model tab you might find you can get an algorithm that uses half as many resources, while still getting 98% accuracy. You can configure SensiML’s AutoML process to maximize accuracy while fitting a within a desired memory constraint. This is a powerful concept that can save you a lot of time and money.

The model building process is represented as Pipelines. Each pipeline is a sequence of steps representing the process of data transformation during model building.

Let’s look at the screenshot and dive a little deeper.


The UI Pipeline Builder is presented as the flow builder with cards.

../../_images/analytics-studio-model-building1.png

Pipelines:

  • Pipelines can be created with different combinations of steps and parameters [1].

  • The active pipeline can be changed on the selection list [2].

Pipeline builder:

  • Pipeline builder has an advanced mode that allows adding more steps and parameters [3].

  • Each step may have docs information, name, type, special color [6] [4].

  • Each step may be editable (exclude Input Data and steps that have been extracted from a session) [5].

  • Optional steps can be added. Some of them can be added more than 1 time.

  • The AutoML Parameters step lets you set properties that tell the Analytics Studio how to optimize/prioritize the way it builds your model. This lets you prioritize specific training algorithms/features or set a size limit on the classifier if your device is limited on SRAM. [6].


Let’s create a new pipeline and build a model.

  1. Click Add New Pipeline and create a new pipeline called My Pipeline.

    Note: A new pipeline will be created with steps and parameters according to the current default template. Some of them, like Query, Segmenter, AutoML Parameters, are required to review, and they will be opened for editing after creation automatically.

  2. Select the All Classes query from the query list edit form.

  3. Select the Segmenter: Windowing. Set size to 100 and slide to 100. Windowing segmentation works well with continuous events.

    Note: 100 refers to the window size in samples, so by picking Windowing(100) on 100hz data we have a 1 second window size, meaning every 1 second you will get a new classification.

  4. Click Optimize and the Analytics Studio will automatically build you a model to detect your events.

  5. This is where SensiML’s AutoML finds the features needed to build an algorithm that will run on your device. Depending on the amount of sensor data, the seed, and parameters you selected this could take some time to build an algorithm.

  6. Once the pipeline is complete it will display 5 models in the Auto Sense Results view.

../../_images/analytics-studio-auto-sense-results1.png

There are several summary statistics for each model. You can use this information to select a model that supports your device’s resources while providing the level of accuracy your application needs. Keeping in mind that typically, there is an accuracy vs resource usage trade off, where the more resources you allocate to modeling, the higher accuracy of a model that can be built.