Enabling Un-/Semi-Supervised Machine Learning for MDSE of the Real-World CPS/IoT Applications

by   Armin Moin, et al.

In this paper, we propose a novel approach to support domain-specific Model-Driven Software Engineering (MDSE) for the real-world use-case scenarios of smart Cyber-Physical Systems (CPS) and the Internet of Things (IoT). We argue that the majority of available data in the nature for Artificial Intelligence (AI), specifically Machine Learning (ML) are unlabeled. Hence, unsupervised and/or semi-supervised ML approaches are the practical choices. However, prior work in the literature of MDSE has considered supervised ML approaches, which only work with labeled training data. Our proposed approach is fully implemented and integrated with an existing state-of-the-art MDSE tool to serve the CPS/IoT domain. Moreover, we validate the proposed approach using a portion of the open data of the REFIT reference dataset for the smart energy systems domain. Our model-to-code transformations (code generators) provide the full source code of the desired IoT services out of the model instances in an automated manner. Currently, we generate the source code in Java and Python. The Python code is responsible for the ML functionalities and uses the APIs of several ML libraries and frameworks, namely Scikit-Learn, Keras and TensorFlow. For unsupervised and semi-supervised learning, the APIs of Scikit-Learn are deployed. In addition to the pure MDSE approach, where certain ML methods, e.g., K-Means, Mini-Batch K-Means, DB-SCAN, Spectral Clustering, Gaussian Mixture Model, Self-Training, Label Propagation and Label Spreading are supported, a more flexible, hybrid approach is also enabled to support the practitioner in deploying a pre-trained ML model with any arbitrary architecture and learning algorithm.


page 1

page 4

page 5


Data Analytics and Machine Learning Methods, Techniques and Tool for Model-Driven Engineering of Smart IoT Services

This doctoral dissertation proposes a novel approach to enhance the deve...

MDE for Machine Learning-Enabled Software Systems: A Case Study and Comparison of MontiAnna ML-Quadrat

In this paper, we propose to adopt the MDE paradigm for the development ...

A Model-Driven Engineering Approach to Machine Learning and Software Modeling

Models are used in both the Software Engineering (SE) and the Artificial...

From Things' Modeling Language (ThingML) to Things' Machine Learning (ThingML2)

In this paper, we illustrate how to enhance an existing state-of-the-art...

ML-Quadrat DriotData: A Model-Driven Engineering Tool and a Low-Code Platform for Smart IoT Services

In this paper, we present the novel early tool prototype of ML-Quadrat, ...

Modelling DDoS Attacks in IoT Networks using Machine Learning

In current Internet-of-Things (IoT) deployments, a mix of traditional IP...

MDE4QAI: Towards Model-Driven Engineering for Quantum Artificial Intelligence

Over the past decade, Artificial Intelligence (AI) has provided enormous...

Please sign up or login with your details

Forgot password? Click here to reset