Deeplearning4j
Deeplearning4j is developed by a Silicon Valley startup called Skymind and can be found at www.deeplearning4j.org. It is open source and runs in many different environments, including Apache Spark.
The most important components of the framework are as follows:
- Deeplearning4j runtime: This is the core module that allows you to define and execute all sorts of neural networks on top of Apache Spark, but it does not use Apache Spark directly; it uses a a tensor library similar to NumPy for Python.
- ND4J/ND4S: This tensor library is really the heart of Deeplearning4j. It can also be used standalone and provides accelerated linear algebra on top of CPUs and GPUs. For porting code to a GPU, no code changes are required, since a JVM property configures the underlying execution engine, which can also be a CUDA backend for nVidia GPU cards.
In contrast to H2O, Deeplearning4j doesn't necessarily need any additional components to be installed, since it is a native Apache Spark application...