A neural network library which trained by Spark RDD instances.

DeepSpark 1.2.0

A Neural Network implementation with Scala, Breeze & Spark

Deep Spark follows GPL v2 license.



DeepSpark supports following layered neural network implementation:

  • Fully-connected Neural Network
  • Fully-connected Rank-3 Tensor Network
  • RBF Network
  • Word Embedding Network

Training Methodology

ScalaNetwork supports following training methodologies:

  • Stochastic Gradient Descent w/ L1-, L2-regularization, Momentum.
  • AdaGrad
  • AdaDelta

ScalaNetwork supports following environments:

  • Multi-Threaded Training Environment, which gets input from Spark RDD

Also you can add negative examples with Trainer.setNegativeSampler().

Activation Function

ScalaNetwork supports following activation functions:

  • Linear
  • Sigmoid
  • HyperbolicTangent
  • Rectifier
  • Softplus
  • HardSigmoid
  • HardTanh
  • Softmax
  • LeakyReLU

And for RBF Layer,

  • Gaussian RBF
  • Inverse Quadratic RBF
  • HardGaussian RBF (= Hard Inverse Quadratic RBF)


Here is some examples for basic usage.


Currently ScalaNetwork supports Scala version 2.10 ~ 2.11.

  • Stable Release is 1.2.0

If you are using SBT, add a dependency as described below:

libraryDependencies += "com.github.nearbydelta" %% "deepspark" % "1.2.0"

If you are using Maven, add a dependency as described below: