Introduction

Overview

Cumulocity IoT Machine Learning simplifies the complexity of the data science process across the entire machine learning lifecycle from model training to deployment. Cumulocity IoT Machine Learning is composed of two applications: Machine Learning Workbench, which focuses on model training, and Machine Learning Engine, which focuses on model deployment.

The handover of the models from training environment to deployment environment is done via open-standards representation: PMML and ONNX. Open-standards based representation of machine learning models ensures interoperability between heterogeneous model development and deployment environments.

Machine Learning Workbench

Machine Learning Workbench enables data scientists and machine learning engineers to build, train and evaluate high-quality machine learning models using an intuitive, easy to use, no-code Graphical User Interface and a programmer-friendly Jupyter Notebook based environment. Machine Learning Workbench provides seamless access to data residing in Cumulocity IoT operational store or any cloud data lakes with visual tools to ingest and transform the data.

Machine Learning Workbench is composed of the following components:

Name Application type Description
machine-learning-workbench WebApp Graphical User Interface for Machine Learning Workbench
mlw Microservice Microservice backend for Machine Learning Workbench
mlw-cdh Microservice Microservice backend with DataHub role for Machine Learning Workbench

Info: Subscription of exactly one microservice (mlw or mlw-cdh) is required to work with Machine Learning Workbench. To fetch data from Cumulocity IoT DataHub, subscription of mlw-cdh and DataHub is required.

Machine Learning Engine

Machine Learning Engine enables machine learning/IT operators to manage and operationalize production-ready models for generating predictions on data gathered from connected devices. These capabilities can be leveraged either from a web browser via an easy to use graphical user interface or programmatically via REST API. Machine Learning Engine provides a high-performance inference platform with deployed models exposed as endpoints that can be leveraged from Streaming Analytics and other applications for real-time inference.

Machine Learning Engine is composed of the following components:

Name Application type Description
machine-learning WebApp Graphical User Interface for Machine Learning Engine
zementis Microservice Microservice backend for PMML model management and serving
onnx Microservice Microservice backend for ONNX model management and serving
nyoka Microservice Microservice backend for Time Series and Clustering models

Use cases

To get a better understanding of how to leverage Machine Learning capabilities on Cumulocity IoT, we have provided detailed examples as part of this documentation. Each example covers a use case and walks you through the entire machine learning lifecycle from data ingestion, model training/evaluation to model deployment and inferencing.

Use case Description
Demand Forecasting Forecast the peak/non-peak hours of water consumption using a Time Series model
Activity Recognition Predict human activities - sitting, running or jumping - based on sensor data from a mobile device
Anomaly Detection Detect anomalous events through the sensor data of a mobile device
Casting Defect Detection Identify defects in metal casting process by leveraging deep learning algorithms