Skip to main content

Grundlagen für den Einsatz

In vielen Bereichen wird der Einsatz von Machine Learning erforscht und erfolgreich angewandt, um komplexe Fragestellungen zu beantworten, beispielsweise in der Gesichtserkennung oder Textanalyse. Auch in der IT selbst gibt es starken Bedarf für den Einsatz von AI Methoden, wie zum Beispiel die Bewertung oder Fehleranalyse von Software, die heute viel manuelle Arbeit erfordern. Allerdings arbeiten ML-Algorithmen in der Regel auf Eingabedaten fester Struktur und Größe. Sourcecode von Software hingegen ist hierarchisch strukturiert und von variabler Länge.
In einer Masterarbeit in Zusammenarbeit mit der itestra GmbH und der TU München wurde eine Methode entwickelt, um Sourcecode in Vektoren zu transformieren und so als Eingabe für ML-Algorithmen nutzen zu können. Hierfür erfolgt zunächst eine Transformation in Graphenform und anschließend ein Alignment, das wiederum selbst einen Supervised-Learning-Ansatz nutzt.
Die Methode wurde im Rahmen eines größeren Forschungsprojekts zur Bewertung von Software-Qualität erprobt.

  • Sourcecode muss transformiert werden, um durch Machine Learning Algorithmen analysiert werden zu können.
  • Diese Arbeit zeigt einen Ansatz, der es ermöglicht, ML Algorithmen für die Analyse von Software einzusetzen.

Weiterlesen?

VECTORIZING SOFTWARE FOR MACHINE LEARNING

Christian Feiler
MASTERARBEIT, INSTITUT FÜR INFORMATIK, TECHNISCHE UNIVERSITÄT MÜNCHEN, IN KOOPERATION MIT DER ITESTRA GMBH, 2019

info@itestra.de
+49 89 381570-110

Zukunft gemeinsam gestalten.