deeplearning4j/deeplearning4j
Suite of tools for deploying and training deep learning models using the JVM. Highlights include model import for keras, tensorflow, and onnx/pytorch, a modular and tiny c++ library for running math code and a java based math library on top of the core c++ library. Also includes samediff: a pytorch/tensorflow like library for running deep learn...
解決する課題
Java仮想マシン(JVM)上でディープラーニングアプリケーションを構築・デプロイするための完全なエコシステムを提供し、開発者がPythonに限定されることなく、Java、Scala、Kotlin、Clojureなどの言語を使用してAI開発を行えるようにします。
仕組み
このエコシステムは、いくつかの特化したライブラリで構成されています:
- DL4J: 複雑なニューラルネットワーク(MultiLayerNetworksおよびComputationGraphs)の作成や、Kerasからのモデルインポートを行うためのハイレベルAPI。
- ND4J: 数学演算を処理する線形代数ライブラリ。CPUおよびGPUでのハードウェアアクセラレーションのためにC++バックエンド(LibND4J)を利用します。
- SameDiff: カスタムレイヤーや損失関数のために、TensorFlowに似たグラフベースのアプローチを使用する自動微分フレームワーク。
- DataVec: HDFS、Spark、画像、ビデオ、オーディオを含む様々な形式から機械学習データを前処理するためのETLツール。
- Python4J: JVM内でのCPythonの実行を可能にします。
対象者
Java、Scala、Kotlin、またはClojureアプリケーションにディープラーニングを統合する必要があるJVMベースの開発者や企業、およびApache Sparkを介した分散トレーニングを必要とするユーザー。
ハイライト
- JVMネイティブ: Javaおよびその他のJVM言語をフルサポート。
- ハードウェアアクセラレーション: CUDA GPUおよび様々なCPUアーキテクチャ(x86、ARM、PowerPC)をサポート。
- 相互運用性: KerasおよびTensorFlow (.pb形式) からのモデルインポートが可能。
- 分散トレーニング: Apache Spark上でのトレーニングを統合サポート。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト