Pokrenite model dubokog učenja na Javi: brzi pristup

Uzbuđeni smo što najavljujemo Deep Java Library (DJL), biblioteku otvorenog koda za razvoj, obuku i pokretanje modela dubokog učenja u Javi pomoću intuitivnih API-ja na visokoj razini. Ako ste korisnik Jave zainteresiran za učenje dubokog učenja, DJL je sjajan način za početak učenja. Ako ste programer Java koji radi s modelima dubokog učenja, DJL će pojednostaviti način treninga i pokretanja predviđanja. U ovom ćemo postu pokazati kako se predviđanje pokreće unaprijed obučenim modelom dubokog učenja za nekoliko minuta.

Prije nego započnemo s kodiranjem, želimo podijeliti svoju motivaciju za izgradnju ove knjižnice. Istražujući krajolik dubokog učenja, pronašli smo obilje resursa za korisnike Pythona. Na primjer, NumPy za analizu podataka; Matplotlib za vizualizacije; okvire kao što su MXNet, PyTorch, TensorFlow i mnogi drugi. Ali resursa za korisnike Jave ima vrlo malo, iako je to najpopularniji jezik u poduzeću. Krenuli smo s ciljem pružanja milijunima Java korisnika alata otvorenog koda za osposobljavanje i posluživanje modela dubokog učenja na jeziku koji im je već poznat.

DJL je izgrađen s izvornim Java konceptima povrh postojećih okvira za duboko učenje. Korisnicima nudi pristup najnovijim inovacijama u dubokom učenju i mogućnost rada s vrhunskim hardverom. Jednostavni API-ji apstrahiraju složenost koja je uključena u razvoj modela dubokog učenja, čineći ih jednostavnim za učenje i jednostavnim za primjenu. Uz paket unaprijed obučenih modela u model-zoo-u, korisnici mogu odmah započeti integriranje dubokog učenja u svoje Java programe.

AWS

* Ostali okviri trenutno nisu podržani.

Dubinsko učenje prodire u poduzeće kroz razne slučajeve uporabe. U maloprodaji se koristi za predviđanje potražnje kupaca i analizu interakcije kupaca s chatbotovima. U automobilskoj industriji koristi se za navigaciju autonomnim vozilima i pronalazak kvalitetnih nedostataka u proizvodnji. A u sportskoj industriji mijenja način na koji se igra s uvidom u treniranje i treninge u stvarnom vremenu. Zamislite da možete modelirati poteze protivnika ili odrediti kako postaviti svoj tim koristeći modele dubokog učenja. U ovom članku možete naučiti o tome kako Seattle Seahawks koristi duboko učenje kako bi informirao strategiju igre i ubrzao donošenje odluka.

U ovom postu dijelimo primjer koji je pogodio nogometne navijače iz našeg tima. Demonstriramo model otkrivanja prigovora koji identificira igrače sa slike pomoću unaprijed obučenog modela Single Shot Detector iz DJL model-zoološkog vrta. Ovaj primjer možete pokrenuti i na Linuxu i na MacOS-u.

Da biste koristili DJL s projektom aplikacije, stvorite gradle projekt s IntelliJ IDEA i dodajte sljedeće u svoju build.gradle konfiguraciju.

AWS

Napomena: ovisnosti o izvođenju za MXNet razlikuju se za Linux i macOS okruženja. Pogledajte  dokumentaciju GitHub-a .

Ovu nogometnu sliku koristimo za otkrivanje.

AWS

Predviđanje pokrećemo s blokom koda koji se dijeli u nastavku. Ovaj kôd učitava SSD model iz zoološkog vrta modela, stvara a  Predictor od modela i koristi  predict funkciju za prepoznavanje objekata na slici. Uslužna pomoćna funkcija tada postavlja ograničene okvire oko otkrivenih objekata.

AWS

Ovaj kod identificira tri igrača na slici i sprema rezultat kao ssd.png u radni direktorij.

AWS

Ovaj kôd i biblioteka mogu se lako prilagoditi za testiranje i pokretanje drugih modela iz modela-zoo. Ali zabava tu ne staje! Model za odgovaranje na pitanja možete koristiti za osposobljavanje vlastitog pomoćnika za tekst ili model klasifikacije slika za prepoznavanje predmeta na polici s namirnicama i mnogih drugih. Molimo posjetite naš Github repo za dodatne primjere.

U ovom smo postu predstavili DJL, naš skromni napor da korisnicima Java ponudimo najnovije i najveće iskustvo dubokog razvoja učenja. Demonstrirali smo kako DJL može otkriti predmete sa slika u nekoliko minuta pomoću našeg unaprijed obučenog modela. Pružamo još puno primjera i dodatne dokumentacije o spremištu DJL GitHub.

Pozdravljamo sudjelovanje zajednice na našem putovanju. Krenite u naše spremište Github i pridružite se našem slack kanalu da započnete.