org.knime.base.data.neural.methods
Class RProp

java.lang.Object
  extended by org.knime.base.data.neural.methods.RProp

public class RProp
extends Object

Implementation of the RProp Algorithm, as proposed by M. Riedmiller, H.Braun: 'A Direct Adaptive Method for Faster backpropagation Learning: The RPROP Algorithm', Proc. of the IEEE Intl. Conf. on Neural Networks 1993.

Author:
Nicolas Cebron, University of Konstanz

Constructor Summary
RProp()
          Constructor, uses default learning rate of 0.1, increase parameter 1.2 and decrease parameter 0.5 as proposed in the paper.
RProp(double etaPlus, double etaMinus, double etaNull)
           
 
Method Summary
 double[] evaluate(double[] in)
          Evaluates input and returns output of output neurons.
 double getEtaMinus()
          Get negative learning rate.
 double getEtaNull()
          Get starting value for eta.
 double getEtaPlus()
          Get positive learning rate.
 void setEtaMinus(double etaMinus)
          Set negative learning rate.
 void setEtaNull(double etaNull)
          set starting value for eta.
 void setEtaPlus(double etaPlus)
          Set positive learning rate.
static double sgn(double d)
          Method computes the sign of a double number.
 void train(MultiLayerPerceptron nn, Double[][] samples, Double[][] outputs)
          Train the neural network once.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RProp

public RProp()
Constructor, uses default learning rate of 0.1, increase parameter 1.2 and decrease parameter 0.5 as proposed in the paper.


RProp

public RProp(double etaPlus,
             double etaMinus,
             double etaNull)
Parameters:
etaPlus - increase parameter
etaMinus - decrease parameter
etaNull - initial learning rate
Method Detail

train

public void train(MultiLayerPerceptron nn,
                  Double[][] samples,
                  Double[][] outputs)
Train the neural network once.

Parameters:
nn - neural net to train
samples - the samples
outputs - the desired outputs for these samples

sgn

public static double sgn(double d)
Method computes the sign of a double number.

Parameters:
d - the number
Returns:
sgn(d)

getEtaMinus

public double getEtaMinus()
Get negative learning rate.

Returns:
current negative learning rate

getEtaPlus

public double getEtaPlus()
Get positive learning rate.

Returns:
current positive learning rate

setEtaMinus

public void setEtaMinus(double etaMinus)
Set negative learning rate.

Parameters:
etaMinus - new negative learning rate

setEtaPlus

public void setEtaPlus(double etaPlus)
Set positive learning rate.

Parameters:
etaPlus - new positive learning rate

getEtaNull

public double getEtaNull()
Get starting value for eta.

Returns:
current starting value for eta

setEtaNull

public void setEtaNull(double etaNull)
set starting value for eta.

Parameters:
etaNull - new starting value

evaluate

public double[] evaluate(double[] in)
Evaluates input and returns output of output neurons.

Parameters:
in - input for the net
Returns:
output of the output neurons after having processed a forward wave through the net


Copyright, 2003 - 2010. All rights reserved.
University of Konstanz, Germany.
Chair for Bioinformatics and Information Mining, Prof. Dr. Michael R. Berthold.
You may not modify, publish, transmit, transfer or sell, reproduce, create derivative works from, distribute, perform, display, or in any way exploit any of the content, in whole or in part, except as otherwise expressly permitted in writing by the copyright owner or as specified in the license file distributed with this product.