Programování

Knihovna strojového učení Java s otevřenými zdroji Java

Společnost Oracle zpřístupňuje svoji knihovnu strojového učení Tribuo Java, aby uspokojila potřeby podniků v prostoru strojového učení, a to zdarma pod licencí open source.

S Tribuo si Oracle klade za cíl usnadnit vytváření a nasazení modelů strojového učení v Javě, podobně jako tomu již bylo u Pythonu. Vydáno pod licencí Apache 2.0 a vyvinuté Oracle Labs, Tribuo je přístupné z GitHub a Maven Central.

Tribuo poskytuje standardní funkce strojového učení včetně algoritmů pro klasifikaci, shlukování, detekci anomálií a regrese. Tribuo také zahrnuje kanály pro načítání a transformaci dat a poskytuje sadu vyhodnocení pro podporované úlohy predikce. Protože Tribuo shromažďuje statistiky o vstupech, může Tribuo popsat například rozsah každého vstupu. Jmenuje také funkce, správu ID funkcí a ID výstupů pod kapotou, aby nedocházelo ke konfliktům ID a záměnám při řetězení modelů, načítání dat a vytváření vstupů.

Model Tribuo ví, kdy vidí funkci poprvé, což je zvláště užitečné při práci se zpracováním přirozeného jazyka. Modely vědí, co jsou výstupy, přičemž výstupy jsou silně typovány. Vývojáři se nemusí zajímat, jestli je float pravděpodobnost, regresní hodnota nebo ID klastru. S Tribuo je každý z nich samostatným typem; model může popsat typy a rozsahy, o kterých ví. Použití silně zadaných vstupů a výstupů znamená, že Tribuo může sledovat proces výstavby modelu, od okamžiku, kdy se data načítají přes rozdělení vlaku / testu nebo transformace datové sady až po trénink a vyhodnocení modelu. Tato sledovací data jsou zapracována do všech modelů a hodnocení.

Systém Tribuo provenience může generovat konfiguraci, která znovu sestaví tréninkový kanál pro reprodukci modelu nebo vyhodnocení. Vylepšený model lze také postavit na nových datech nebo hyperparametrech. Uživatelé tak vždy vědí, co je model Tribuo, odkud pochází a jak jej vytvořit.

Oracle vidí Tribuo vyplňování mezery na trhu strojového učení pro podnikové aplikace. Například zatímco knihovna TensorFlow vytvořená společností Google poskytuje základní algoritmy pro hluboké učení, Tribuo poskytuje několik algoritmů strojového učení, z nichž některé jsou v TensorFlow a některé nikoli, a zároveň poskytují rozhraní pro TensorFlow, uvedl Adam Pocock z Oracle, hlavní člen technického personálu Oracle Labs. A zatímco analytický modul Apache Spark je určen pro velké distribuované systémy, Tribuo je určen pro menší výpočty, které se vejdou na jeden stroj, uvedl Pocock.

Kromě TensorFlow poskytuje Tribuo rozhraní pro XGBoost a runtime ONNX, což umožňuje nasazení modelů uložených ve formátu ONNX nebo trénovaných v TensorFlow a XGBoost společně s nativními modely Tribuo. Podpora formátu modelu ONNX umožňuje nasazení v Javě modelů trénovaných pomocí populárních knihoven Pythonu, jako je PyTorch.

Tribuo běží na Javě 8 nebo novější. Oracle přijímá příspěvky kódu společnosti Tribuo na základě smlouvy s přispěvateli Oracle. Tribuo již bylo interně používáno ve společnosti Oracle v produktu Fusion Cloud ERP například pro inteligentní rozpoznávání dokumentů.

$config[zx-auto] not found$config[zx-overlay] not found