Microblink: Kako uz strojno učenje držimo korak s tehnološkim napretkom

Kako uz strojno učenje u Microblinku držimo korak s tehnološkim napretkom

Strojno učenje je u zadnjih nekoliko godina pridobilo veliku pozornost akademske zajednice, industrije te javnosti općenito. Razlog tome je opravdan, algoritmi su po prvi puta u povijesti počeli rješavati određene probleme bolje od čovjeka. Iako se to područje razvija još od pedesetih godina, potrebna je bila kombinacija napretka u hardveru i dostupnosti velike količine podataka kako bi se došlo do priželjkivanih rezultata. Danas strojno učenje daje 'state-of-the-art' rezultate na većini problema u području računalnog vida, a velikom brzinom ulazi i u ostala područja računarstva.

NIPS Microblink

No, što to konkretno znači za jednu tvrtku? Mišljenja sam da većina ne shvaća značaj nedavnih promjena u ovom području. Strojno učenje nije samo još jedan od algoritama koji bi inženjeri trebali uključiti u svoja rješenja, to je preokret u načinu rješavanja problema u računarstvu općenito. Da bi se jedna firma mogla pohvaliti da zasniva svoju tehnologiju na strojnom učenju, potrebna je promjena u načinu poslovanja te razvijanja i razmišljanja svih zaposlenika. Demonstrirat ću vam to na našem primjeru u Microblinku, gdje smo u potpunosti prešli na strojno učenje vrlo rano u odnosu na našu konkurenciju.

Microblink razvija visoko optimizirana rješenja računalnog vida za mobilne uređaje, s naglaskom na tzv. OCR tehnologiju. Glavne odlike naše tehnologije koje klijenti od početka hvale su izrazito brzo izvođenje te velika preciznost i pouzdanost naših algoritama. Dobra rješenja rezultat su konstantnog akademskog istraživanja, beskompromisnog stava prema optimizaciji i, prije svega, odlične komunikacije unutar firme – od direktora do studenta na ljetnoj praksi.

Upravo ta razina komunikacije pokazala se ključnom za brzo i uspješno uvođenje strojnog učenja. Sama ideja i inicijalna demonstracija nove paradigme proizašla je iz diplomskog rada studenta, no za promjenu bilo je potrebno razumijevanje na razini cijele firme. Razvijanje postojeće tehnologije računalnog vida obustavilo se na skoro dvije godine kako bi se uložili resursi i vrijeme u nešto što se tada činilo poprilično riskantno. 

Sve je u podacima

U klasičnom pristupu razvijanja algoritama bez učenja inženjer preuzima na sebe donošenje svih odluka prilikom implementacije rješenja. U strojnom učenju te odluke donose se automatizirano, odnosno uče se na podacima. Stoga uspješnost takvog algoritma izravno ovisi o količini i kvaliteti podataka. Koliko dobro pokrijete domenu problema sa svojim podacima, toliko dobro će se vaš algoritam ponašati.

Ono što se iz našeg iskustva nije pokazalo intuitivno je količina podataka koja se podrazumijeva kada se kaže “puno”. Deset tisuća u strojnom učenju nije velik broj, radi se o potrebi za podacima u milijunskim iznosima. Prikupljanje, pohranjivanje i upravljanje tolikom količinom podataka postaje zaseban izazov, zbog čega Microblink ima poseban tim koji se bavi samo time.

Sustav za učenje

Zahvaljujući javno dostupnim alatima za učenje poput TensorFlowa (koji i sami koristimo), razvijanje prototipa rješenja strojnog učenja je relativno jednostavno. Dojam koji općenito ostavlja nova paradigma je da se radi o plug-n-play pristupu rješavanja problema, odnosno da nije potrebno puno truda i razumijevanja za dobivanje dobrog rješenja. Taj dojam se znatno mijenja prilikom rada na konkretnim problemima u industriji gdje su potrebni state-of-the-art rezultati uz velika ograničenja na kompleksnosti modela.

