Arrow Electronics / Nvidia

Künstliche Intelligenz im Edge-Computing

4. März 2019, 9:30 Uhr | Łukasz Grzymkowski, Arrow Electronics
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 1

Vorteile einer Edge-Lösung

Dienstgüte und Zuverlässigkeit des Systems hängen direkt vom Bereitstellungsmodell ab. Da der cloud-basierte Ansatz stets eine Online-Verbindung benötigt, kann das System unzuverlässig machen. Was passiert, wenn der Server nicht erreichbar ist? Es muss letztendlich eine Entscheidung getroffen werden. In solchen Fällen ist eventuell die Edge-Lösung der einzig gangbare Weg, beispielsweise bei autonomen Fahrzeugen oder in isolierten Umgebungen. Man sollte zudem grundsätzlich verstehen, dass Algorithmen, die auf der Grundlage von maschinellem Lernen generiert werden, inhärent probabilistisch sind, das Ergebnis also mit einem bestimmten Unsicherheitsfaktor behaftet ist. In vielen Fällen übersteigt die Genauigkeit oder Zuverlässigkeit der Vorhersagen von KI-Systemen jedoch bereits diejenige von menschlichen Prognosen. Ob der Systemdesigner eine Wahrscheinlichkeit von 90 Prozent oder 99 Prozent als ausreichend betrachtet, hängt dabei von der Anwendung und ihren Anforderungen ab. 

Abschließend muss der Designer bei den Überlegungen hinsichtlich der geeigneten Hardware und Software zusätzlich berücksichtigen, dass sich die Komplexität der Entwicklung und die Skalierbarkeit verschiedener Lösungen stark unterscheiden können. Beispielsweise ist ein Bereitstellen von Modellen auf einer Jetson-Plattform von Nvidia (siehe Bild 1 und Kasten Künstliche Intelligenz bei Arrow Electronics) dank der verfügbaren Software-Werkzeuge nahezu reibungslos möglich, was die Entwicklungskosten für die Software signifikant senken kann.

Daten und Training: Der Weg zur richtigen Antwort

Daten sind die eigentliche Währung für Künstliche-Intelligenz. Indem Unternehmen diese Daten sammeln, verarbeiten und analysieren, können sie wichtige und bedeutende Einblicke in Geschäftsprozesse und menschliche Verhaltensweisen gewinnen oder bestimmte Muster erkennen. Daher verwundert es nicht, dass Internet-Unternehmen wie Google oder Amazon so stark in die Speicherung und Verarbeitung der Daten investieren, auf die sie Zugriff haben. Bei Deep-Learning etwa nutzt man die Datensätze, um neuronale Netzwerke anzulernen. Im Allgemeinen steigen die Genauigkeit und Robustheit des Modells mit der Größe des Datensatzes. Um noch weniger anfällig für Einflüsse durch Umgebungsfaktoren – etwa Sonneneinstrahlung, verschmutzte Objektive, Rauschen, Vibrationen, und so weiter – zu sein, werden die Daten normalerweise augmentiert, indem beispielsweise Bilder gedreht oder beschnitten werden und künstliches Rauschen hinzugefügt wird.

Es gibt unterschiedliche Herangehensweisen für das Training eines Modells: Im Prinzip sind dies überwachtes, nicht überwachtes und unterstütztes Lernen. Beim überwachten Lernen wird der Datensatz gekennzeichnet und setzt sich im Falle der Bildklassifizierung aus Paaren von Bildern und Labeln zusammen. Das Bild wird durch die Schichten des Modells propagiert und jede Schicht ergänzt eine weitere Abstraktion, um schlussendlich den Klassifizierungswert zu erhalten. Das Ergebnis wird mit dem Label verglichen und der Fehler wird dann wieder vom Endpunkt zum Ausgangspunkt hin zurückgegeben, um die Gewichte zu aktualisieren. Bei nicht überwachtem Lernen bleibt der Datensatz ohne Kennzeichnung und das Modell entwickelt die Muster von selbst. Bestärkendes Lernen lässt sich am besten am Beispiel eines Videospiels erklären. Ziel ist es, die Punktzahl durch eine Reihe aufeinander folgender Aktionen zu maximieren und dabei auf Rückmeldungen aus der Umgebung zu reagieren, beispielsweise beim Ausführen einer Reihe aufeinander folgender Steuerentscheidungen, um von einem Ort zu einem anderen zu gelangen.

Bereitstellung und Inferenz: Die ungelöste Herausforderung

