title: CM2ML: A generic, portable, and extensible framework for encoding the structure of conceptual models
Creators: name: Müller, Jan
Publisher: name: TU Wien
Year: 2024
Subjects: subject: machine learning
subject: conceptual modeling
subject: encoding
subject: model driven engineering

description: Das konzeptuelle Modellieren erstreckt sich über ein breites Spektrum an Disziplinen in der Welt der Informatik. Eine große Zahl an Anwendungen macht konzeptuelles Modellieren zu einem allgegenwärtigen Werkzeug für Designer, Entwickler, Projektmanager und andere Gruppen. Zuletzt wurde Machine Learning in mehreren Anwendungsfällen eingeführt, wofür jedoch Modell-Kodierungen benötigt werden. Während ein beträchtlicher Aufwand in die Entwicklung und Verbesserung dieser Kodierungen fließt, fehlt es an Effizienz-Vergleichen für konkrete Anwendungen. Zudem werden Implementierung von Kodierern häufig an eine spezifische Modellierungssprache gekoppelt. Das Auswählen der besten Kodierung für eine Aufgabe ist für Laien daher schwer. Wir implementieren Conceptual Models to Machine Learning (CM2ML), ein Framework zum Kodieren der Struktur von konzeptuellen Modellen, auf Basis der Design ScienceResearch Methodik. Eine Entkopplung von Modellierungssprachen und Kodierungen durch Einführen einer Zwischenrepräsentation macht es generisch. CM2ML ist modular und erweiterbar, womit ein flexibler Einsatz sowie eine Erweiterung durch Parser für neue Modellierungssprachen und Kodierern möglich ist. Experimentieren wird durch seine komponierbaren Plugins und deren deklarative Parameter, welche eine strukturierte Schnittstelle für die Konfiguration von Parser- und Kodiererverhalten bieten, erlaubt. CM2ML inkludiert Adapter für Kommandozeilen und REST Server, während seine Software Bibliothek Scripting und eine Implementierung neuer Adapter erlaubt. CM2ML inkludiert einen Parser für UML sowie drei konfigurierbare Kodierer. Neben graphen- und baumbasierten Kodierern verfügt es über ein Bag-of-Paths (BoP) Framework zum Kodieren von Modellelementen und deren Kontext in einer anpassbaren Textform. Eine Webanwendung stellt zudem Visualisierungen für die Zwischenrepräsentation und Kodierer bereit, womit Nachvollziehbarkeit zwischen Modellen und Kodierungen gegeben ist. In einer experimentellen Evaluation wird die Effizienz von CM2MLs graphen- und baumbasierten Kodierern bei der Klassifizierung von Elementen verglichen. Dafür werden verschiedene Konfiguration für den UML Parser und beide Kodierer evaluiert. Die Ergebnisse zeigen einen deutlichen Vorteil für die graphenbasierte Kodierung sowie Verbesserungen der Effizienz mit bestimmten Konfigurationen. In einem zweiten Experiment wird der BoP Kodierer so konfiguriert, dass er ein modernes Framework für die Graph-Sprachmodellierung erfolgreich emuliert. CM2ML kann also zum Vergleichen von Kodierungen und zum Experimentieren mit Parsern und Kodierern verwendet werden.
description: Conceptual modeling spans a broad range of disciplines in the areas of software engineering and computer science. A large number of use cases for conceptual modeling render it an omnipresent tool for designers, engineers, project managers, and other groups of users. Recently, researchers started introducing Machine Learning to certain use cases, which requires some form of model encoding. While considerable effort is put into developing and improving those encodings, a lack of comparisons regarding their efficiency for a given task makes it difficult for non-experts to choose the one best suited. This is reinforced by implementations of encoders often being tied to specific modeling languages. We implement Conceptual Models to Machine Learning (CM2ML), a framework for encoding the structure of conceptual models, following the Design Science Research methodology. It's generic in the sense of decoupling modeling languages from encoder implementations through an intermediate representation (IR). CM2ML is modular and extensible, allowing it to be used flexibly and extended with support for new languages and encodings. Its composable plugins and their declarative parameters provide a structured interface for configuring the behavior of parsers and encoders, enabling experimentation. CM2ML includes adapters for a command-line interface and a REST server, while its software library may be used to implement custom adapters or scripts. CM2ML has a built-in parser for UML and three configurable encoders. Besides a raw graph and a tree-based encoder, it features a Bag-of-Paths (BoP) framework for encoding model elements and their context in a customizable textual representation. A web application that provides visualizations for the IR and each encoder provides traceability between a model and a resulting model encoding. In an experimental evaluation, the efficiency of CM2ML's raw graph and tree-based encoders for the task of node classification is compared, including different configurations for the UML parser and both encoders. The results show a clear advantage for the raw graph encoding and efficiency improvements for certain configurations. In a second experiment, CM2ML's BoP encoder is configured to successfully emulate the output of a state-of-the-art graph language modeling framework. As such, CM2ML may be used to compare encodings effectively and experiment with parameters for parsers and encoders.