shark::SquaredHingeCSvmTrainer< InputType, CacheType > Class Template Reference

#include <shark/Algorithms/Trainers/CSvmTrainer.h>

+ Inheritance diagram for shark::SquaredHingeCSvmTrainer< InputType, CacheType >:

Public Types

typedef CacheType QpFloatType
 
typedef RegularizedKernelMatrix< InputType, QpFloatTypeKernelMatrixType
 
typedef CachedMatrix< KernelMatrixTypeCachedMatrixType
 
typedef PrecomputedMatrix< KernelMatrixTypePrecomputedMatrixType
 
typedef AbstractModel< InputType, RealVector > ModelType
 
typedef AbstractKernelFunction< InputTypeKernelType
 
- Public Types inherited from shark::AbstractSvmTrainer< InputType, unsigned int >
typedef AbstractKernelFunction< InputTypeKernelType
 
- Public Types inherited from shark::AbstractTrainer< Model, LabelTypeT >
typedef Model ModelType
 
typedef ModelType::InputType InputType
 
typedef LabelTypeT LabelType
 
typedef LabeledData< InputType, LabelTypeDatasetType
 
- Public Types inherited from shark::IParameterizable<>
typedef RealVector ParameterVectorType
 

Public Member Functions

 SquaredHingeCSvmTrainer (KernelType *kernel, double C, bool unconstrained=false)
 
 SquaredHingeCSvmTrainer (KernelType *kernel, double negativeC, double positiveC, bool unconstrained=false)
 
std::string name () const
 From INameable: return the class name. More...
 
void train (KernelClassifier< InputType > &svm, LabeledData< InputType, unsigned int > const &dataset)
 Train the C-SVM. More...
 
- Public Member Functions inherited from shark::AbstractSvmTrainer< InputType, unsigned int >
 AbstractSvmTrainer (KernelType *kernel, double C, bool offset, bool unconstrained=false)
 
 AbstractSvmTrainer (KernelType *kernel, double negativeC, double positiveC, bool offset, bool unconstrained=false)
 
double C () const
 Return the value of the regularization parameter C. More...
 
void setC (double C)
 Set the value of the regularization parameter C. More...
 
RealVector const & regularizationParameters () const
 
void setRegularizationParameters (RealVector const &regularizers)
 Set the value of the regularization parameter C. More...
 
KernelTypekernel ()
 
KernelType const * kernel () const
 
void setKernel (KernelType *kernel)
 
bool isUnconstrained () const
 
bool trainOffset () const
 
std::size_t cacheSize () const
 
void setCacheSize (std::size_t size)
 
RealVector parameterVector () const
 get the hyper-parameter vector More...
 
void setParameterVector (RealVector const &newParameters)
 set the vector of hyper-parameters More...
 
size_t numberOfParameters () const
 return the number of hyper-parameters More...
 
- Public Member Functions inherited from shark::AbstractTrainer< Model, LabelTypeT >
virtual void train (ModelType &model, DatasetType const &dataset)=0
 Core of the Trainer interface. More...
 
- Public Member Functions inherited from shark::INameable
virtual ~INameable ()
 
- Public Member Functions inherited from shark::ISerializable
virtual ~ISerializable ()
 Virtual d'tor. More...
 
virtual void read (InArchive &archive)
 Read the component from the supplied archive. More...
 
virtual void write (OutArchive &archive) const
 Write the component to the supplied archive. More...
 
void load (InArchive &archive, unsigned int version)
 Versioned loading of components, calls read(...). More...
 
void save (OutArchive &archive, unsigned int version) const
 Versioned storing of components, calls write(...). More...
 
 BOOST_SERIALIZATION_SPLIT_MEMBER ()
 
- Public Member Functions inherited from shark::QpConfig
 QpConfig (bool precomputedFlag=false, bool sparsifyFlag=true)
 Constructor. More...
 
QpStoppingConditionstoppingCondition ()
 Read/write access to the stopping condition. More...
 
QpStoppingCondition const & stoppingCondition () const
 Read access to the stopping condition. More...
 
QpSolutionPropertiessolutionProperties ()
 Access to the solution properties. More...
 
bool & precomputeKernel ()
 Flag for using a precomputed kernel matrix. More...
 
bool const & precomputeKernel () const
 Flag for using a precomputed kernel matrix. More...
 
bool & sparsify ()
 Flag for sparsifying the model after training. More...
 
bool const & sparsify () const
 Flag for sparsifying the model after training. More...
 
bool & shrinking ()
 Flag for shrinking in the decomposition solver. More...
 
bool const & shrinking () const
 Flag for shrinking in the decomposition solver. More...
 
bool & s2do ()
 Flag for S2DO (instead of SMO) More...
 
bool const & s2do () const
 Flag for S2DO (instead of SMO) More...
 
unsigned int & verbosity ()
 Verbosity level of the solver. More...
 
unsigned int const & verbosity () const
 Verbosity level of the solver. More...
 
unsigned long long const & accessCount () const
 Number of kernel accesses. More...
 
