org.neuroph.nnet.learning
Class SupervisedHebbianLearning
java.lang.Object
java.util.Observable
org.neuroph.core.learning.LearningRule
org.neuroph.core.learning.IterativeLearning
org.neuroph.core.learning.SupervisedLearning
org.neuroph.nnet.learning.LMS
org.neuroph.nnet.learning.SupervisedHebbianLearning
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Runnable
public class SupervisedHebbianLearning
- extends LMS
Supervised hebbian learning rule.
- Author:
- Zoran Sevarac
- See Also:
- Serialized Form
Method Summary |
protected void |
learnPattern(SupervisedTrainingElement trainingElement)
Trains network with the pattern from the specified training element |
protected void |
updateNetworkWeights(java.util.Vector<java.lang.Double> desiredOutput)
This method implements weight update procedure for the whole network for
this learning rule |
protected void |
updateNeuronWeights(Neuron neuron,
double desiredOutput)
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 |
SupervisedHebbianLearning
public SupervisedHebbianLearning()
- Creates new instance of SupervisedHebbianLearning algorithm
SupervisedHebbianLearning
public SupervisedHebbianLearning(NeuralNetwork neuralNetwork)
- Creates new instance of SupervisedHebbianLearning algorithm for the specified
neural network.
- Parameters:
neuralNetwork
- neural network to train
learnPattern
protected void learnPattern(SupervisedTrainingElement trainingElement)
- Trains network with the pattern from the specified training element
- Overrides:
learnPattern
in class SupervisedLearning
- Parameters:
trainingElement
- supervised training element which contains input and desired
output
updateNetworkWeights
protected void updateNetworkWeights(java.util.Vector<java.lang.Double> desiredOutput)
- This method implements weight update procedure for the whole network for
this learning rule
- Overrides:
updateNetworkWeights
in class LMS
- Parameters:
desiredOutput
- desired network output
updateNeuronWeights
protected void updateNeuronWeights(Neuron neuron,
double desiredOutput)
- This method implements weights update procedure for the single neuron
- Parameters:
neuron
- neuron to update weights
desiredOutput
desired output of the neuron