Probleme bei der Entwicklung von KI-Systemen, die auf neuronalen Netzwerken basieren

Probleme bei der Entwicklung von KI-Systemen, die auf neuronalen Netzwerken basieren

Das Finden der erfolgreichsten Netzwerkarchitektur wird als die Hauptschwierigkeit bei der Entwicklung eines neuronalen Netzwerks zur Lösung eines bestimmten angewandten Problems angenommen. Dies ist jedoch nur eines der Probleme, die gelöst werden müssen. Wir sollten im Hinterkopf behalten, dass das Finden der optimalen Architektur und Konfiguration für das neuronale Netz kein Tor zum Erfolg ist, denn das Netz muss trainiert werden, bevor die gefundene Lösung verwendet werden kann. Das Training des Netzes bedeutet, solche Kopplungskoeffizienten für Interneuronenverbindungen zu finden, die es uns ermöglichen, die Genauigkeit der Arbeit nicht unter dem geforderten Minimum zu beweisen. Die Werte der Koeffizienten werden als Ergebnis des Trainingsprozesses gefunden. Er wird durchgeführt, indem Datenproben – ähnlich denen, die in einer realen Situation analysiert werden würden – an den Eingang des Netzwerks gesendet werden, während die Kopplungskoeffizienten angepasst werden, um Fehler in der Signalverarbeitung zu minimieren. Schauen wir uns die Schritte an, die bei der Entwicklung eines neuen neuronalen Netzwerks durchlaufen werden müssen.

Aufbau einer Trainingsdatenbank

An dieser Stelle besteht die entscheidende Aufgabe darin, eine qualitativ hochwertige und für das Erlernen geeignete Musterdatenbank aufzubauen. Je nach Aufgabenstellung kann der Erfassungsprozess sehr zeitaufwendig sein und auch den Einsatz von Verwaltungseinrichtungen erfordern

Lassen Sie uns ein Beispiel nehmen. Angenommen, wir müssen ein hochpräzises System implementieren, um festzustellen, ob eine fotografierte VIN (Fahrzeugidentifikationsnummer) von der Karosserie gefälscht (mit dem Ziel, das gestohlene Auto zu legalisieren) oder echt ist.

Zum Trainieren des neuronalen Netzes für diese Aufgabe benötigen Sie natürlich eine Datenbank mit Fotos von VINs – sowohl von gefälschten als auch von echten -, da das neuronale Netz während des Trainingsprozesses Proben von beiden erhalten soll. Auch wenn bei der Beschaffung von echten Nummern keine unüberwindbaren Hürden zu erwarten sind, können nur enge Spezialisten auf diesem Gebiet Fotos von gefälschten Nummern liefern. Es ist zu bedenken, dass ein qualitativ hochwertiges Training eine sehr große Beispieldatenbank erfordert, die mindestens 1000 Beispiele enthalten muss, plus etwa 20% dieser Auswahl als Testset. Die Genauigkeit des Netzwerks wird nicht an den Beispielen gemessen, an denen es trainiert wurde, so wie ein Student in einer Prüfung Aufgaben löst, die nicht ganz dem entsprechen, was er im Studium gelöst hat. Außerdem werden Techniken zur Datenvergrößerung verwendet, um die Trainingsbasis künstlich zu erweitern. Bei den Beispielen für gefälschte Zahlen können dies mehrere Fotos der gleichen Zahl sein, die aus verschiedenen Perspektiven und unter unterschiedlichen Lichtverhältnissen aufgenommen wurden. Dabei ist es wichtig zu verstehen, dass sich das Netz während des Trainings selbst bestimmte Eigenschaften vorgibt, mit denen es anschließend die Eingabedaten verarbeitet; der Netzdesigner hat keinen Einfluss auf diesen Prozess. Daher ist es notwendig, bei der Vorbereitung der Trainingsdatenbank diese Tatsache zu berücksichtigen und verschiedene Beispiele von Eingabedaten zu sammeln. Kehren wir zu unserem VIN-Beispiel zurück. Wenn alle gefälschten VINs nur auf dunkelfarbigen Autos fotografiert werden, wird sich das Netzwerk während des Trainings höchstwahrscheinlich auf diese Tatsache konzentrieren und in der Folge die Erkennung gefälschter VINs auf hellen Autos erschweren; die Fehlalarmquote für dunkle Autos wird höher sein. Es ist wichtig zu beachten, dass die Trainings- und Testbeispiele beschriftet werden müssen, d.h. jedes Beispiel muss mit der richtigen Antwort beschriftet werden. Die Beschriftung ermöglicht es Ihnen, den Prozentsatz der Fehler bei jedem Schritt während des Trainings zu berechnen, um die Kopplungskoeffizienten anzupassen, um festzustellen, ob das Netzwerk den Testfall korrekt verarbeitet hat, um die Gesamtgenauigkeit des Prozesses zu berechnen. Somit beeinflussen Fehler bei der Beschriftung die Qualität des Trainings erheblich.

Repräsentation von Daten für die Einspeisung in den Eingang eines neuronalen Netzes

Nachdem die Trainingsbasis vorbereitet wurde, stellt sich die Frage, wie die Daten für die Eingabe in das neuronale Netz dargestellt werden sollen. Es sollte klar sein, dass das neuronale Netz nur mit Zahlen arbeitet, also müssen die Daten in eine numerische Darstellung konvertiert werden. Obwohl es bei Fotos recht einfach ist, ein Array mit numerischen Pixelwerten zu übermitteln, ist die Aufgabe im Fall von z. B. Texten nicht ganz trivial, obwohl effektive Lösungen gefunden wurden und erfolgreich eingesetzt werden.

Entwurf der Netzwerkarchitektur

Wenn die vorherigen Aufgaben abgeschlossen sind, können Sie direkt mit der Entwicklung der Netzwerkarchitektur fortfahren. Folgendes ist dabei zu beachten:

  • Ein komplexes Netzwerk, mit einer großen Anzahl von Trainingsbeispielen, wird höchstwahrscheinlich eine lange Zeit zum Trainieren benötigen: mehrere Stunden oder manchmal mehr als einen Tag.
  • In den meisten Fällen ist es unmöglich, im Voraus zu sagen, welcher Ansatz oder welcher Satz von Parametern der effektivste ist. Daher ist es notwendig, Hypothesen über die Architektur und die Parameter aufzustellen, die die erforderliche Genauigkeit liefern können, und diese experimentell zu überprüfen.

Daraus lässt sich ableiten, dass die Entwicklungsgeschwindigkeit maßgeblich von der Verfügbarkeit der Hardware-Ressourcen für das Projekt abhängt – in erster Linie von der/den Grafikkarte(n).

Neuronales Netzwerk packen

Die letzte Phase der Projektentwicklung besteht darin, das neuronale Netz in eine für die Verwendung geeignete Form zu verpacken, was bereits eine eher traditionelle Aufgabe für Programmierer und vielleicht auch für Elektronikingenieure ist. Es kann sich dabei um eine Client-Anwendung, eine Server-Anwendung oder ein spezielles Gerät handeln.

Zusammenfassend ist festzuhalten, dass die Verfügbarkeit einer qualitativ hochwertigen Trainingsbasis die Grundlage des Projekts ist. Ohne eine solche Basis wird keine Netzwerkarchitektur hochgenaue Ergebnisse liefern.

IHR TERMIN MIT UNS

Rufen Sie uns an +49 (6283) 3031157 um einen Termin zu vereinbaren.