CGradientUpdateFunction Class Reference
Interface
class for all function which gradient update.
More...
#include <cgradientfunction.h>
Inheritance diagram for CGradientUpdateFunction:
List of all
members.
Detailed Description
Interface class for all function which gradient update.
Gradient update function only support updating the weights of
the function, given the gradient. The datastructure of the gradient
is always a feature list, because for RBF networks many parts of
the gradient are zero. Additionally you can retrieve and set the
weights directly with the functions getWeights(double
*parameters) and setWeights(double
*parameters). Gradient update functions don't implement the
functions itself, so you can't calculate the output of the function
given an input, you also can't calculate the gradient itself. This
interface is just for the update of the weights! Each subclass of
CGradientUpdateFunction has to implement the functoins:
When the weights are updated, the function
updateGradient(CFeatureList *gradientFeatures,
double factor = 1.0) is called. The gradient is at first saved in
the local gradient buffer and then multiplied by the specified
factor. If an eta calculator exists the eta calulator is applied to
the gradient update, after that the user-interface function
updateWeights is called. Parameters of CGradientUpdateFunction: The
gradient update function inherits all Parameters from its eta
calculator.
Constructor & Destructor Documentation
|
CGradientUpdateFunction::CGradientUpdateFunction
|
( |
|
) |
|
|
| virtual
CGradientUpdateFunction::~CGradientUpdateFunction
|
( |
|
) |
[virtual] |
|
Member Function Documentation
| virtual void
CGradientUpdateFunction::copy
|
( |
CLearnDataObject *
|
gradientFuntion |
) |
[virtual] |
|
| |
get the eta calculator for this gradient update
function
|
| virtual int
CGradientUpdateFunction::getNumWeights
|
( |
|
) |
[pure
virtual] |
|
| |
Returns the number of weights.
Implemented in CContinuousActionGradientPolicy,
CContinuousActionPolicyFromGradientFunction,
CContinuousActionFeaturePolicy,
CContinuousActionSigmoidPolicy,
CContinuousActionQFunction,
CCALinearFAQFunction,
CContinuousTimeAndActionSigmoidVMGradientPolicy, CQFunction, CComposedQFunction,
CTorchGradientFunction,
CVFunctionFromGradientFunction,
CQFunctionFromGradientFunction,
and CFeatureVFunction.
|
| virtual void
CGradientUpdateFunction::getWeights
|
( |
double * |
parameters |
) |
[pure
virtual] |
|
| |
Function for getting all weights.
The double array is assumed to be large enough. This isn't
checked!
Implemented in CContinuousActionGradientPolicy,
CContinuousActionPolicyFromGradientFunction,
CContinuousActionFeaturePolicy,
CContinuousActionSigmoidPolicy,
CContinuousActionQFunction,
CCALinearFAQFunction,
CContinuousTimeAndActionSigmoidVMGradientPolicy, CQFunction, CComposedQFunction,
CTorchGradientFunction,
CVFunctionFromGradientFunction,
CQFunctionFromGradientFunction,
and CFeatureVFunction.
|
| virtual void
CGradientUpdateFunction::loadData
|
( |
FILE * |
stream |
) |
[virtual] |
|
| virtual void
CGradientUpdateFunction::resetData
|
( |
|
) |
[pure
virtual] |
|
| |
Interface for resetting the weights.
Implements CLearnDataObject.
Implemented in CContinuousActionGradientPolicy,
CContinuousActionPolicyFromGradientFunction,
CContinuousActionFeaturePolicy,
CContinuousActionSigmoidPolicy,
CContinuousTimeAndActionSigmoidVMGradientPolicy, CGradientQFunction,
CQFunction,
CComposedQFunction,
CTorchGradientFunction,
CVFunctionFromGradientFunction,
CQFunctionFromGradientFunction,
CRegressionTreeQFunction,
CGradientVFunction, and
CFeatureVFunction.
|
| virtual void
CGradientUpdateFunction::saveData
|
( |
FILE * |
stream |
) |
[virtual] |
|
| |
set the eta calculator for this gradient update
function
|
| virtual void
CGradientUpdateFunction::setWeights
|
( |
double * |
parameters |
) |
[pure
virtual] |
|
| |
Function for setting all weights.
The double array is assumed to be large enough. This isn't
checked!
Implemented in CContinuousActionGradientPolicy,
CContinuousActionPolicyFromGradientFunction,
CContinuousActionFeaturePolicy,
CContinuousActionSigmoidPolicy,
CContinuousActionQFunction,
CCALinearFAQFunction,
CContinuousTimeAndActionSigmoidVMGradientPolicy, CQFunction, CComposedQFunction,
CTorchGradientFunction,
CVFunctionFromGradientFunction,
CQFunctionFromGradientFunction,
and CFeatureVFunction.
|
| void
CGradientUpdateFunction::updateGradient
|
( |
CFeatureList *
|
gradientFeatures,
|
|
|
double |
factor =
1.0 |
|
) |
|
|
| |
Does the preprocessing for the gradient update.
When the weights are updated, the function
updateGradient(CFeatureList *gradientFeatures,
double factor = 1.0) is called. The gradient is at first saved in
the local gradient buffer and then multiplied by the specified
factor. If an eta calculator exists the eta calulator is applied to
the gradient update, after that the user-interface function
updateWeights is called.
|
| virtual void
CGradientUpdateFunction::updateWeights
|
( |
CFeatureList *
|
dParams |
) |
[pure
virtual] |
|
| |
Interface for updating the weights.
Implemented in CContinuousActionGradientPolicy,
CContinuousActionPolicyFromGradientFunction,
CContinuousActionFeaturePolicy,
CContinuousActionSigmoidPolicy,
CCALinearFAQFunction,
CContinuousTimeAndActionSigmoidVMGradientPolicy, CQFunction, CComposedQFunction,
CTorchGradientFunction,
CVFunctionFromGradientFunction,
CQFunctionFromGradientFunction,
and CFeatureVFunction.
|
Member Data Documentation
The documentation for this class was generated from the following
file:
|