8. Classification

Classification is the task of predicting /estimating a discrete category (the class) from input data. Training is performed using supervised machine learning, using a labeled dataset. Classification can be binary or multi-class.

Sometimes a single model has multiple outputs, multi-label classification. This is not currently supported in emlearn. Instead one classification model per output must be used.

8.1. Applications

Detecting events using Machine Learning has a wide range of applications, and it is commonly performed on sensor data using embedded systems.

Application examples

Area

Task

Sensor

Health

Detection of heart rythm irreguarity

Electrocardiogram (ECG)

Wearables

Scene classification for contextual awareness

Sound

Farming

Cattle behavior classification for health tracking

Accelerometer

Robotics

Material identification for grippers

Capacitive

Buildings

Human presence detection

Radar

8.2. Classification models

Supported classification models

Algorithm

Implementation

RandomForest

RandomForestClassifier

ExtraTrees

ExtraTreesClassifier

DecisionTree

DecisionTreeClassifier

Multi-Layer-Perceptron

MLPClassifier, keras.Sequential

Gaussian Naive Bayes

GaussianNB

Nearest Neighbors

KNeighborsClassifier

A basic example showing some of these classifier models can be found in Classifier comparison.