← all repositories
oracle/tribuo

Tribuo: A Java ML Library That Keeps Receipts

Tribuo exists to give Java shops a comprehensive ML stack that unifies native algorithms and wrapped backends under a provenance-first API.

1.4k stars Java ML Frameworks
tribuo
Not currently ranked — collecting fresh signals.
star history

What it does Tribuo covers the full prediction lifecycle—classification, regression, clustering, anomaly detection, and multi-label tasks—in pure Java. It supplies its own algorithms (Random Forest, K-Means, HDBSCAN*, linear models, and others) alongside standardized wrappers for TensorFlow, XGBoost, LibSVM, LibLinear, and ONNX Runtime, handling data loading, featurization, transformation, and evaluation under one API.

The interesting bit Every serialized model carries a built-in provenance object that acts like an immutable birth certificate: it records creation time, data source, applied transformations, hyperparameters, and the exact trainer used. This provenance can be exported as JSON or hashed for external tracking, which is a rarity in JVM ML libraries and directly answers the audit question of “how was this built?”

Key highlights

  • Pure Java core runs on Java 8+, with optional native interfaces for TensorFlow, ONNX Runtime, and XGBoost (x86_64 Windows, macOS, Linux; ARM64 support varies by upstream)
  • Exports models to ONNX for deployment outside the JVM
  • Includes information-theoretic feature selection (MIM, CMIM, mRMR, JMI) and a LIME implementation for tabular and text explanations
  • Trainers are configurable via the OLCUT system using XML or JSON, so experiments can be repeated without recompilation
  • Model card and reproducibility packages require Java 17 and are excluded from the tribuo-all Maven bundle

Caveats

  • Native library interfaces are limited by upstream binary availability; TensorFlow and XGBoost lack ARM64 Maven Central artifacts, though ONNX Runtime supports macOS ARM64 and Linux aarch64 as of the 4.3 release
  • Clustering, anomaly detection, and multi-label classification are explicitly flagged as incomplete, with more implementations expected over time
  • The LIME explainer handles text and tabular data but does not support images

Verdict Grab it if you need ML on the JVM with built-in auditability and ONNX export. Pass if you are happily entrenched in Python or need a research-grade algorithm playground.

Frequently asked

What is oracle/tribuo?
Tribuo exists to give Java shops a comprehensive ML stack that unifies native algorithms and wrapped backends under a provenance-first API.
Is tribuo open source?
Yes — oracle/tribuo is open source, released under the Apache-2.0 license.
What language is tribuo written in?
oracle/tribuo is primarily written in Java.
How popular is tribuo?
oracle/tribuo has 1.4k stars on GitHub.
Where can I find tribuo?
oracle/tribuo is on GitHub at https://github.com/oracle/tribuo.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.