Kako ovih dana susrećemo nezaobilazne teme IT svijeta - strojno učenje (machine learning) i neuralne mreže (deep neural networks research), tako i nedavno održana Ruby konferencija EuRuKo2017 nije mogla proći bez predavanja na tu temu.
Ovogodišnja konferencija EuRuKo, održana 29. i 30. rujna u Budimpešti, okupila je veliki broj ljubitelja programskog jezika Ruby. Preko 700 Ruby developera iz SAD-a, Kolumbije, Brazila, Velike Britanije, Njemačke, Austrije, Hrvatske, Bosne i Hercegovine, Srbije, Poljske, Japana i drugih zemalja okupilo se s ciljem raspraviti o najnovijim gemovima i svojim iskustvima te dati svoj doprinos unaprjeđenju već dugo etabliranog progoramskog jezika. Jedan od predavača bio je Arafat Khan iz Indije, koji je predstavio Tensorflow Ruby API.
Što je to TensorFlow?
TensorFlow je open source library koji su razvili Googleovi stručnjaci na području umjetne inteligencije i danas je jedan od najboljih i najinteresantnijih AI sustava koji postoji. Važno je naglasiti kako je dostupan svima te ga svi mogu koristiti i razvijati za svoje potrebe.
Arafat Khan navodi da je TensorFlow fleksibilan i spreman za korištenje. Radi na sustavima Ubuntu, Window, MAC OS X, raznim mobilnim platformama pa čak i na Raspberry Pi-ju. Može se instalirati za korištenje u programskim jezicima Java, Go, C i Python.
Popularnost projekta na GitHubu pokazuje koliko je projekt interesantan developerima i bilo je samo pitanje vremena kada će se moći koristiti pomoću jednostavne Ruby sintakse.
Kakve veze to ima s Rubyjem?

Arafat Khan je kao student na Indian Institute of Technology u Kharagpuru napravio jednostavan gem tensorflow.rb s kojim omogučuje relativno laganu implementaciju naprednih zadataka poput prepoznavanja slika. Koristio je SWIG kao kompiler za komunikaciju između C i C++ s Rubyjem.
Za primjer je, pomoću gema, analizirao sliku Budimpeše te je softver prepoznao da se na slici nalaze zgrade, mostovi i dvorci. To se za neupućene osobe čini kao nešto što nije vrlo napredno, ali sposobnost opisivanja fotografije, do prije nekoliko godina, bio je zadatak koji su samo ljudi mogli izvršiti.
Analizirati fotografije izazovno je za aplikacije i developere pa se gotovo rješenje napisano razumljivom sintaksom čini kao san.
Kako započeti?
Kao i uvijek odgovor na ovo pitanje treba potražiti na GitHubu, gdje se put do cilja objašnjava korak po korak, a osim na GitHubu, implementacija gema i jednostavni primjeri mogu se naći i na blogpostovima koje je napisao Arafat Khan i na službenim stranicama TensorFlowa.
Potrebno je još istaknuti i TensorBoard kao alat kojim se olakšava vizualizacija podataka te je idealan za početnike. Uvijek kada se uči nešto novo, dolazi do određenih nesporazuma i nejasnoća pa je izrazito korisno imati razumljivo sučelje koje pokazuje podatke organizirane u grafovima. Svaka osoba koja se interesira za TensorFlow trebala bi bar posjetiti stranice na kojima se opisuje TensorBoard.
Na koncu…
Točno razlikovanje oblika i boja te klasifikacija prema određenim parametrima bez ljudskog utjecaja potpuno je novi iskorak u tehnološkom razvoju, a budući da je projekt dostupan svima, njegov rast je zajamčen. Ruby zajednica do sada je bila uvijek spremna prihvatiti i implementirati novine, a tensorflow.rb otvara veliki broj novih mogućnosti te su posljedice i promjene koje donosi nepredvidive. Korištenje Tensorflowa i sve bržeg i popularnijeg Rubyja obećavajuća je kombinacija koja bi mogla donijeti značajne promjene.
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:
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.