Kod razvijanja takvih rješenja potreban je detaljan uvid u proces učenja, ponašanje naučenih modela, kao i svojstva podataka na kojima se uči. Stoga se u Microblinku veliki dio vremena i resursa ulaže upravo u razvijanje sustava za učenje koji nam to omogućuje. Neke odlike dosad razvijenog sustava su: mogućnost prikupljanja i upravljanja ogromnim količinama podataka, brzo učenje na GPU serverima čiji broj konstantno raste te detaljna analiza naučenih modela po pitanju preciznosti, ali i performansi na mobilnim uređajima. Konačni cilj je da strojno učenje postane standardni alat unutar cijele firme kako bi se primijenio i izvan naše core tehnologije.

Optimiziranje za mobilne uređaje

Jedan od problema strojnog učenja je da su naučeni modeli koji daju dobre rezultate često preveliki za korištenje na mobilnim uređajima. Stoga većina rješenja u industriji ima neki oblik izvođenja na serveru kako bi se što brže došlo do rezultata modela. Naravno, takav pristup ima svoje mane, kao što je potreba za internetskom vezom i nemogućnost izvođenja u stvarnom vremenu. S obzirom na prethodno spomenuto inzistiranje Microblinka po pitanju performansi, vrlo rano smo počeli s razvijanjem našeg optimiziranog izvođača naučenih modela na mobilnim uređajima. Danas imamo cijeli tim ljudi koji radi na njegovom razvoju te se možemo pohvaliti s dvostruko bržim izvođenjem naših modela u odnosu na Googleov TensorFlow.

Naš najveći projekt dosad je prepoznavanje rukom pisanih jednadžbi za Photomath, u sklopu kojeg smo razvili po našim saznanjima prvi na svijetu u potpunosti učen model za OCR koji radi u stvarnom vremenu na mobilnom uređaju.

Photomath app instantly scans and solves math problems right from your notebook.

Znanost i edukacija

Ono na čemu bi Hrvatska sigurno trebala poraditi je mjera u kojoj industrija surađuje s fakultetima. Iz našeg iskustva nemoguće je razvijati konkurentnu visoku tehnologiju bez konstantnog akademskog istraživanja. Stoga je velik dio Microblinkovih projekata organiziran u suradnji s određenim zavodima na FER-u, a nastojimo proširiti tu suradnju i na ostale fakultete kojima smo u mogućnosti ponuditi konkretne i studentima zanimljive projekte.

Strojno učenje se u praksi zna poprilično razlikovati od teorije, stoga je naš najveći doprinos studentima upravo iskustvo iz industrije. Kako bi što brže to iskustvo prenijeli, ali i popunili eventualne rupe u znanju, naši inženjeri vode redovitu internu edukaciju za studente.

Na taj način studenti u Microblinku vrlo brzo steknu dovoljnu razinu znanja i iskustva za rad na ozbiljnim i izazovnim problemima u industriji.

Naš je najveći izazov, a vjerujemo i za ostale tehnološke firme koje razvijaju konkurentna rješenja, držanje koraka s izrazito brzim napretkom u znanosti i tehnologiji. Jedan od načina kojim pristupamo tom problemu je ranije spomenuta suradnja s fakultetom, a drugi način koji se pokazao ključnim je sudjelovanje na konferencijama.

Nedavno smo probili led kao prva hrvatska firma koja sudjeluje na konferenciji NIPS (Neural Information Processing Systems) – po mnogima najznačajnijem okupljanju stručnjaka u području umjetne inteligencije na svijetu. Dojam nakon prva dva dana bio je da itekako držimo korak s najmoćnijim firmama u tom području te se nadamo da će nam se iduće godine pridružiti još firmi iz Hrvatske. Sudjelovanje na konferencijama smo prihvatili kao sastavni dio našeg napretka, stoga već u travnju idemo i na ICLR (International Conference on Learning Representations), a razmatramo i odlazak na ICDAR (International Conference on Document Analysis and Recognition).

Microblinkov i Photomathov tim na konferenciji
Microblinkov i Photomathov tim na konferenciji Neural Information Processing Systems.

Savjet hrvatskim firmama

