microsoft/hummingbird

Hummingbird compiles trained ML models into tensor computation for faster inference.

解決する課題

Hummingbird は、従来の機械学習モデル(決定木やランダムフォレストなど)の推論速度が遅いという問題を、それらをテンソル計算として実行可能にすることで解決します。これにより、ユーザーが元のモデルを再設計することなく、通常はディープラーニングフレームワーク向けに予約されているハードウェアアクセラレーション(GPU)や最適化技術を活用できるようになります。

仕組み

学習済みの従来の ML モデルを、ベクトル化および GPU 実行と互換性のある通常の計算に再構成することで、テンソル計算にコンパイルします。例えば、決定木のトラバーサルを一連の行列乗算(GEMM 戦略)に変換し、モデルのロジックを PyTorch などのフレームワークが効率的に処理できるテンソルに変換します。

対象ユーザー

scikit-learn、LightGBM、XGBoost などの従来の ML ライブラリを使用しており、PyTorch、TorchScript、ONNX、TVM などのニューラルネットワークバックエンドを使用してモデル推論を高速化したいデータサイエンティストや ML エンジニア向けに設計されています。

ハイライト

  • フレームワークの柔軟性: モデルを PyTorch、TorchScript、ONNX、TVM に変換します。
  • 幅広いモデルサポート: scikit-learn の決定木やランダムフォレスト、および LightGBM や XGBoost の分類器や回帰器と互換性があります。
  • シームレスな統合: scikit-learn パターンに従う統一された推論 API を提供し、推論コードを変更せずにモデルを交換できます。
  • ハードウェアアクセラレーション: ターゲットのテンソルフレームワークを介して、従来の ML モデルのネイティブ GPU アクセラレーションを有効にします。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト