org.neuroph.nnet.learning
Class UnsupervisedHebbianLearning
java.lang.Object
java.util.Observable
org.neuroph.core.learning.LearningRule
org.neuroph.core.learning.IterativeLearning
org.neuroph.core.learning.UnsupervisedLearning
org.neuroph.nnet.learning.UnsupervisedHebbianLearning
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Runnable
- Direct Known Subclasses:
- BinaryHebbianLearning, InstarLearning, OjaLearning, OutstarLearning
public class UnsupervisedHebbianLearning
- extends UnsupervisedLearning
Unsupervised hebbian learning rule.
- Author:
- Zoran Sevarac
- See Also:
- Serialized Form
Method Summary |
protected void |
adjustWeights()
Adjusts weights for the output neurons |
void |
doLearningEpoch(TrainingSet trainingSet)
This method does one learning epoch for the unsupervised learning rules. |
protected void |
updateNeuronWeights(Neuron neuron)
This method implements weights update procedure for the single neuron |
Methods inherited from class java.util.Observable |
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
UnsupervisedHebbianLearning
public UnsupervisedHebbianLearning()
- Creates new instance of UnsupervisedHebbianLearning algorithm
UnsupervisedHebbianLearning
public UnsupervisedHebbianLearning(NeuralNetwork neuralNetwork)
- Creates an instance of UnsupervisedHebbianLearning algorithm for the specified
neural network
- Parameters:
neuralNetwork
- neural network to train
doLearningEpoch
public void doLearningEpoch(TrainingSet trainingSet)
- This method does one learning epoch for the unsupervised learning rules.
It iterates through the training set and trains network weights for each
element. Stops learning after one epoch.
- Overrides:
doLearningEpoch
in class UnsupervisedLearning
- Parameters:
trainingSet
- training set for training network
adjustWeights
protected void adjustWeights()
- Adjusts weights for the output neurons
- Specified by:
adjustWeights
in class UnsupervisedLearning
updateNeuronWeights
protected void updateNeuronWeights(Neuron neuron)
- This method implements weights update procedure for the single neuron
- Parameters:
neuron
- neuron to update weights