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 アクセラレーションを有効にします。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト