Kompression künstlicher neuronaler Netze
Masterarbeit,Studienarbeit
Im Rahmen des Projekts Transform and subband coding

Description

Künstliche neuronale Netze (KNNs) sind heutzutage in vielen Bereichen führend hinsichtlich vielfältiger Leistungsindikatoren. Aufgebaut sind KNNs aus einzelnen Schichten, welche über sogenannten Aktivierungsfunktionen zusammengeschaltet sind. Dadurch entstehen Verbindungen zwischen den einzelnen Elemente der Schichten, den Neuronen. Die Stärke dieser Verbindung wird durch die Größe des Gewichtes bestimmt, ein Wert der jeder Verbindung zugeordnet ist. Jenachdem welche Werte die Gewichte haben ergibt sich eine andere mathematische Funktion.
Mathematisch lässt sich zeigen, dass eine sehr große Klasse an Funktionen durch diese Art von Struktur darstellen lassen. Eine typische Methode ein KNNs zu trainieren, d.h. die Gewichte anzupassen, ist der Gradientenabstieg. Bei diesem wird der Gradient der sogenannten Verlustfunktion des neuronalen Netzes bezüglich der Gewichte gebildet und anschließend neue, bessere Werte der Gewichte berechnet. Ist dieser Gradient gleich Null, so wurde ein Extremum gefunden. Optimalerweise sollte dabei das globale Minimum der Verlustfunktion gefunden werden.
In vielen Anwendungsfällen ist es von Interesse ein neuronales Netz an einen mobilen Rechner, z.B. dargestellt durch ein Smartphone, zu senden. Ein wesentlicher Aspekt davon besteht in der Übertragung der Netzgewichte. Damit dies im Falle der drahtlosen Übertragung möglichst schnell und energiearm geschehen kann ist es notwendig das KNN zu komprimieren. Dabei werden üblicherweise die Gewichte des Netzes quantisiert. Dadurch kann sich die Leistung des KNN deutlich verändern bzw. verschlechtern. Daher sollte diese Quantisierung möglichst so geschehen, dass die Funktion des KNN möglichst wenig beeinträchtigt ist.

Im Rahmen dieser Arbeit soll untersucht werden, ob durch Anwendung von Erkenntnissen der Differentialgeometrie, der mathematischen Disziplin gekrümmter Flächen, eine verbesserte Kompression von KNNs erreicht werden kann. Hierbei sollte die Krümmung der Verlustfunktion (Loss-Function) mit in das Training des Netzes einfließen. Näheres erläutere ich gerne in einem Gespräch.

Requirements

  • Selbstständiges Arbeiten
  • Solide Mathematikkenntnisse
  • Solide Pythonkenntnisse
  • Grundkenntnisse Quellencodierung/Statistische Methoden der Nachrichtentechnik hilfreich

Contact person: Reemt Hinrichs