Oracleova biblioteka Java strojnog učenja s otvorenim izvorima

U želji da udovolji potrebama poduzeća u prostoru strojnog učenja, Oracle svoju biblioteku strojnog učenja Tribuo Java čini dostupnom besplatno pod licencom otvorenog koda.

S Tribuom Oracle želi olakšati izgradnju i primjenu modela strojnog učenja na Javi, slično onome što se već dogodilo s Pythonom. Izdan pod licencom Apache 2.0 i razvijen od strane Oracle Labs, Tribuo je dostupan s GitHub-a i Maven Central-a.

Tribuo nudi standardnu ​​funkcionalnost strojnog učenja, uključujući algoritme za klasifikaciju, grupiranje, otkrivanje anomalija i regresiju. Tribuo također uključuje cjevovode za učitavanje i transformiranje podataka i pruža niz procjena za podržane zadatke predviđanja. Budući da Tribuo prikuplja statistiku o ulaznim podacima, Tribuo može opisati opseg svakog ulaznog podatka, na primjer. Također imenuje značajke, upravljajući ID-jevima značajki i izlaznim ID-ovima ispod haube kako bi se izbjegli sukobi i zbrke ID-a prilikom lančanog modeliranja, učitavanja podataka i uključivanja unosa.

Model Tribuo zna kada prvi put vidi značajku, što je osobito korisno u radu s obradom prirodnog jezika. Modeli znaju što su izlazi, s tim da se izlazi jako upisuju. Programeri se ne trebaju pitati je li float vjerojatnost, regresirana vrijednost ili ID klastera. S Tribuom je svaki od njih zaseban tip; model može opisati vrste i domete za koje zna. Korištenje jako tipiziranih ulaza i izlaza znači da Tribuo može pratiti postupak izrade modela, od točke do koje se podaci učitavaju kroz vlakove / ispitne podjele ili transformacije skupova podataka, do obuke i evaluacije modela. Ovi podaci o praćenju uključuju se u sve modele i ocjene.

Sustav provenijencije Tribuo može generirati konfiguraciju koja obnavlja cjevovod za obuku radi reprodukcije modela ili procjene. Također, dotjerani model može se graditi na novim podacima ili hiperparametrima. Stoga korisnici uvijek znaju što je Tribuo model, odakle je potekao i kako ga stvoriti.

Oracle vidi kako Tribuo popunjava prazninu na tržištu strojnog učenja za poslovne programe. Primjerice, dok Googleova biblioteka TensorFlow nudi osnovne algoritme za duboko učenje, Tribuo nudi nekoliko algoritama strojnog učenja, od kojih su neki u TensorFlowu, a neki nisu, a istovremeno pruža sučelje za TensorFlow, rekao je Oracleov Adam Pocock, glavni član tehničkog osoblja Oracle Labs. I dok je Apache Spark analitički mehanizam za velike distribuirane sustave, Tribuo je za manja izračunavanja koja mogu stati na jedan stroj, rekao je Pocock.

Uz TensorFlow, Tribuo nudi sučelja za XGBoost i ONNX vrijeme izvođenja, omogućavajući modele pohranjene u ONNX formatu ili obučene u TensorFlow i XGBoost da budu raspoređeni zajedno s izvornim Tribuo modelima. Podrška za format modela ONNX omogućuje implementaciju na Javi modela obučenih pomoću popularnih Python biblioteka kao što je PyTorch.

Tribuo radi na Javi 8 ili novijoj. Oracle prihvaća doprinose kodom Tribuu prema Ugovoru o suradnicima Oraclea. Tribuo se već koristi interno u Oracleu u proizvodu Fusion Cloud ERP za inteligentno prepoznavanje dokumenata, na primjer.