Programmering

Kør en dyb læringsmodel i Java: En hurtig tage

Vi er glade for at kunne annoncere Deep Java Library (DJL), et open source-bibliotek, der udvikler, træner og kører deep learning-modeller i Java ved hjælp af intuitive API'er på højt niveau. Hvis du er en Java-bruger, der er interesseret i at lære dyb læring, er DJL en fantastisk måde at begynde at lære på. Hvis du er en Java-udvikler, der arbejder med deep learning-modeller, forenkler DJL den måde, du træner og kører forudsigelser på. I dette indlæg vil vi vise, hvordan man kører en forudsigelse med en foruddannet dyb læringsmodel på få minutter.

Før vi begynder at kode, vil vi dele vores motivation for at opbygge dette bibliotek. Ved kortlægning af det dybe læringslandskab fandt vi en overflod af ressourcer til Python-brugere. For eksempel NumPy til dataanalyse; Matplotlib til visualiseringer; rammer som MXNet, PyTorch, TensorFlow og mange flere. Men der er meget få ressourcer til Java-brugere, selvom det er det mest populære sprog i virksomheden. Vi satte os som mål at give millioner af Java-brugere open source-værktøjer til at træne og betjene modeller for dyb læring på et sprog, de allerede er fortrolige med.

DJL er bygget med native Java-koncepter oven på eksisterende dyb læringsrammer. Det giver brugerne adgang til de nyeste innovationer inden for dyb læring og muligheden for at arbejde med avanceret hardware. De enkle API'er fjerner kompleksiteten i udviklingen af ​​dyb læringsmodeller, hvilket gør dem nemme at lære og nemme at anvende. Med det medfølgende sæt foruddannede modeller i model-zoo kan brugerne straks begynde at integrere dyb læring i deres Java-applikationer.

AWS

* Andre rammer understøttes i øjeblikket ikke.

Dyb læring trænger ind i virksomheden på tværs af forskellige brugssager. I detailhandlen bruges det til at forudsige kundernes efterspørgsel og analysere kundeinteraktioner med chatbots. I bilindustrien bruges det til at navigere i autonome køretøjer og finde kvalitetsdefekter i fremstillingen. Og i sportsbranchen ændrer det den måde, spillet spilles på med coaching og træningsindsigt i realtid. Forestil dig at være i stand til at modellere dine modstanderes bevægelser eller bestemme, hvordan du skal placere dit team ved hjælp af dyb læringsmodeller. Du kan lære om, hvordan Seattle Seahawks bruger dyb læring til at informere spilstrategi og fremskynde beslutningstagning i denne artikel.

I dette indlæg deler vi et eksempel, der slog akkord med fodboldfans på vores hold. Vi demonstrerer en modstandsdetekteringsmodel, der identificerer spillere fra et billede ved hjælp af en foruddannet Single Shot Detector-model fra DJL-model-zoo. Du kan køre dette eksempel i både Linux og macOS.

For at bruge DJL med et applikationsprojekt skal du oprette et gradleprojekt med IntelliJ IDEA og føje følgende til din build.gradle-konfiguration.

AWS

Bemærk: Kørselstidsafhængighederne for MXNet er forskellige for Linux- og macOS-miljøer. Henvis tilGitHub-dokumentation.

Vi bruger dette fodboldbillede til detektion.

AWS

Vi kører forudsigelse med kodeblokken delt nedenfor. Denne kode indlæser en SSD-model fra model-zoo, opretter enPrædiktor fra modellen og brugerforudsige funktion til at identificere objekterne i billedet. En hjælpeværktøjsfunktion lægger derefter grænsekasser rundt om de opdagede objekter.

AWS

Denne kode identificerer de tre afspillere i billedet og gemmer resultatet som ssd.png i arbejdsmappen.

AWS

Denne kode og dette bibliotek kan let tilpasses til at teste og køre andre modeller fra model-zoo. Men det sjove stopper ikke der! Du kan bruge modellen til at svare på spørgsmål til at træne din egen tekstassistent eller billedklassificeringsmodellen til at identificere objekter på dagligvarehylden og mange flere. Besøg vores Github repo for flere eksempler.

I dette indlæg introducerede vi DJL, vores ydmyge indsats for at tilbyde Java-brugere den nyeste og største oplevelse af dyb læringsudvikling. Vi demonstrerede, hvordan DJL kan registrere objekter fra billeder på få minutter med vores foruddannede model. Vi giver mange flere eksempler og yderligere dokumentation om DJL GitHub-arkivet.

Vi glæder os over samfundets deltagelse i vores rejse. Gå over til vores Github-arkiv, og deltag i vores slanke kanal for at komme i gang.