Scaled version of a kernel function. More...
#include <shark/Models/Kernels/ScaledKernel.h>
Inheritance diagram for shark::ScaledKernel< InputType >:Public Member Functions | |
| ScaledKernel (AbstractKernelFunction< InputType > *base, double factor=1.0) | |
| std::string | name () const |
| From INameable: return the class name. | |
| RealVector | parameterVector () const |
| Return the parameter vector. | |
| void | setParameterVector (RealVector const &newParameters) |
| Set the parameter vector. | |
| std::size_t | numberOfParameters () const |
| Return the number of parameters. | |
| boost::shared_ptr< State > | createState () const |
| creates the internal state of the kernel | |
| const double | factor () |
| void | setFactor (double f) |
| const base_type * | base () const |
| double | eval (ConstInputReference x1, ConstInputReference x2) const |
| void | eval (ConstBatchInputReference x1, ConstBatchInputReference x2, RealMatrix &result) const |
| void | eval (ConstBatchInputReference x1, ConstBatchInputReference x2, RealMatrix &result, State &state) const |
| void | weightedParameterDerivative (ConstBatchInputReference batchX1, ConstBatchInputReference batchX2, RealMatrix const &coefficients, State const &state, RealVector &gradient) const |
| calculates the weighted derivate w.r.t. the parameters of the base kernel | |
| void | weightedInputDerivative (ConstBatchInputReference batchX1, ConstBatchInputReference batchX2, RealMatrix const &coefficientsX2, State const &state, BatchInputType &gradient) const |
| calculates the weighted derivate w.r.t. argument \( x_1 \) | |
| void | read (InArchive &ar) |
| From ISerializable, reads a metric from an archive. | |
| void | write (OutArchive &ar) const |
| The kernel does not serialize anything. | |
Public Member Functions inherited from shark::AbstractKernelFunction< InputTypeT > | |
| AbstractKernelFunction () | |
| const Features & | features () const |
| virtual void | updateFeatures () |
| bool | hasFirstParameterDerivative () const |
| bool | hasFirstInputDerivative () const |
| bool | isNormalized () const |
| bool | supportsVariableInputSize () const |
| virtual double | eval (ConstInputReference x1, ConstInputReference x2) const |
| Evaluates the kernel function. | |
| double | operator() (ConstInputReference x1, ConstInputReference x2) const |
| Convenience operator which evaluates the kernel function. | |
| virtual void | eval (ConstBatchInputReference batchX1, ConstBatchInputReference batchX2, RealMatrix &result, State &state) const =0 |
| Evaluates the subset of the KernelGram matrix which is defined by X1(rows) and X2 (columns). | |
| virtual void | eval (ConstBatchInputReference batchX1, ConstBatchInputReference batchX2, RealMatrix &result) const |
| Evaluates the subset of the KernelGram matrix which is defined by X1(rows) and X2 (columns). | |
| RealMatrix | operator() (ConstBatchInputReference batchX1, ConstBatchInputReference batchX2) const |
| Evaluates the subset of the KernelGram matrix which is defined by X1(rows) and X2 (columns). | |
| virtual void | weightedParameterDerivative (ConstBatchInputReference batchX1, ConstBatchInputReference batchX2, RealMatrix const &coefficients, State const &state, RealVector &gradient) const |
| Computes the gradient of the parameters as a weighted sum over the gradient of all elements of the batch. | |
| virtual void | weightedInputDerivative (ConstBatchInputReference batchX1, ConstBatchInputReference batchX2, RealMatrix const &coefficientsX2, State const &state, BatchInputType &gradient) const |
| Calculates the derivative of the inputs X1 (only x1!). | |
| virtual double | featureDistanceSqr (ConstInputReference x1, ConstInputReference x2) const |
| Computes the squared distance in the kernel induced feature space. | |
| virtual RealMatrix | featureDistanceSqr (ConstBatchInputReference batchX1, ConstBatchInputReference batchX2) const |
| Computes the squared distance in the kernel induced feature space. | |
Public Member Functions inherited from shark::AbstractMetric< InputTypeT > | |
| AbstractMetric () | |
| virtual | ~AbstractMetric () |
| double | featureDistance (ConstInputReference x1, ConstInputReference x2) const |
| Computes the distance in the kernel induced feature space. | |
Public Member Functions inherited from shark::INameable | |
| virtual | ~INameable () |
Public Member Functions inherited from shark::IParameterizable< VectorType > | |
| virtual | ~IParameterizable () |
Public Member Functions inherited from shark::ISerializable | |
| virtual | ~ISerializable () |
| Virtual d'tor. | |
| void | load (InArchive &archive, unsigned int version) |
| Versioned loading of components, calls read(...). | |
| void | save (OutArchive &archive, unsigned int version) const |
| Versioned storing of components, calls write(...). | |
| BOOST_SERIALIZATION_SPLIT_MEMBER () | |
Protected Attributes | |
| AbstractKernelFunction< InputType > * | m_base |
| kernel to scale | |
| double | m_factor |
| scaling factor | |
Protected Attributes inherited from shark::AbstractKernelFunction< InputTypeT > | |
| Features | m_features |
Scaled version of a kernel function.
For a positive definite kernel k, the scaled kernel
\[ \tilde k(x_1, x_2) := c k(x_1, x_2) \]
is again a positive definite kernel function as long as \( c > 0 \).
Definition at line 50 of file ScaledKernel.h.
| typedef base_type::BatchInputType shark::ScaledKernel< InputType >::BatchInputType |
Definition at line 55 of file ScaledKernel.h.
| typedef base_type::ConstBatchInputReference shark::ScaledKernel< InputType >::ConstBatchInputReference |
Definition at line 57 of file ScaledKernel.h.
| typedef base_type::ConstInputReference shark::ScaledKernel< InputType >::ConstInputReference |
Definition at line 56 of file ScaledKernel.h.
|
inline |
Definition at line 59 of file ScaledKernel.h.
References shark::ScaledKernel< InputType >::base(), shark::ScaledKernel< InputType >::factor(), shark::AbstractKernelFunction< InputType >::HAS_FIRST_INPUT_DERIVATIVE, shark::AbstractKernelFunction< InputType >::HAS_FIRST_PARAMETER_DERIVATIVE, shark::AbstractKernelFunction< InputTypeT >::hasFirstInputDerivative(), shark::AbstractKernelFunction< InputTypeT >::hasFirstParameterDerivative(), shark::ScaledKernel< InputType >::m_base, shark::AbstractKernelFunction< InputTypeT >::m_features, RANGE_CHECK, and SHARK_ASSERT.
|
inline |
Definition at line 99 of file ScaledKernel.h.
References shark::ScaledKernel< InputType >::m_base.
Referenced by shark::ScaledKernel< InputType >::ScaledKernel(), and shark::NormalizeKernelUnitVariance< InputType >::train().
|
inlinevirtual |
creates the internal state of the kernel
Reimplemented from shark::AbstractKernelFunction< InputTypeT >.
Definition at line 87 of file ScaledKernel.h.
References shark::AbstractKernelFunction< InputTypeT >::createState(), and shark::ScaledKernel< InputType >::m_base.
|
inline |
Definition at line 108 of file ScaledKernel.h.
References shark::AbstractKernelFunction< InputTypeT >::eval(), shark::ScaledKernel< InputType >::m_base, and shark::ScaledKernel< InputType >::m_factor.
|
inline |
Definition at line 113 of file ScaledKernel.h.
References shark::AbstractKernelFunction< InputTypeT >::eval(), shark::ScaledKernel< InputType >::m_base, and shark::ScaledKernel< InputType >::m_factor.
|
inline |
Definition at line 103 of file ScaledKernel.h.
References shark::AbstractKernelFunction< InputTypeT >::eval(), shark::ScaledKernel< InputType >::m_base, shark::ScaledKernel< InputType >::m_factor, and SIZE_CHECK.
|
inline |
Definition at line 91 of file ScaledKernel.h.
References shark::ScaledKernel< InputType >::m_factor.
Referenced by shark::exportKernelMatrix(), main(), main(), and shark::ScaledKernel< InputType >::ScaledKernel().
|
inlinevirtual |
From INameable: return the class name.
Reimplemented from shark::INameable.
Definition at line 72 of file ScaledKernel.h.
|
inlinevirtual |
Return the number of parameters.
Reimplemented from shark::IParameterizable< VectorType >.
Definition at line 82 of file ScaledKernel.h.
References shark::ScaledKernel< InputType >::m_base, and shark::IParameterizable< VectorType >::numberOfParameters().
|
inlinevirtual |
Return the parameter vector.
Reimplemented from shark::IParameterizable< VectorType >.
Definition at line 75 of file ScaledKernel.h.
References shark::ScaledKernel< InputType >::m_base, and shark::IParameterizable< VectorType >::parameterVector().
|
inlinevirtual |
From ISerializable, reads a metric from an archive.
Reimplemented from shark::AbstractMetric< InputTypeT >.
Definition at line 143 of file ScaledKernel.h.
References shark::ScaledKernel< InputType >::m_base, and shark::ScaledKernel< InputType >::m_factor.
|
inline |
Definition at line 94 of file ScaledKernel.h.
References shark::ScaledKernel< InputType >::m_factor, and RANGE_CHECK.
Referenced by shark::NormalizeKernelUnitVariance< InputType >::train().
|
inlinevirtual |
Set the parameter vector.
Reimplemented from shark::IParameterizable< VectorType >.
Definition at line 78 of file ScaledKernel.h.
References shark::ScaledKernel< InputType >::m_base, and shark::IParameterizable< VectorType >::setParameterVector().
|
inline |
calculates the weighted derivate w.r.t. argument \( x_1 \)
Definition at line 130 of file ScaledKernel.h.
References shark::batchSize(), shark::ScaledKernel< InputType >::m_base, shark::ScaledKernel< InputType >::m_factor, SIZE_CHECK, and shark::AbstractKernelFunction< InputTypeT >::weightedInputDerivative().
|
inline |
calculates the weighted derivate w.r.t. the parameters of the base kernel
Definition at line 119 of file ScaledKernel.h.
References shark::ScaledKernel< InputType >::m_base, shark::ScaledKernel< InputType >::m_factor, and shark::AbstractKernelFunction< InputTypeT >::weightedParameterDerivative().
|
inlinevirtual |
The kernel does not serialize anything.
Reimplemented from shark::AbstractMetric< InputTypeT >.
Definition at line 149 of file ScaledKernel.h.
References shark::ScaledKernel< InputType >::m_factor.
|
protected |
kernel to scale
Definition at line 156 of file ScaledKernel.h.
Referenced by shark::ScaledKernel< InputType >::base(), shark::ScaledKernel< InputType >::createState(), shark::ScaledKernel< InputType >::eval(), shark::ScaledKernel< InputType >::eval(), shark::ScaledKernel< InputType >::eval(), shark::ScaledKernel< InputType >::numberOfParameters(), shark::ScaledKernel< InputType >::parameterVector(), shark::ScaledKernel< InputType >::read(), shark::ScaledKernel< InputType >::ScaledKernel(), shark::ScaledKernel< InputType >::setParameterVector(), shark::ScaledKernel< InputType >::weightedInputDerivative(), and shark::ScaledKernel< InputType >::weightedParameterDerivative().
|
protected |
scaling factor
Definition at line 157 of file ScaledKernel.h.
Referenced by shark::ScaledKernel< InputType >::eval(), shark::ScaledKernel< InputType >::eval(), shark::ScaledKernel< InputType >::eval(), shark::ScaledKernel< InputType >::factor(), shark::ScaledKernel< InputType >::read(), shark::ScaledKernel< InputType >::setFactor(), shark::ScaledKernel< InputType >::weightedInputDerivative(), shark::ScaledKernel< InputType >::weightedParameterDerivative(), and shark::ScaledKernel< InputType >::write().