Prijelaz tvrtke na strojno učenje nije jednostavan, ali isto tako nije ni opcionalan. Ako mislite da ova nova paradigma nije primjenjiva na vašim problemima, vrlo vjerojatno ste u krivu.

Stručnjaci uspoređuju trenutno razdoblje s onim kada je krenuo internet, a s tom usporedbom će se složiti i naš direktor Damir Sabol, koji je veliki poslovni uspjeh ostvario upravo u tom području osnivanjem Iskona. Brzina prihvaćanja i prilagođavanja strojnom učenju sigurno će odlučivati o sudbini većine kako hrvatskih, tako i svjetskih firmi.

Također bih iskoristio priliku da ukažem na par stvari koje sam primijetio iz razgovora s kolegama iz više hrvatskih firmi. Glavna prepreka u prijelazu na strojno učenje je vrlo rijetko nedostatak motivacije ili znanja inženjera. Velika količina dostupnih materijala za  stjecanje teoretskog znanja dovoljna je za početak, a o motivaciji za rad u području strojnog učenja nije potrebno ni pričati. Ono što gotovo uvijek predstavlja problem je nedovoljna komunikacija unutar firme.

Brz razvoj strojnog učenja u zadnjih par godina ima za posljedicu da upravo studenti i mladi zaposlenici imaju najviše znanja i iskustva u ovom novom području. Kako je za pravi prijelaz na strojno učenje potrebno razumijevanje na razini cijele firme, komunikacija od direktora do studenta je ključna. Moj konkretan savjet onima koji pokušavaju pokrenuti strojno učenje u svojoj firmi je da nađu problem na kojem mogu najlakše dobiti zanimljive rezultate, a zatim to jasno demonstriraju svima ostalima. A općeniti savjet hrvatskim firmama je da ne čekaju po pitanju informiranja i djelovanja na ovu temu.

Sukladno članku 94. Zakona o elektroničkim medijima, komentiranje članaka na Netokraciji dopušteno je samo korisnicima koji ostave svoje ime i prezime te mail adresu i prihvate pravila ponašanja.

Pravila ponašanja

Na Netokraciji za vas stvaramo kvalitetan, autorski potpisan sadržaj i zaista se veselimo vašim kvalitetnim, kontruktivnim komentarima. Poštujmo stoga jedni druge prilikom komentiranja, kao i Zakon, držeći se sljedećih pravila ponašanja:

  • Ne budite 💩: Nema vrijeđanja, diskriminiranja, ni psovanja (osim ako nije osobni izričaj, ali onda neka psovka bude općenita, a ne usmjerena prema nekome). Također, upoznajte se sa stavkom 2. članka 94. Zakona o elektroničkim medijima prije no što ostavite komentar.
  • Samo kvalitetna rasprava, manje trolanja: Ne morate se ni sa kim slagati, ali budite konstruktivni i doprinesite raspravi! Svako trolanje, flameanje, koliko god "plesalo" na granici, leti van.
  • Imenom i prezimenom, nismo Anonymous 👤: Autor sadržaja stoji iza svog sadržaja, stoga stojite i vi iza svog komentara. Koristimo ime i prezime te pravu email adresu.

Kako koristimo podatke koje ostavljate? Bacite oko na našu izjavu o privatnosti.

Sve ostale komentare ćemo s guštom spaliti, jer ne zaslužuju svoje mjesto na internetu.

Komentari

  1. Mirko

    Mirko

    24. 12. 2016. u 3:22 pm Odgovori

    Uz dužno poštovanje danas se svatko bavi inače zahtjevnim strojnim učenjem jer je kao ‘in’. Zar se u startup industriji baš sve mora isprostituirati. Ostavite bar nešto pravim znalcima i entuzijastima

  2. Mirko

    Mirko

    24. 12. 2016. u 3:30 pm Odgovori

    I da dodam, njihov produkt Photomath bazira se na tehnologiji prepoznavanja dokumenata. Istu ali značajno moćniju tehnologiju za prepoznavanje nudi Google već par godina i to za male novce. Slučajno poznajem voditelja tog projekta.

    • Matija

      Matija

      02. 01. 2017. u 8:22 pm Odgovori

      Slobodno isprobajte Google tehnologiju na rukom pisanim jednadžbama. Iz perspektive nekoga tko je napravio iscrpno testiranje i uspoređivanje njihove tehnologije sa našom, moram vam reći da pričate napamet. Ovaj gore komentar pun dužnog poštovanja neću ni komentirat.

