Perpustakaan pembelajaran mesin sumber terbuka Oracle

Ingin memenuhi keperluan perusahaan di ruang pembelajaran mesin, Oracle menyediakan perpustakaan pembelajaran mesin Tribuo Java yang tersedia secara percuma di bawah lesen sumber terbuka.

Dengan Tribuo, Oracle bertujuan untuk menjadikannya lebih mudah untuk membina dan menggunakan model pembelajaran mesin di Java, mirip dengan apa yang telah berlaku dengan Python. Dikeluarkan di bawah lesen Apache 2.0 dan dikembangkan oleh Oracle Labs, Tribuo dapat diakses dari GitHub dan Maven Central.

Tribuo menyediakan fungsi pembelajaran mesin standard termasuk algoritma untuk klasifikasi, pengelompokan, pengesanan anomali, dan regresi. Tribuo juga menyertakan saluran paip untuk memuat dan mengubah data dan menyediakan rangkaian penilaian untuk tugas ramalan yang disokong. Oleh kerana Tribuo mengumpulkan statistik input, Tribuo dapat menggambarkan rentang setiap input, misalnya. Ini juga memberi nama ciri, menguruskan ID ciri dan ID output di bawah tenda untuk mengelakkan konflik ID dan kekeliruan ketika merantai model, memuat data, dan memodifikasi input.

Model Tribuo tahu kapan ia melihat ciri untuk pertama kalinya, yang sangat berguna ketika bekerja dengan pemprosesan bahasa semula jadi. Model tahu apa outputnya, dengan output ditaip dengan kuat. Pembangun tidak perlu tertanya-tanya apakah pengapungan adalah kebarangkalian, nilai kemunduran, atau ID kluster. Dengan Tribuo, masing-masing adalah jenis yang berasingan; model itu dapat menerangkan jenis dan julat yang diketahuinya. Penggunaan input dan output yang sangat ditaip bermaksud Tribuo dapat melacak proses pembinaan model, dari titik data dimuat melalui perpecahan kereta api / ujian atau transformasi set data hingga latihan dan penilaian model. Data penjejakan ini dimasukkan ke dalam semua model dan penilaian.

Sistem keturunan Tribuo dapat menghasilkan konfigurasi yang membina semula saluran latihan untuk menghasilkan semula model atau penilaian. Juga, model tweak dapat dibina berdasarkan data baru atau hyperparameter. Oleh itu pengguna selalu tahu apa model Tribuo, dari mana asalnya, dan bagaimana membuatnya.

Oracle melihat Tribuo mengisi jurang di pasaran untuk pembelajaran mesin untuk aplikasi perusahaan. Sebagai contoh, sedangkan perpustakaan TensorFlow buatan Google menyediakan algoritma teras untuk pembelajaran mendalam, Tribuo menyediakan beberapa algoritma pembelajaran mesin, beberapa di antaranya ada di TensorFlow dan beberapa di antaranya tidak, sementara juga menyediakan antara muka kepada TensorFlow, kata Adam Pocock dari Oracle, anggota utama kakitangan teknikal Oracle Labs. Dan walaupun enjin analitik Apache Spark adalah untuk sistem diedarkan yang besar, Tribuo adalah untuk pengiraan yang lebih kecil yang dapat dipasang pada satu mesin, kata Pocock.

Sebagai tambahan kepada TensorFlow, Tribuo menyediakan antara muka ke XGBoost dan masa berjalan ONNX, yang membolehkan model yang disimpan dalam format ONNX atau dilatih dalam TensorFlow dan XGBoost untuk digunakan bersama dengan model Tribuo asli. Sokongan untuk format model ONNX memungkinkan penyebaran di Java model yang dilatih menggunakan perpustakaan Python yang popular seperti PyTorch.

Tribuo berjalan di Java 8 atau lebih baru. Oracle menerima sumbangan kod kepada Tribuo berdasarkan Perjanjian Kontributor Oracle. Tribuo telah digunakan secara dalaman di Oracle dalam produk Fusion Cloud ERP untuk pengiktirafan dokumen pintar, misalnya.