公有成员 | 保护成员 | 保护属性

MKLMultiClassGradient类参考


详细描述

MKLMultiClassGradient is a helper class for MKLMultiClass.

it solves the corresponding linear problem arising in SIP formulation for MKL using a gradient based approach

在文件MKLMultiClassGradient.h28行定义。

继承图,类MKLMultiClassGradient
Inheritance graph
[图例]

所有成员的列表。

公有成员

 MKLMultiClassGradient ()
virtual ~MKLMultiClassGradient ()
 MKLMultiClassGradient (MKLMultiClassGradient &gl)
MKLMultiClassGradient operator= (MKLMultiClassGradient &gl)
virtual void setup (const int32_t numkernels2)
virtual void addconstraint (const ::std::vector< float64_t > &normw2, const float64_t sumofpositivealphas)
virtual void computeweights (std::vector< float64_t > &weights2)
virtual const char * get_name () const
virtual void set_mkl_norm (float64_t norm)

保护成员

void genbetas (::std::vector< float64_t > &weights, const ::std::vector< float64_t > &gammas)
void gengammagradient (::std::vector< float64_t > &gammagradient, const ::std::vector< float64_t > &gammas, const int32_t dim)
float64_t objectives (const ::std::vector< float64_t > &weights, const int32_t index)
void linesearch (std::vector< float64_t > &finalbeta, const std::vector< float64_t > &oldweights)

保护属性

int32_t numkernels
::std::vector< ::std::vector
< float64_t > > 
normsofsubkernels
::std::vector< float64_tsumsofalphas
float64_t pnorm

构造及析构函数文档

Class default Constructor

在文件MKLMultiClassGradient.cpp15行定义。

~MKLMultiClassGradient (  ) [virtual]

Class default Destructor

在文件MKLMultiClassGradient.cpp21行定义。

Class Copy Constructor

在文件MKLMultiClassGradient.cpp33行定义。


成员函数文档

void addconstraint ( const ::std::vector< float64_t > &  normw2,
const float64_t  sumofpositivealphas 
) [virtual]

adds a constraint to the LP arising in L1 MKL based on two parameters

参数:
normw2is the vector of $ \|w_k \|^2 $ for all kernels
sumofpositivealphasis a term depending on alphas, labels and biases, see in the function float64_t getsumofsignfreealphas() from MKLMultiClass.h, it depends on the formulation of the underlying GMNPSVM.

重载MKLMultiClassOptimizationBase

在文件MKLMultiClassGradient.cpp60行定义。

void computeweights ( std::vector< float64_t > &  weights2 ) [virtual]

computes MKL weights

参数:
weights2stores the new weights

重载MKLMultiClassOptimizationBase

在文件MKLMultiClassGradient.cpp355行定义。

void genbetas ( ::std::vector< float64_t > &  weights,
const ::std::vector< float64_t > &  gammas 
) [protected]

helper routine for MKL optimization, computes form manifold coordinates the point on the manifold

参数:
gammas- manifold coordinates
weights- the point on the manifold

在文件MKLMultiClassGradient.cpp67行定义。

void gengammagradient ( ::std::vector< float64_t > &  gammagradient,
const ::std::vector< float64_t > &  gammas,
const int32_t  dim 
) [protected]

helper routine for MKL optimization, computes greadient of manifold parametrization for one coordinate

参数:
gammagradient- gradient
gammas- manifold coordinates
dim- the coordinate for which thegradient is to be computed

在文件MKLMultiClassGradient.cpp98行定义。

virtual const char* get_name (  ) const [virtual]

sets L^p norm

参数:
weights2stores the new weights
返回:
object name

重载MKLMultiClassOptimizationBase

在文件MKLMultiClassGradient.h84行定义。

void linesearch ( std::vector< float64_t > &  finalbeta,
const std::vector< float64_t > &  oldweights 
) [protected]

helper routine for MKL optimization, performs linesearch

参数:
oldweights- MKL weights to start from
weights- new MKL weights

在文件MKLMultiClassGradient.cpp154行定义。

float64_t objectives ( const ::std::vector< float64_t > &  weights,
const int32_t  index 
) [protected]

helper routine for MKL optimization, computes optimization objective for one contraint

参数:
weights- MKL weights
index- index of constraint

在文件MKLMultiClassGradient.cpp138行定义。

Class Assignment operator

在文件MKLMultiClassGradient.cpp26行定义。

void set_mkl_norm ( float64_t  norm ) [virtual]

sets p-norm parameter for MKL

参数:
normthe MKL norm

重载MKLMultiClassOptimizationBase

在文件MKLMultiClassGradient.cpp52行定义。

void setup ( const int32_t  numkernels2 ) [virtual]

initializes solver

参数:
numkernels2is the number of kernels

重载MKLMultiClassOptimizationBase

在文件MKLMultiClassGradient.cpp40行定义。


成员数据文档

::std::vector< ::std::vector<float64_t> > normsofsubkernels [protected]

stores normsofsubkernels which is a constraint, normsofsubkernels[i] belongs to the i-th constraint

在文件MKLMultiClassGradient.h131行定义。

int32_t numkernels [protected]

stores the number of kernels which acts as a parameter for the LP

在文件MKLMultiClassGradient.h128行定义。

float64_t pnorm [protected]

stores the L^p norm which acts as a parameter for the LP

在文件MKLMultiClassGradient.h135行定义。

::std::vector< float64_t > sumsofalphas [protected]

stores the bias type term of constraints, sumsofalphas[i] belongs to the i-th constraint

在文件MKLMultiClassGradient.h133行定义。


该类的文档由以下文件生成:

SHOGUN Machine Learning Toolbox - Documentation