Odgovori

Tvoja e-mail adresa neće biti objavljena.

Popularno

Mobilne aplikacije

ZET-ov štrajk iznjedrio nova digitalna rješenja za prijevoz po Zagrebu

Zagreb je jutros ostao bez redovitog tramvajskog i autobusnog prometa, no građani su brzo počeli tražiti alternativna rješenja. Uz organiziranje zajedničkih vožnji, pojavilo se i nekoliko digitalnih projekata koji pokušavaju povezati vozače i putnike.

Vodič

Imate pretplatu na AI alate? Evo što računovođe kažu o ispravnom evidentiranju

U novoj kolumni Bruno Cvitanović, direktor računovodstvenog i konzultantskog servisa Brojevi objašnjava kako računovodstveno tretirati AI alate, što vrijedi za poduzetnike izvan sustava PDV-a i na koje pogreške treba paziti.

Programiranje

Tim od šest developera, dva QA-a i jednog Product Ownera postaje prošlost

Florian Krause ima trideset godina iskustva u razvoju softvera, jedan propali startup i čvrsto mišljenje: tim od šest developera, dva QA-a i jednog product ownera postaje prošlost. Na The Geek Gatheringu u Osijeku objasnio je čime se takva postava zamjenjuje.

Što ste propustili

Pametni automobili

Napokon smo se provozali Verneovim robotaksijem!

Nakon što smo u Zagrebu bezuspješno pokušali uhvatiti Verneov robotaksi putem Uberove aplikacije, zvijezde su se posložile i mi smo dobili poziv koji se ne odbija.

Umjetna inteligencija

Tko zbog AI-ja i dalje ulaže u ljude, a tko otpušta 50% radne snage?

Dok neke tvrtke nastavljaju i zapošljavati i ulagati u AI, druge su odabrale samo potonje. Kako različite tvrtke pristupaju promjenama na tržištu, doznali smo na Automation Summitu.

Novost

Gamepires najavio otpuštanja, smanjuje tim koji radi na SCUM-u

Gamepires, koji stoji iza igre SCUM, smanjuje broj zaposlenih zbog zahtjevnih tržišnih uvjeta. Objava dolazi nekoliko mjeseci nakon što je studio preuzeo britanski Splash Damage.

Vodič

Imate pretplatu na AI alate? Evo što računovođe kažu o ispravnom evidentiranju

U novoj kolumni Bruno Cvitanović, direktor računovodstvenog i konzultantskog servisa Brojevi objašnjava kako računovodstveno tretirati AI alate, što vrijedi za poduzetnike izvan sustava PDV-a i na koje pogreške treba paziti.

Veliki intervjui

Ako AI može napraviti film ili igru, što ostaje kreativcima? Odgovara CEO Nanobita

Može li umjetna inteligencija promijeniti način na koji nastaju filmovi i igre, a da pritom ne žrtvujemo kvalitetu priče i kreativnu viziju? Nanobit već testira odgovor na to pitanje, razvijajući AI produkcijske procese koji otvaraju mogućnost stvaranja sadržaja velikom brzinom.

Netokracija Podcast

Dekan FER-a: AI ne može zamijeniti temeljno znanje inženjera

Umjetna inteligencija mijenja način na koji radimo, ali bez temeljnih znanja nema ni kvalitetnih inženjera ni ozbiljnog tehnološkog napretka. U razgovoru s dekanom FER-a otkrivamo zašto je važno ulagati u istraživanje i razvoj, kako povezati fakultete i industriju te gdje se otvaraju nove prilike za Hrvatsku – od robotike i fizičke umjetne inteligencije do razvoja visokotehnoloških proizvoda.