Deeplearning4j

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
Deeplearning4j
Original author(s) Adam Gibson
Developer(s) various
Stable release 0.0.4 / 24 August 2015; 8 years ago (2015-08-24)
Development status active
Written in Java, Scala, CUDA, C
Operating system Linux, OSX, Windows, Android, CyanogenMod
Platform Cross-platform
Type Natural language processing, Deep learning, Machine vision, Artificial intelligence
License Apache 2.0
Website deeplearning4j.org

Lua error in package.lua at line 80: module 'strict' not found. Deeplearning4j is an open source deep learning library written for Java and the Java Virtual Machine[1][2] and a computing framework with wide support for deep learning algorithms.[3] Deeplearning4j includes implementations of the restricted Boltzmann machine, deep belief net, deep autoencoder, stacked denoising autoencoder and recursive neural tensor network, as well as word2vec, doc2vec and GloVe. These algorithms all include distributed parallel versions that integrate with Hadoop and Spark.[4] It is commercially supported by the startup Skymind.

Introduction

Deeplearning4j relies on the widely used programming language, Java - though it is compatible with Clojure and includes a Scala API. It is powered by its own open-source numerical computing library, ND4J, and works with both CPUs and GPUs.[5][6] Deeplearning4j is an open source project[7] primarily developed by a machine learning group in San Francisco led by Adam Gibson.[8][9] Deeplearning4j is the only open-source project listed on Google's Word2vec page for its Java implementation.[10]

Deeplearning4j has been used in a number of commercial and academic applications. The code is hosted on GitHub[11] and a support forum is maintained on Google Groups.[12]

The framework is composable, meaning shallow neural nets such as restricted Boltzmann machines, convolutional nets, autoencoders and recurrent nets can be added to one another to create deep nets of varying types.

Distributed

Training with Deeplearning4j takes place in a cluster. Neural nets are trained in parallel via iterative reduce, which works on Hadoop/YARN and on Spark.[8][13] Deeplearning4j also integrates with Cuda kernels to conduct pure GPU operations, and works with distributed GPUs.

Scientific computing for the JVM

Deeplearning4j includes an n-dimensional array class using ND4J that allows for scientific computing in Java and Scala, similar to the functionality that Numpy provides to Python. It's effectively based on a library for linear algebra and matrix manipulation in a production environment.

Canova vectorization lib for machine-learning

Canova vectorizes[clarification needed] various file formats and data types using an input/output format system similar to Hadoop's use of MapReduce. A work in progress, Canova is designed to vectorize CSVs, images, sound, text and video. Canova can be used from the command line.

Text and NLP

Deeplearning4j includes a vector space modeling and topic modeling toolkit, implemented in Java and integrating with parallel GPUs for performance. It is specifically intended for handling large text collections.

Deeplearning4j includes implementations of tf–idf, deep learning, and Mikolov's word2vec algorithm, doc2vec and GloVe – reimplemented and optimized in Java. It relies on t-SNE for word-cloud visualizations.

Real-world use cases and integrations

Real-world use cases for Deeplearning4j include fraud detection for the financial sector,[14] anomaly detection in industries such as manufacturing, recommender systems in e-commerce and advertising,[15] and image recognition. Deeplearning4j has integrated with other machine-learning platforms such as RapidMiner and Prediction.io.[16]

Related libraries

See also

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Lua error in package.lua at line 80: module 'strict' not found.
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. 8.0 8.1 Lua error in package.lua at line 80: module 'strict' not found.
  9. Lua error in package.lua at line 80: module 'strict' not found.
  10. Lua error in package.lua at line 80: module 'strict' not found.
  11. Deeplearning4j source code
  12. Deeplearning4j Google Group
  13. Lua error in package.lua at line 80: module 'strict' not found.
  14. http://www.skymind.io/finance/
  15. http://www.skymind.io/commerce/
  16. https://www.rapidminerchina.com/en/products/shop/product/deeplearning4j/

External links

  • Official website
  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.