handwriting.learners.som
package. The file
SOM6.java
in the handwriting.learners
package is an example of a
fully configured classifier. Create your own with different sized maps.
handwriting.learners.som
SelfOrgMapTest.java:
Contains jUnit tests for all of the above methods you must complete. For each method
to complete, its unit test from this file is stated below:
FloatDrawing.java:
Represents a SOM node. Complete the following methods:
euclideanDistance
(passes testEuclideanDistance()
)
averageIn()
(passes testAvg()
)
SOMPoint.java
: Used for referencing an output node of the SOM. No code to complete,
but it is used heavily in SelfOrgMap.java
.
SelfOrgMap.java
: Skeletal implementation. Complete the following methods:
computeDistanceWeight()
(passes testDistanceWeight()
)
effectiveLearningRate()
(passes testLearningRate()
)
bestFor()
and train()
(passes testTrain()
)
SOMRecognizer.java
: Transforms an unsupervised SOM into a classifier. Complete the following method:
findLabelFor()
(passes testLabel()
)
Achievement | Points |
---|---|
Passes testEuclideanDistance() | 3 |
Passes testAvg() | 3 |
Passes testDistanceWeight() | 3 |
Passes testLearningRate() | 3 |
Passes testTrain() | 8 |
Passes testLabel() | 5 |
Ran fourteen experiments, from 2 to 8 letters, alternating training/testing sets | 20 |
Paper quantitatively assesses each of the fourteen experiments | 4 |
Paper includes at least one visualization, and insightfully discusses its implications | 5 |
Paper insightfully discusses how the SOM performs with respect to their data set | 4 |
Paper insightfully discusses how the SOM performs in comparison with the multi-layer perceptron | 4 |
Paper insightfully discusses the distinctions in performance as the number of letters increases | 4 |
Paper insightfully discusses the impact of variations in the map size | 4 |