Skip to content
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
143 commits
Select commit Hold shift + click to select a range
5bba9dd
Create ParallelANN.scala
bgreeven Jul 3, 2014
5874743
Create GeneralizedSteepestDescendAlgorithm
bgreeven Jul 3, 2014
8c3ff4a
Create TestParallelANN.scala
bgreeven Jul 3, 2014
96a0970
Create TestParallelANNgraphics.scala
bgreeven Jul 3, 2014
69b0e59
Update TestParallelANN.scala
bgreeven Jul 3, 2014
3f528b9
Update TestParallelANN.scala
bgreeven Jul 3, 2014
b1972b1
Update TestParallelANNgraphics.scala
bgreeven Jul 3, 2014
dd79615
Update GeneralizedSteepestDescendAlgorithm
bgreeven Jul 30, 2014
1f6de6a
Update ParallelANN.scala
bgreeven Jul 30, 2014
011c10b
Update GeneralizedSteepestDescendAlgorithm
bgreeven Jul 30, 2014
e7e29aa
Update TestParallelANN.scala
bgreeven Jul 30, 2014
100ad4b
Update TestParallelANNgraphics.scala
bgreeven Jul 30, 2014
c9fc3f4
Rename GeneralizedSteepestDescendAlgorithm to GeneralizedSteepestDesc…
bgreeven Aug 1, 2014
78f99dc
Update TestParallelANNgraphics.scala
bgreeven Aug 1, 2014
43103f0
Update and rename GeneralizedSteepestDescendAlgorithm.scala to Genera…
bgreeven Aug 21, 2014
2ecc7d5
Update ParallelANN.scala
bgreeven Aug 21, 2014
d80fe63
Update TestParallelANN.scala
bgreeven Aug 21, 2014
149a726
Update TestParallelANNgraphics.scala
bgreeven Aug 21, 2014
ace988e
Create mllib-ann.md
bgreeven Aug 22, 2014
9f75f59
Update mllib-ann.md
bgreeven Aug 22, 2014
c81de0c
Update mllib-ann.md
bgreeven Aug 22, 2014
3c456b5
Update mllib-ann.md
bgreeven Aug 22, 2014
3807e73
Update mllib-ann.md
bgreeven Aug 22, 2014
5236a9d
Update mllib-ann.md
bgreeven Aug 22, 2014
443ea7e
Update and rename GeneralizedSteepestDescentAlgorithm.scala to Genera…
bgreeven Sep 2, 2014
3466f95
Update ParallelANN.scala
bgreeven Sep 2, 2014
aed39c6
Update TestParallelANN.scala
bgreeven Sep 2, 2014
1972c69
ANN test suite: learning XOR function
avulanov Sep 5, 2014
d04c1d6
Removing dependency on GeneralizedModel and Algorithm
avulanov Sep 9, 2014
bd4508b
Addressing reviewers comments: interface refactoring
avulanov Sep 9, 2014
c032476
Apache header
avulanov Sep 9, 2014
3e90c4d
Update ArtificialNeuralNetwork.scala
bgreeven Sep 10, 2014
71ca727
Update and rename TestParallelANN.scala to TestANN.scala
bgreeven Sep 10, 2014
293d013
Delete TestParallelANNgraphics.scala
bgreeven Sep 10, 2014
18ac979
Update ArtificialNeuralNetwork.scala
bgreeven Sep 15, 2014
daf1375
Update ANNSuite.scala
bgreeven Sep 15, 2014
5e3345c
minor style fixes
avulanov Sep 17, 2014
6c657c3
Forward propagation code sharing
avulanov Sep 17, 2014
5ab0263
Update ArtificialNeuralNetwork.scala
bgreeven Sep 22, 2014
577a13a
Update ANNSuite.scala
bgreeven Sep 22, 2014
d048878
Delete TestANN.scala
bgreeven Sep 22, 2014
90195fa
Create ANNDemo.scala
bgreeven Sep 22, 2014
7c90249
Update mllib-ann.md
bgreeven Sep 22, 2014
87f630b
Update mllib-ann.md
bgreeven Sep 22, 2014
986f37a
Update ArtificialNeuralNetwork.scala
bgreeven Sep 23, 2014
8e3e2d5
Update ArtificialNeuralNetwork.scala
bgreeven Sep 23, 2014
d2b80fe
Update ArtificialNeuralNetwork.scala
bgreeven Sep 23, 2014
1a1c10b
Update ArtificialNeuralNetwork.scala
bgreeven Sep 23, 2014
2a9554b
Update mllib-ann.md
bgreeven Sep 25, 2014
40197ef
Update ANNDemo.scala
bgreeven Sep 25, 2014
589205f
Update ArtificialNeuralNetwork.scala
bgreeven Sep 25, 2014
6390947
Update ANNSuite.scala
bgreeven Sep 25, 2014
abfb0f5
Update ArtificialNeuralNetwork.scala
bgreeven Sep 25, 2014
039df76
Update ArtificialNeuralNetwork.scala
bgreeven Sep 25, 2014
aff66ae
Update ArtificialNeuralNetwork.scala
bgreeven Sep 25, 2014
e78dcd6
Minor style fixes
avulanov Sep 26, 2014
ccbed58
Unit test parameter
avulanov Sep 26, 2014
e3dc003
Update ANNSuite.scala
bgreeven Sep 28, 2014
dd47d75
ANN classifier draft
avulanov Oct 28, 2014
3e7eca1
Update ArtificialNeuralNetwork.scala
bgreeven Oct 28, 2014
f8d5a05
Update ANNSuite.scala
bgreeven Oct 28, 2014
57b9147
XOR classification test with draft
avulanov Oct 28, 2014
c189bb2
ANN classifier refactoring in progress: need random weight function
avulanov Oct 28, 2014
c4baf79
Minor stylefix, add additional function for customized initial weights
avulanov Oct 28, 2014
d0836ed
Model as a parameters for classifier
avulanov Oct 31, 2014
01bbca0
Scala style fix
avulanov Nov 5, 2014
c7e5323
Encoding of output with 0.1 and 0.9 by bgreeven suggestion
avulanov Dec 6, 2014
90f5ae5
Addressing bgreeven comment regarding labels sort, annotations
avulanov Dec 10, 2014
243e667
Create ParallelANN.scala
bgreeven Jul 3, 2014
96ba82a
Create GeneralizedSteepestDescendAlgorithm
bgreeven Jul 3, 2014
576ef79
Create TestParallelANN.scala
bgreeven Jul 3, 2014
c5cb54d
Create TestParallelANNgraphics.scala
bgreeven Jul 3, 2014
1af7f25
Update TestParallelANN.scala
bgreeven Jul 3, 2014
99f0581
Update TestParallelANN.scala
bgreeven Jul 3, 2014
b01fc3c
Update TestParallelANNgraphics.scala
bgreeven Jul 3, 2014
cae6dc2
Update GeneralizedSteepestDescendAlgorithm
bgreeven Jul 30, 2014
9eee6f1
Update ParallelANN.scala
bgreeven Jul 30, 2014
fec8691
Update GeneralizedSteepestDescendAlgorithm
bgreeven Jul 30, 2014
060ae3a
Update TestParallelANN.scala
bgreeven Jul 30, 2014
d1619c8
Update TestParallelANNgraphics.scala
bgreeven Jul 30, 2014
7c3a5b3
Rename GeneralizedSteepestDescendAlgorithm to GeneralizedSteepestDesc…
bgreeven Aug 1, 2014
fef4776
Update TestParallelANNgraphics.scala
bgreeven Aug 1, 2014
c086751
Update and rename GeneralizedSteepestDescendAlgorithm.scala to Genera…
bgreeven Aug 21, 2014
21d95d0
Update ParallelANN.scala
bgreeven Aug 21, 2014
d4764a4
Update TestParallelANN.scala
bgreeven Aug 21, 2014
4623f25
Update TestParallelANNgraphics.scala
bgreeven Aug 21, 2014
10242b7
Create mllib-ann.md
bgreeven Aug 22, 2014
402ad79
Update mllib-ann.md
bgreeven Aug 22, 2014
07218eb
Update mllib-ann.md
bgreeven Aug 22, 2014
f7cfa4e
Update mllib-ann.md
bgreeven Aug 22, 2014
d3211db
Update mllib-ann.md
bgreeven Aug 22, 2014
51ca78b
Update mllib-ann.md
bgreeven Aug 22, 2014
ceaf2f7
Update and rename GeneralizedSteepestDescentAlgorithm.scala to Genera…
bgreeven Sep 2, 2014
6f79c96
Update ParallelANN.scala
bgreeven Sep 2, 2014
2972747
Update TestParallelANN.scala
bgreeven Sep 2, 2014
6740981
ANN test suite: learning XOR function
avulanov Sep 5, 2014
c22c3dc
Removing dependency on GeneralizedModel and Algorithm
avulanov Sep 9, 2014
d320d76
Addressing reviewers comments: interface refactoring
avulanov Sep 9, 2014
181c29b
Apache header
avulanov Sep 9, 2014
7ac9a67
Update ArtificialNeuralNetwork.scala
bgreeven Sep 10, 2014
8e0dc8b
Update and rename TestParallelANN.scala to TestANN.scala
bgreeven Sep 10, 2014
0a3fca6
Delete TestParallelANNgraphics.scala
bgreeven Sep 10, 2014
50ca819
Update ArtificialNeuralNetwork.scala
bgreeven Sep 15, 2014
c2da9b0
Update ANNSuite.scala
bgreeven Sep 15, 2014
73ba0dc
minor style fixes
avulanov Sep 17, 2014
a024c6b
Forward propagation code sharing
avulanov Sep 17, 2014
95e5299
Update ArtificialNeuralNetwork.scala
bgreeven Sep 22, 2014
5a3531b
Update ANNSuite.scala
bgreeven Sep 22, 2014
85050ba
Delete TestANN.scala
bgreeven Sep 22, 2014
5f51305
Create ANNDemo.scala
bgreeven Sep 22, 2014
95ed2a2
Update mllib-ann.md
bgreeven Sep 22, 2014
4b83de4
Update mllib-ann.md
bgreeven Sep 22, 2014
7828327
Update ArtificialNeuralNetwork.scala
bgreeven Sep 23, 2014
84ac2e8
Update ArtificialNeuralNetwork.scala
bgreeven Sep 23, 2014
e2e94b2
Update ArtificialNeuralNetwork.scala
bgreeven Sep 23, 2014
a7fb749
Update ArtificialNeuralNetwork.scala
bgreeven Sep 23, 2014
3995be8
Update mllib-ann.md
bgreeven Sep 25, 2014
b44aec3
Update ANNDemo.scala
bgreeven Sep 25, 2014
6265bd6
Update ArtificialNeuralNetwork.scala
bgreeven Sep 25, 2014
325ffab
Update ANNSuite.scala
bgreeven Sep 25, 2014
099ff85
Update ArtificialNeuralNetwork.scala
bgreeven Sep 25, 2014
1c0aab4
Update ArtificialNeuralNetwork.scala
bgreeven Sep 25, 2014
5db2b60
Update ArtificialNeuralNetwork.scala
bgreeven Sep 25, 2014
b13019a
Minor style fixes
avulanov Sep 26, 2014
e2d4e92
Unit test parameter
avulanov Sep 26, 2014
fefe08e
Update ANNSuite.scala
bgreeven Sep 28, 2014
2fbbe23
Update ArtificialNeuralNetwork.scala
bgreeven Oct 28, 2014
57565ae
Update ANNSuite.scala
bgreeven Oct 28, 2014
bd74834
Minor stylefix, add additional function for customized initial weights
avulanov Oct 28, 2014
12fb903
Update mllib-ann.md
bgreeven Nov 3, 2014
a0d1da0
Update ArtificialNeuralNetwork.scala
bgreeven Nov 3, 2014
9b10666
Update mllib-ann.md
bgreeven Dec 10, 2014
3cf5f9b
Fixes after rebase
avulanov Dec 16, 2014
398e3dd
Matrix form of back-propagation based on avulanov/spark/tree/neuralne…
avulanov Dec 19, 2014
62b1d91
Fix of broken gradient test
avulanov Dec 19, 2014
3f93a2a
Roll/unroll ordering, weight by layer function
avulanov Dec 20, 2014
2fb67f6
Roll and cumulative update optimizations
avulanov Dec 23, 2014
799b277
Update ANNSuite.scala
loachli Dec 27, 2014
6166ad9
Batch ANN
avulanov Jan 10, 2015
5205fda
ANN Classifier batch
avulanov Jan 12, 2015
e660ee8
Divisor fix, train interfaces
avulanov Jan 14, 2015
d18e9b5
Test Context fix
avulanov Jan 23, 2015
5de5bad
Bias averaging fix
avulanov Feb 2, 2015
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Fix of broken gradient test
  • Loading branch information
