oracle/tribuo

Tribuo - A Java machine learning library

What it solves

Tribuo は、さまざまな予測タスクのために統一インターフェースを提供するために設計された Java ベースの機械学習ライブラリです。データのロード、特徴量化、および変換のプロセスを簡価化し、異なるアルゴリズムや基盤となるライブラリを使用して、モデルを訓練、評価、およびデプロイするための標準化された方法を提供します。

How it works

Tribuo は、独自の ML アルゴリズムの実装を提供すると同時に、他の強力なライブラリ(TensorFlow, XGBoost, LibLinear, および LibSVM)をラップして、一貫性のある API を提供します。多クラス分類、回帰、クラスタリング、および異常検知を含む幅広いタスクをサポートしています。

主な技術的特徴は以下の通りです:

  • Configuration System: OLCUT を使用して XML または JSON ファイルを介してトレーナーの構成が可能であり、再現性のあるモデル構築を実現します。
  • Provenance: すべてのモデルと評価結果には、作成時間、データの識別、変換、およびハイパーパラメータを記録するシリアライズ可能な系統(Provenance)オブジェクトが含まれています。
  • Interoperability: 多くのモデルは ONNX 形式でエクスポートして、他の言語やプラットフォームで使用可能です。
  • Deployment: Java 8+ をサポートし、高性能コンポーネントのためのネイティブライブラリインターフェースを提供します。

Who it’s for

Python に切り替えることなく、機械学習機能をアプリケーションに直接統合したい Java 開発者、および Provenance を通じて厳格なモデル追跡と再現性を必要とする研究者やエンジニア。

Highlights

  • Unified Interface: TensorFlow や XGBoost を含む複数の ML ライブラリのための単一 API。
  • Comprehensive Task Support: 分類、回帰、クラスタリング、および異常検知をサポート。
  • Causal Tracking: モデルの履歴とハイパーパラメータを追跡するための組み込みの系統(Provenance)システム。
  • ONNX Export: クロスプラットフォーム展開のためのモデルのエクスポート機能。
  • LIME Implementation: LIME アルゴリズムを使用して分類器の予測を説明するためのツールを含んでいます。