- Documentation for Spark's 2.0 MLP: http://spark.apache.org/docs/latest/api/scala/index.html#org.apache.spark.ml.classification.MultilayerPerceptronClassifier
- For a quick introduction to MLP, see the following:
- See Spark MLP source code at https://github.com/apache/spark/blob/master/mllib/src/main/scala/org/apache/spark/ml/classification/MultilayerPerceptronClassifier.scala
Classic papers needed to understand deep belief networks (absolute minimum) and its contrast to a simple MLP:
- Deep belief networks: https://www.cs.toronto.edu/~hinton/absps/fastnc.pdf
- Stacked auto encoders: http://papers.nips.cc/paper/3048-greedy-layer-wise-training-of-deep-networks.pdf
- Sparse representation: http://www.cs.nyu.edu/~ranzato/publications/ranzato-nips06.pdf
Some of the important API calls within MultilayerPerceptronClassifier:
The BlockSize by default is set to 128 - you should only start adjusting this parameter when you feel you have mastered the MLP in full:
- def setLayers(value: Array[Int]): MultilayerPerceptronClassifier.this.type
- def setFeaturesCol(value: String): MultilayerPerceptronClassifier
- def setLabelCol(value: String): MultilayerPerceptronClassifier
- def setSeed(value: Long): MultilayerPerceptronClassifier.this.type
- def setBlockSize(value: Int): MultilayerPerceptronClassifier.this.type
- def setSolver(value: String): MultilayerPerceptronClassifier.this.type