void setMinAccuracy (double a)
 
void setMaxIterations (unsigned long long i)
 
void setTargetValue (double v)
 
void setMaxSeconds (double s)
 
- Public Member Functions inherited from shark::IParameterizable<>
virtual ~IParameterizable ()
 

Additional Inherited Members

- Protected Attributes inherited from shark::AbstractSvmTrainer< InputType, unsigned int >
KernelTypem_kernel
 
RealVector m_regularizers
 Vector of regularization parameters. More...
 
bool m_trainOffset
 
bool m_unconstrained
 Is log(C) stored internally as a parameter instead of C? If yes, then we get rid of the constraint C > 0 on the level of the parameter interface. More...
 
std::size_t m_cacheSize
 Number of values in the kernel cache. The size of the cache in bytes is the size of one entry (4 for float, 8 for double) times this number. More...
 
- Protected Attributes inherited from shark::QpConfig
QpStoppingCondition m_stoppingcondition
 conditions for when to stop the QP solver More...
 
QpSolutionProperties m_solutionproperties
 properties of the approximate solution found by the solver More...
 
bool m_precomputedKernelMatrix
 should the solver use a precomputed kernel matrix? More...
 
bool m_sparsify
 should the trainer sparsify the model after training? More...
 
bool m_shrinking
 should shrinking be used? More...
 
bool m_s2do
 should S2DO be used instead of SMO? More...
 
unsigned int m_verbosity
 verbosity level (currently unused) More...
 
unsigned long long m_accessCount
 kernel access count More...
 

Detailed Description

template<class InputType, class CacheType = float>
class shark::SquaredHingeCSvmTrainer< InputType, CacheType >

Definition at line 936 of file CSvmTrainer.h.

Member Typedef Documentation

◆ CachedMatrixType

template<class InputType , class CacheType = float>
typedef CachedMatrix< KernelMatrixType > shark::SquaredHingeCSvmTrainer< InputType, CacheType >::CachedMatrixType

Definition at line 942 of file CSvmTrainer.h.

◆ KernelMatrixType

template<class InputType , class CacheType = float>
typedef RegularizedKernelMatrix<InputType, QpFloatType> shark::SquaredHingeCSvmTrainer< InputType, CacheType >::KernelMatrixType

Definition at line 941 of file CSvmTrainer.h.

◆ KernelType

template<class InputType , class CacheType = float>
typedef AbstractKernelFunction<InputType> shark::SquaredHingeCSvmTrainer< InputType, CacheType >::KernelType

Definition at line 946 of file CSvmTrainer.h.

◆ ModelType

template<class InputType , class CacheType = float>
typedef AbstractModel<InputType, RealVector> shark::SquaredHingeCSvmTrainer< InputType, CacheType >::ModelType

Definition at line 945 of file CSvmTrainer.h.

◆ PrecomputedMatrixType

template<class InputType , class CacheType = float>
typedef PrecomputedMatrix< KernelMatrixType > shark::SquaredHingeCSvmTrainer< InputType, CacheType >::PrecomputedMatrixType

Definition at line 943 of file CSvmTrainer.h.

◆ QpFloatType

template<class InputType , class CacheType = float>
typedef CacheType shark::SquaredHingeCSvmTrainer< InputType, CacheType >::QpFloatType

Definition at line 939 of file CSvmTrainer.h.

Constructor & Destructor Documentation

◆ SquaredHingeCSvmTrainer() [1/2]

template<class InputType , class CacheType = float>
shark::SquaredHingeCSvmTrainer< InputType, CacheType >::SquaredHingeCSvmTrainer ( KernelType kernel,
double  C,
bool  unconstrained = false 
)
inline

Constructor

Parameters
kernelkernel function to use for training and prediction
Cregularization parameter - always the 'true' value of C, even when unconstrained is set
unconstrainedwhen a C-value is given via setParameter, should it be piped through the exp-function before using it in the solver??

Definition at line 953 of file CSvmTrainer.h.

◆ SquaredHingeCSvmTrainer() [2/2]

template<class InputType , class CacheType = float>
shark::SquaredHingeCSvmTrainer< InputType, CacheType >::SquaredHingeCSvmTrainer ( KernelType kernel,
double  negativeC,
double  positiveC,
bool  unconstrained = false 
)
inline

Constructor

Parameters
kernelkernel function to use for training and prediction
negativeCregularization parameter of the negative class (label 0)
positiveCregularization parameter of the positive class (label 1)
unconstrainedwhen a C-value is given via setParameter, should it be piped through the exp-function before using it in the solver?

Definition at line 962 of file CSvmTrainer.h.

Member Function Documentation

◆ name()

template<class InputType , class CacheType = float>
std::string shark::SquaredHingeCSvmTrainer< InputType, CacheType >::name ( ) const
inlinevirtual

From INameable: return the class name.

Reimplemented from shark::INameable.

Definition at line 967 of file CSvmTrainer.h.

◆ train()


The documentation for this class was generated from the following file: