skorch-dev/skorch

A scikit-learn compatible neural network library that wraps PyTorch

解決する課題

PyTorchとscikit-learnのギャップを埋め、ユーザーがPyTorchニューラルネットワークをscikit-learnのエスティメータ(estimator)のように使用できるようにします。これにより、PyTorchを使用する際に、トレーニングループ、検証分割、ハイパーパラメータチューニングのための繰り返しのボイラープレートコードを書く必要がなくなります。

仕組み

SkorchはPyTorchモジュールをscikit-learn互換のインターフェースにラップします。NeuralNetClassifierや同様のラッパーを提供することで、基盤となるモデルはPyTorchニューラルネットワークのまま、前処理のためのPipelineや自動ハイパーパラメータ最適化のためのGridSearchCVといった標準的なscikit-learnツールを使用できるようにします。

対象者

モデル構築にはPyTorchの柔軟性を求めつつ、scikit-learnが提供する合理化された標準的なワークフローやユーティリティツールを好む機械学習エンジニアやデータサイエンティスト。

ハイライト

  • Scikit-learn互換性: PipelineおよびGridSearchCVとの完全な統合。
  • トレーニングユーティリティ: Early stopping、チェックポインティング、学習率スケジューラの組み込みサポート。
  • トレーニング管理: CLIおよびJupyter用のプログレスバー、およびパラメータの凍結/解除機能。
  • エコシステム統合: Hugging Faceおよびガウス過程用のGPyTorchと互換性があります。

関連

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