SPNC: Sum-Product Network Compiler für beschleunigte Inferenz auf heterogenen Architekturen

Ein tiefgehendes Verständnis von alltäglichen Vorgängen und komplexen Zusammenhängen, die sich dem menschlichen Beobachter nicht ohne weiteres erschließen, zu erlangen ist ein zentrales Ziel aktueller technischer Entwicklungen.

Probabilistische Modelle aus dem Bereich des maschinellen Lernens sind ein mächtiges Werkzeug, um diese Zusammenhänge zu erfassen und bieten gleichzeitig Vorteile gegenüber aktuellen Standard-ML-Modellen.

Die sogenannten Sum-Produkt-Networks (SPN) sind ein sehr vielversprechender Kandidat aus dem Bereich der probabilistischen Modelle, weil sie eine hohe Präzision und effiziente Berechenbarkeit vereinen. Um die Netzwerke in praktisch relevanten Anwendungsszenarien auf große Datenmengen anwenden zu können, ist jedoch eine effiziente Abbildung auf heutige, heterogene Rechnersysteme entscheidend.

Daher ist das übergeordnete Ziel dieses Projekts die Entwicklung eines spezialisierten Compilers, der SPNs auf verschiedene Hardwareplattformen abbilden kann. Dabei wird die Abbildung auf folgende Zielplattformen angestrebt:

  • Moderne CPUs, die mehrere Arten von Parallelverarbeitung (Vektorrechnung, Multi- thread) unterstützen.
  • Grafikkarten (GPUs), die hohe Leistung für massiv-parallele Berechnungsprobleme bieten.
  • Field-Programmable Gate Arrays (FPGA), die die Implementierung sehr effizienter, spezialisierter Hardwarebeschleuniger ermöglichen.

Der entwickelte Compiler soll eine automatische Abbildung von SPNs auf die drei genannten Plattformen ermöglichen, und so die Rechenleistung moderner, heterogener Systeme auch ML-Domänenexperten zugänglich machen.

Der gesamte Compile-Fluss soll mit Anwendungen von Sum-Produkt-Networks aus der Praxis, z.B. der automatischen Erkennung betrügerischer Transaktionen, evaluiert werden.

Software Campus-Partner: TU Darmstadt, Huawei

Umsetzungszeitraum: 01.02.2020 – 30.11.2021

Link: Software-Campus Site

Funded by:

Logo for Sponsor swc