Führen Sie ein Deep Learning-Modell in Java aus: Eine schnelle Einführung

Wir freuen uns, Ihnen die Deep Java Library (DJL) vorstellen zu können, eine Open Source-Bibliothek zum Entwickeln, Trainieren und Ausführen von Deep Learning-Modellen in Java unter Verwendung intuitiver APIs auf hoher Ebene. Wenn Sie ein Java-Benutzer sind, der Deep Learning lernen möchte, ist DJL eine großartige Möglichkeit, um mit dem Lernen zu beginnen. Wenn Sie ein Java-Entwickler sind, der mit Deep-Learning-Modellen arbeitet, vereinfacht DJL das Trainieren und Ausführen von Vorhersagen. In diesem Beitrag zeigen wir Ihnen, wie Sie in wenigen Minuten eine Vorhersage mit einem vorab trainierten Deep-Learning-Modell durchführen können.

Bevor wir mit dem Codieren beginnen, möchten wir unsere Motivation zum Aufbau dieser Bibliothek teilen. Bei der Untersuchung der Deep-Learning-Landschaft haben wir eine Fülle von Ressourcen für Python-Benutzer gefunden. Zum Beispiel NumPy für die Datenanalyse; Matplotlib für Visualisierungen; Frameworks wie MXNet, PyTorch, TensorFlow und viele mehr. Es gibt jedoch nur sehr wenige Ressourcen für Java-Benutzer, obwohl dies die beliebteste Sprache in Unternehmen ist. Wir haben uns zum Ziel gesetzt, Millionen von Java-Benutzern Open-Source-Tools zur Verfügung zu stellen, mit denen sie Deep-Learning-Modelle in einer Sprache trainieren und bereitstellen können, mit der sie bereits vertraut sind.

DJL basiert auf nativen Java-Konzepten auf vorhandenen Deep-Learning-Frameworks. Es bietet Benutzern Zugriff auf die neuesten Innovationen im Bereich Deep Learning und die Möglichkeit, mit modernster Hardware zu arbeiten. Die einfachen APIs abstrahieren die Komplexität bei der Entwicklung von Deep-Learning-Modellen und machen sie leicht zu erlernen und anzuwenden. Mit dem gebündelten Satz vorgefertigter Modelle im Modellzoo können Benutzer sofort damit beginnen, Deep Learning in ihre Java-Anwendungen zu integrieren.

AWS

* Andere Frameworks werden derzeit nicht unterstützt.

Deep Learning dringt in einer Vielzahl von Anwendungsfällen in Unternehmen ein. Im Einzelhandel wird es verwendet, um die Kundennachfrage vorherzusagen und Kundeninteraktionen mit Chatbots zu analysieren. In der Automobilindustrie wird es verwendet, um autonome Fahrzeuge zu navigieren und Qualitätsmängel in der Fertigung zu finden. Und in der Sportbranche verändert sich die Art und Weise, wie das Spiel mit Echtzeit-Coaching- und Trainingserkenntnissen gespielt wird. Stellen Sie sich vor, Sie könnten die Bewegungen Ihres Gegners modellieren oder mithilfe von Deep-Learning-Modellen bestimmen, wie Sie Ihr Team positionieren können. In diesem Artikel erfahren Sie, wie die Seattle Seahawks Deep Learning verwenden, um die Spielstrategie zu informieren und die Entscheidungsfindung zu beschleunigen.

In diesem Beitrag teilen wir ein Beispiel, das die Fußballfans unserer Mannschaft begeistert hat. Wir zeigen ein Einspruchserkennungsmodell, das Spieler anhand eines Bildes anhand eines vorab trainierten Single Shot Detector-Modells aus dem DJL-Modellzoo identifiziert. Sie können dieses Beispiel sowohl unter Linux als auch unter macOS ausführen.

Um DJL mit einem Anwendungsprojekt zu verwenden, erstellen Sie ein Gradle-Projekt mit IntelliJ IDEA und fügen Sie Ihrer build.gradle-Konfiguration Folgendes hinzu.

AWS

Hinweis: Die Laufzeitabhängigkeiten für MXNet unterscheiden sich für Linux- und MacOS-Umgebungen. Weitere Informationen finden Sie in der  GitHub-Dokumentation .

Wir verwenden dieses Fußballbild zur Erkennung.

AWS

Wir führen die Vorhersage mit dem unten angegebenen Codeblock durch. Dieser Code lädt ein SSD-Modell aus dem Modell-Zoo, erstellt ein  Predictor Modell aus dem Modell und verwendet die  predict Funktion, um die Objekte im Bild zu identifizieren. Eine Hilfsdienstfunktion legt dann Begrenzungsrahmen um die erkannten Objekte an.

AWS

Dieser Code identifiziert die drei Spieler im Bild und speichert das Ergebnis als ssd.png im Arbeitsverzeichnis.

AWS

Dieser Code und diese Bibliothek können einfach angepasst werden, um andere Modelle aus dem Modellzoo zu testen und auszuführen. Aber der Spaß hört hier nicht auf! Sie können das Frage-Antwort-Modell verwenden, um Ihren eigenen Textassistenten zu trainieren, oder das Bildklassifizierungsmodell, um Objekte im Lebensmittelregal und vieles mehr zu identifizieren. Bitte besuchen Sie unser Github Repo für weitere Beispiele.

In diesem Beitrag haben wir DJL vorgestellt, unsere bescheidene Anstrengung, Java-Benutzern die neueste und beste Erfahrung in der Entwicklung von Deep Learning zu bieten. Wir haben mit unserem vorab trainierten Modell gezeigt, wie DJL Objekte aus Bildern in wenigen Minuten erkennen kann. Wir bieten viele weitere Beispiele und zusätzliche Dokumentationen zum DJL GitHub-Repository.

Wir begrüßen die Teilnahme der Community an unserer Reise. Gehen Sie zu unserem Github-Repository und treten Sie unserem Slack-Kanal bei, um loszulegen.