Pustaka pembelajaran mesin Java sumber terbuka Oracle

Untuk memenuhi kebutuhan perusahaan dalam ruang pembelajaran mesin, Oracle membuat perpustakaan pembelajaran mesin Tribuo Java-nya tersedia gratis di bawah lisensi sumber terbuka.

Dengan Tribuo, Oracle bertujuan untuk mempermudah pembuatan dan penerapan model pembelajaran mesin di Java, mirip dengan yang telah terjadi dengan Python. Dirilis di bawah lisensi Apache 2.0 dan dikembangkan oleh Oracle Labs, Tribuo dapat diakses dari GitHub dan Maven Central.

Tribuo menyediakan fungsionalitas pembelajaran mesin standar termasuk algoritma untuk klasifikasi, pengelompokan, deteksi anomali, dan regresi. Tribuo juga menyertakan jalur pipa untuk memuat dan mengubah data dan menyediakan rangkaian evaluasi untuk tugas prediksi yang didukung. Karena Tribuo mengumpulkan statistik input, Tribuo dapat mendeskripsikan kisaran setiap input, misalnya. Itu juga menamai fitur, mengelola ID fitur dan ID keluaran di bawah tenda untuk menghindari konflik dan kebingungan ID saat merangkai model, memuat data, dan menampilkan input.

Model Tribuo tahu saat melihat fitur untuk pertama kalinya, yang sangat berguna saat bekerja dengan pemrosesan bahasa natural. Model tahu apa itu keluaran, dengan keluaran yang diketik dengan kuat. Pengembang tidak perlu bertanya-tanya apakah float adalah probabilitas, nilai yang mengalami kemunduran, atau ID cluster. Dengan Tribuo, masing-masing adalah tipe yang terpisah; model dapat mendeskripsikan jenis dan rentang yang diketahuinya. Penggunaan input dan output yang diketik dengan kuat berarti Tribuo dapat melacak proses konstruksi model, dari data titik dimuat melalui train / test split atau transformasi dataset hingga pelatihan dan evaluasi model. Data pelacakan ini dimasukkan ke dalam semua model dan evaluasi.

Sistem asal Tribuo dapat menghasilkan konfigurasi yang membangun kembali pipa pelatihan untuk mereproduksi model atau evaluasi. Selain itu, model tweak dapat dibangun di atas data baru atau hyperparameter. Dengan demikian pengguna selalu tahu apa itu model Tribuo, dari mana asalnya, dan bagaimana cara membuatnya.

Oracle melihat Tribuo mengisi celah di pasar untuk pembelajaran mesin untuk aplikasi perusahaan. Misalnya, pustaka TensorFlow yang dibuat oleh Google menyediakan algoritme inti untuk pembelajaran mendalam, Tribuo menyediakan beberapa algoritme pembelajaran mesin, beberapa di antaranya ada di TensorFlow dan beberapa di antaranya tidak, sementara juga menyediakan antarmuka ke TensorFlow, kata Adam Pocock dari Oracle, anggota utama dari staf teknis Oracle Labs. Dan sementara mesin analitik Apache Spark untuk sistem besar dan terdistribusi, Tribuo ditujukan untuk komputasi yang lebih kecil yang dapat muat pada satu mesin, kata Pocock.

Selain TensorFlow, Tribuo menyediakan antarmuka ke XGBoost dan runtime ONNX, yang memungkinkan model yang disimpan dalam format ONNX atau dilatih di TensorFlow dan XGBoost untuk diterapkan bersama model Tribuo asli. Dukungan untuk format model ONNX memungkinkan penerapan model yang dilatih di Java menggunakan pustaka Python populer seperti PyTorch.

Tribuo berjalan di Java 8 atau lebih baru. Oracle menerima kontribusi kode ke Tribuo berdasarkan Perjanjian Kontributor Oracle. Tribuo telah digunakan secara internal di Oracle dalam produk Fusion Cloud ERP untuk pengenalan dokumen cerdas, misalnya.