トップ OSS紹介 Deeplearning4j

Deeplearning4j

NRIのOpenStandiaが提供するDeeplearning4j最新情報

バージョンアップ情報

Deeplearning4j情報

Deeplearning4jとは

Deeplearning4j(ディープラーニングフォージェイ)は、Javaで実装されたディープラーニングのライブラリーであり、ディープラーニングのアルゴリズムを幅広くサポートしたフレームワークです。

以下はDeeplearning4jを使って実装した、手書き数字を識別するサンプルプログラムです。

ディープラーニングでは、まず大量のデータを学習して、最適なパラメータを導出します。そして、そのパラメータを使って、予測を行います。このプログラムでは6万件の手書き数字の画像データを学習して、同様の画像データを99%の精度で識別できます。

Deeplearning4jには、以下のような多くの実装が含まれています。

  • 制限付きボルツマンマシン
  • ディープビリーフネット
  • ディープオートエンコーダー
  • 積層雑音除去オートエンコーダー
  • 再帰型ニューラルテンソルネットワーク
  • word2vec
  • doc2vec
  • GloVe

これらのアルゴリズムにはすべて、HadoopやSparkと統合可能な分散型の並列バージョンが含まれています。

Deeplearning4jは、Adam Gibson氏が率いる機械学習のグループによって開発されたオープンソースソフトウェアで、2017年10月にEclipse Foundationに寄稿されました。現在は、Konduit社が中心となって開発が行われています。

Deeplearning4jを使った開発にはEclipseやIntelliJなどのIDEが使用できます。ビルドにはMavenまたはGradleを利用します。

図: IntelliJでの開発
図: IntelliJでの開発

Deeplearning4jは、Javaで実装されており、Scala、Clojure、KotlinなどのJVM言語と互換性があります。基礎となる計算はC、C++、Cudaで実装されており、動作は高速です。Javaはエンタープライズで最も広く使用されている言語であり、他システムとの連携を考慮すると、Deeplearning4jが活用できるケースは非常に多いと考えられます。

類似プロダクト

Deeplearning4jと同類のフレームワークにはTensorFlowやPyTorchがありますが、いずれもPythonで実装されています。Javaのディープラーニングのフレームワークであれば、Deeplearning4jが最も有名で高機能です。

Deeplearning4jのライセンス

Deeplearning4jのライセンスは、「Apacheライセンスバージョン2」(Apache License version2)というライセンスに基づいて公開され、営利、非営利を問わず、誰でも自由かつ無償で利用・改変・再配布できるようになっています。

オープンソース年間サポートサービス

OpenStandiaではOSSを安心してご利用いただけるように、オープンソース年間サポートサービスをご提供しております。
サポートしているOSSは下記ページをご参照ください。

お気軽にお問い合わせください

関連OSS

  • TensorFlow

    TensorFlow

    テンソルフロー。Googleが開発を行っている機械学習/ディープラーニング/多層ニューラルネットワークライブラリです。

  • PyTorch

    PyTorch

    パイトーチ。オープンソースのPythonの機械学習フレームワークです。

  • Keras

    Keras

    ケラス。TensorFlowの上で実行可能な高水準のニューラルネットワークライブラリです。

オープンソースに関する様々な課題、OpenStandiaがまるごと解決します。
下記コンテンツも
あわせてご確認ください。