Der Großteil des Trainings tiefer neuronaler Netzwerke findet typischerweise auf großen GPUs statt. Im Hinblick auf Inferenzen eignen sich unterschiedliche Plattformen. Abhängig von den Anforderungen können Modelle auf Bausteinen mit Mikrocontrollern mit Arm Cortex-M, Cortex-A mit GPUs oder neuronalen Beschleunigern, FPGAs oder spezialisierten ASICs laufen. Diese unterscheiden sich natürlich in puncto Rechenleistung, Energieverbrauch und Kosten.

Die Herausforderung besteht nun darin, ein Modell effizient und einfach umzusetzen. Die Modelle werden normalerweise mithilfe von Deep-Learning-Frameworks wie Tensorflow von Google oder Caffe von Berkeley AI Research trainiert. Diese Modelle müssen in ein Format umgewandelt werden, das auf der Inferenzmaschine auf dem Edge-Gerät laufen kann, beispielsweise im ONNX-Format (Open Neural Network Exchange) oder als einfache Datei mit Gewichten für Arm CMSIS-NN in Cortex-M. Durch Verfahren wie das Pruning (das Löschen von Werten, die nahe Null sind), Quantisierung (Wechsel von Float32 zu Integer) oder Kompression lassen sich die Gewichte zusätzlich optimieren.

Am Ende übernimmt eine Inferenzmaschine den Großteil der Arbeit am Gerät. Es liegt dabei in erster Linie bei den Anbietern, Unterstützung für die Zielprozessoren und Komponenten für Frameworks wie OpenCL oder OpenCV zu bieten. Leider ist der Markt momentan äußerst zersplittert und es gibt viele verschiedene geschützte SDKs (Software Development Kits) oder Werkzeuge und keinen einheitlichen Standard für die Bereitstellung und Inferenz auf Edge-Geräten. Vielversprechend sind Standards wie ONNX, die zeigen, dass das Interesse an einer Standardisierung innerhalb der Industrie zunehmend größer wird.

Künstliche Intelligenz ist der größte Trend der letzten Jahre. Für Edge-Geräte liegen die größten Schwierigkeiten für eine Nutzung in einem mangelnden Verständnis sowie Problemen bei Bereitstellung und Betrieb. Während sich die Anbieter bemühen, Kunden für sich zu gewinnen und ihre eigenen Lösungen als alleinigen Standard durchzusetzen, versteht Arrow Electronics die verschiedenen Ansätze seiner Partner und kann erkennen, in welchen Fällen unterschiedliche Plattformen für Kunden den größten Nutzen bieten.

Künstliche Intelligenz bei Arrow Electronics

KI ist für Arrow Electronics nicht neu, aber wir denken, es ist nun an der Zeit für einen »Bottom-Up«-Ansatz, was bedeutet, dass wir alle verfügbaren Optionen berücksichtigen und an die Kundenanforderungen anpassen müssen.

Im September 2018 unterzeichneten Arrow Electronics und Nvidia eine weltweite Vereinbarung, um den Nvidia Jetson Xavier, einen weltweit einzigartigen Computer für KI, Robotik und Edge Computing, für Unternehmen auf der ganzen Welt zur Verfügung zu stellen, als Grundlage für eine neue Generation von autonomen Maschinen.

Jetson Xavier – verfügbar als Entwicklerkit, das Kunden für Prototypentwürfe verwenden können – wird durch eine umfassende Software zum Erstellen von KI-Anwendungen unterstützt.

Dazu gehören die Nvidia JetPack- und DeepStream-SDKs sowie die Softwarebibliotheken CUDA, cuDNN und TensorRT. Herzstück ist der neue Nvidia Xavier-Prozessor, der mehr Rechenleistung bietet als eine leistungsstarke Workstation und in drei energieeffizienten Betriebsmodi erhältlich ist.

Die technischen Spezifikationen für Jetson AGX Xavier sind eine 512-Kern-Volta-GPU mit Tensor-Cores, eine 8-Core-ARM-V8.2-64-Bit-CPU, 8 MB L2 und 4 MB L3, ein 16 GB 256-Bit LPDDR4x | 137 GB / s, Speicher 32 GB eMMC 5.1, 2 NVDLA-Beschleuniger, Vision-Beschleuniger 7-Wege-VLIW-Vision-Prozessor, Encoder / Decoder (2x) 4Kp60 | HEVC / (2x) 4Kp60 | 12-Bit-Unterstützung, Größe 105 mm x 105 mm als Bereitstellungsmodul (Jetson AGX Xavier).

passend zum Thema


  1. Künstliche Intelligenz im Edge-Computing
  2. Vorteile einer Edge-Lösung

Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Arrow Electronics

Weitere Artikel zu NVIDIA Corporate

Weitere Artikel zu Mikroprozessoren

Weitere Artikel zu Grafikprozessoren

Weitere Artikel zu Künstliche Intelligenz (KI)

Weitere Artikel zu Industrie-Computer / Embedded PC