hasktorch/hasktorch
Tensors and neural networks in Haskell
何を解決するか
Hasktorch は Haskell プログラミング言語を使用してテンソルやニューラルネットワークを構築する方法を提供し、強力な型安全性を持つ関数型環境の中で PyTorch のコア C++ ライブラリの力を活用できるようにします。
動作方法
これは PyTorch が共有するコア C++ ライブラリ(libtorch)を活用する Haskell ライブラリとして機能します。低レベルの Foreign Function Interface (FFI) とコード生成を使用して、PyTorch の C++ 機能を Haskell にバインドしています。ライブラリは、CPU、CUDA、Apple の MPS バックエンドを含むさまざまなプラットフォーム向けの公式 libtorch バイナリをビルド時に自動的にダウンロードおよびキャッシュします。
対象ユーザー
関数型プログラミング言語を使ってディープラーニングモデルやテンソル演算を実装したい Haskell 開発者や研究者。
特徴
- PyTorch との統合: PyTorch が使用する同じ C++ コアに基づいて構築されています。
- クロスプラットフォーム対応: Linux (CPU/CUDA)、macOS Apple Silicon (CPU/MPS)、macOS Intel (CPU) で動作します。
- 自動セットアップ: ビルドプロセス中に必要な libtorch バイナリを自動的にダウンロードおよびキャッシュします。
- 柔軟なビルドツール: Cabal、Stack、Nix と互換性があります。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト