All Packages  Class Hierarchy  This Package  Previous  Next  Index

Class sim.errFun.Batch

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

public class Batch
extends ErrFun
Combine N calls to an error function into a single error number. This allows something like epoch-wise batch learning on infinite training sets.

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 batchIndex
which of the batch elements is currently being processed.
 o batchSize
the number of times to call the error function
 o errFun
the error function to query multiple times
 o errFunGradient
the gradient from a single call to errFun
 o gradient
the average of the gradients from all batchSize calls to errFun

Constructor Index

 o Batch()

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
the error function to query multiple times

 o batchSize
 protected IntExp batchSize
the number of times to call the error function

 o errFunGradient
 protected MatrixD errFunGradient
the gradient from a single call to errFun

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

 o batchIndex
 protected PInt batchIndex
which of the batch elements is currently being processed. Counts repeatedly from 0 to N-1 than back to 0 for batches of N elements.

Constructors

 o Batch
 public Batch()

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