avulanov committed Jan 23, 2015
commit 62b1d91e982f591f45441836dc3c15e3c4a8454c
Original file line number Diff line number Diff line change
Expand Up @@ -454,7 +454,6 @@ private class ANNLeastSquaresGradient(val topology: Array[Int]) extends Gradient
/* error back propagation */
val (gradientMatrices, errors) = wGradient(weightMatrices, targetVector, outputs)
val weightsGradient = rollWeights(gradientMatrices, errors)

/* error */
val delta = targetVector :- outputs(topology.size - 1)
val outerError = Bsum(delta :* delta) / 2
Expand Down
24 changes: 13 additions & 11 deletions mllib/src/test/scala/org/apache/spark/mllib/ann/ANNSuite.scala
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,10 @@

package org.apache.spark.mllib.ann

import org.apache.spark.mllib.linalg.Vectors
import org.apache.spark.mllib.linalg.{DenseVector, Vectors, Vector}
import org.apache.spark.mllib.util.MLlibTestSparkContext
import org.apache.spark.util.random.XORShiftRandom
import breeze.linalg.{DenseVector => BDV}

import org.scalatest.FunSuite

Expand Down Expand Up @@ -55,15 +56,15 @@ class ANNSuite extends FunSuite with MLlibTestSparkContext {
val rnd = new XORShiftRandom(0)
var cnt = 0
while( cnt<topologyArr.length ) {
val topology = topologyArr(cnt)
val L = topology.length - 1
val noInp = topology(0)
val noOut = topology(L)
val annGradient = new ANNLeastSquaresGradient(topology)
val nextTopology = topologyArr(cnt)
val L = nextTopology.length - 1
val noInp = nextTopology(0)
val noOut = nextTopology(L)
val annGradient = new ANNLeastSquaresGradient(nextTopology)
var noWeights = 0
var l = 1
while(l <= L) {
noWeights += (topology(l - 1) + 1) * topology(l)
noWeights += (nextTopology(l - 1) + 1) * nextTopology(l)
l += 1
}
val arrWeights = new Array[Double](noWeights)
Expand Down Expand Up @@ -98,10 +99,11 @@ class ANNSuite extends FunSuite with MLlibTestSparkContext {
while(w < noWeights)
{
arrTmpWeights(w) = arrTmpWeights(w) + eps
val annModel1 = new ArtificialNeuralNetworkModel(weights, topology)
val brzO1 = annModel1.predict(data).toBreeze
val annModel2 = new ArtificialNeuralNetworkModel(tmpWeights, topology)
val brzO2 = annModel2.predict(data).toBreeze
val iData = Vectors.dense(arrData.slice(0, noInp))
val annModel1 = new ArtificialNeuralNetworkModel(weights, nextTopology)
val brzO1 = annModel1.predict(iData).toBreeze
val annModel2 = new ArtificialNeuralNetworkModel(tmpWeights, nextTopology)
val brzO2 = annModel2.predict(iData).toBreeze
val E1 = .5* (brzO1 - brzOut).dot(brzO1 - brzOut)
val E2 = .5* (brzO2 - brzOut).dot(brzO2 - brzOut)
val dEdW = ( E2 - E1 ) / eps
Expand Down