All Packages  Class Hierarchy  This Package  Previous  Next  Index

Class sim.errFun.ErrAvg

java.lang.Object
   |
   +----sim.errFun.ErrFun
           |
           +----sim.errFun.ErrAvg

public class ErrAvg
extends ErrFun
Average together the outputs of multiple error functions to form a single error function. This allows gradient descent on several different error functions simultaneously. This class assumes that all the individual error functions have the same number of inputs (e.g. neural networks with the same number of weights).

This code is (c) 1997 Leemon Baird <harmonme@aa.wpafb.af.mil>, http://www.cs.cmu.edu/~baird
The source and object code may be redistributed freely provided no fee is charged. If the code is modified, please state so in the comments.

Version:
1.02, 23 July 97
Author:
Leemon Baird

Variable Index

 o errFun
each of the error functions to average
 o errFunGradient
the gradient from each individual errFun
 o gradient
the average of the gradients from all batchSize calls to errFun
 o weights
the weights for each errFun

Constructor Index

 o ErrAvg()

Method Index

 o BNF(int)
Return the BNF description of how to parse the parameters of this object.
 o evaluate(Random, boolean, boolean, boolean)
return the scalar output for the current dInput vector
 o findGradient()
update the gradient vector based on the current fInput vector.
 o getGradient()
The gradient of f(x) with respect to x (a column vector)
 o getInput()
The input x sent to the function f(x) (a column vector)
 o initialize(int)
Initialize, either partially or completely.
 o parse(Parser, int)
Parse the input file to get the parameters for this object.
 o setWatchManager(WatchManager, String)
Register all variables with this WatchManager.
 o unparse(Unparser, int)
Output a description of this object that can be parsed with parse().

Variables

 o errFun
 protected ErrFun errFun[]
each of the error functions to average

 o errFunGradient
 protected MatrixD errFunGradient[]
the gradient from each individual errFun

 o weights
 protected MatrixD weights[]
the weights for each errFun

 o gradient
 protected MatrixD gradient
the average of the gradients from all batchSize calls to errFun

Constructors

 o ErrAvg
 public ErrAvg()

Methods

 o setWatchManager
 public void setWatchManager(WatchManager wm,
                             String name)
Register all variables with this WatchManager. This will be called after all parsing is done. setWatchManager should be overridden and forced to call the same method on all the other objects in the experiment.

Overrides:
setWatchManager in class ErrFun
 o BNF
 public String BNF(int lang)
Return the BNF description of how to parse the parameters of this object.

Overrides:
BNF in class ErrFun
 o unparse
 public void unparse(Unparser u,
                     int lang)
Output a description of this object that can be parsed with parse().

Overrides:
unparse in class ErrFun
See Also:
Parsable
 o parse
 public Object parse(Parser p,
                     int lang) throws ParserException
Parse the input file to get the parameters for this object.

Throws: ParserException
parser didn't find the required token
Overrides:
parse in class ErrFun
 o evaluate
 public double evaluate(Random rnd,
                        boolean willFindDeriv,
                        boolean willFindHess,
                        boolean rememberNoise)
return the scalar output for the current dInput vector

Overrides:
evaluate in class ErrFun
 o findGradient
 public void findGradient()
update the gradient vector based on the current fInput vector. Assumes that evaluate() was already called on this vector.

Overrides:
findGradient in class ErrFun
 o getGradient
 public MatrixD getGradient()
The gradient of f(x) with respect to x (a column vector)

Overrides:
getGradient in class ErrFun
 o getInput
 public MatrixD getInput()
The input x sent to the function f(x) (a column vector)

Overrides:
getInput in class ErrFun
 o initialize
 public void initialize(int level)
Initialize, either partially or completely.

Overrides:
initialize in class ErrFun
See Also:
initialize

All Packages  Class Hierarchy  This Package  Previous  Next  Index