SHOGUN v0.9.0
公有成员 | 保护属性
CMultitaskKernelNormalizer类参考

详细描述

The MultitaskKernel allows Multitask Learning via a modified kernel function.

This effectively normalizes the vectors in feature space to norm 1 (see CSqrtDiagKernelNormalizer)

\[ k'({\bf x},{\bf x'}) = \gamma(task({\bf x}),task({\bf x'})) k({\bf x},{\bf x'}) \]

在文件MultitaskKernelNormalizer.h31行定义。

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

所有成员的列表。

公有成员

 CMultitaskKernelNormalizer ()
 CMultitaskKernelNormalizer (std::vector< int32_t > task_vector)
virtual ~CMultitaskKernelNormalizer ()
virtual bool init (CKernel *k)
int32_t get_num_unique_tasks (std::vector< int32_t > vec)
virtual float64_t normalize (float64_t value, int32_t idx_lhs, int32_t idx_rhs)
virtual float64_t normalize_lhs (float64_t value, int32_t idx_lhs)
virtual float64_t normalize_rhs (float64_t value, int32_t idx_rhs)
std::vector< int32_t > get_task_vector_lhs () const
void set_task_vector_lhs (std::vector< int32_t > vec)
std::vector< int32_t > get_task_vector_rhs () const
void set_task_vector_rhs (std::vector< int32_t > vec)
void set_task_vector (std::vector< int32_t > vec)
float64_t get_task_similarity (int32_t task_lhs, int32_t task_rhs)
void set_task_similarity (int32_t task_lhs, int32_t task_rhs, float64_t similarity)
virtual const char * get_name () const

保护属性

std::vector< float64_tsimilarity_matrix
int32_t num_tasks
std::vector< int32_t > task_vector_lhs
std::vector< int32_t > task_vector_rhs
float64_t scale

构造及析构函数文档

default constructor

在文件MultitaskKernelNormalizer.h38行定义。

CMultitaskKernelNormalizer ( std::vector< int32_t >  task_vector)

default constructor

参数:
task_vectortask vector with containing task_id for each example

在文件MultitaskKernelNormalizer.h46行定义。

virtual ~CMultitaskKernelNormalizer ( ) [virtual]

default destructor

在文件MultitaskKernelNormalizer.h61行定义。


成员函数文档

virtual const char* get_name ( void  ) const [virtual]
返回:
object name

实现了CSGObject

在文件MultitaskKernelNormalizer.h228行定义。

int32_t get_num_unique_tasks ( std::vector< int32_t >  vec)

helper routine

参数:
vecvector with containing task_id for each example
返回:
number of unique task ids

在文件MultitaskKernelNormalizer.h103行定义。

float64_t get_task_similarity ( int32_t  task_lhs,
int32_t  task_rhs 
)
参数:
task_lhstask_id on left hand side
task_rhstask_id on right hand side
返回:
similarity between tasks

在文件MultitaskKernelNormalizer.h201行定义。

std::vector<int32_t> get_task_vector_lhs ( ) const
返回:
vec task vector with containing task_id for each example on left hand side

在文件MultitaskKernelNormalizer.h166行定义。

std::vector<int32_t> get_task_vector_rhs ( ) const
返回:
vec task vector with containing task_id for each example on right hand side

在文件MultitaskKernelNormalizer.h178行定义。

virtual bool init ( CKernel k) [virtual]

initialization of the normalizer

参数:
kkernel

实现了CKernelNormalizer

在文件MultitaskKernelNormalizer.h67行定义。

virtual float64_t normalize ( float64_t  value,
int32_t  idx_lhs,
int32_t  idx_rhs 
) [virtual]

normalize the kernel value

参数:
valuekernel value
idx_lhsindex of left hand side vector
idx_rhsindex of right hand side vector

实现了CKernelNormalizer

在文件MultitaskKernelNormalizer.h123行定义。

virtual float64_t normalize_lhs ( float64_t  value,
int32_t  idx_lhs 
) [virtual]

normalize only the left hand side vector

参数:
valuevalue of a component of the left hand side feature vector
idx_lhsindex of left hand side vector

实现了CKernelNormalizer

在文件MultitaskKernelNormalizer.h147行定义。

virtual float64_t normalize_rhs ( float64_t  value,
int32_t  idx_rhs 
) [virtual]

normalize only the right hand side vector

参数:
valuevalue of a component of the right hand side feature vector
idx_rhsindex of right hand side vector

实现了CKernelNormalizer

在文件MultitaskKernelNormalizer.h157行定义。

void set_task_similarity ( int32_t  task_lhs,
int32_t  task_rhs,
float64_t  similarity 
)
参数:
task_lhstask_id on left hand side
task_rhstask_id on right hand side
similaritysimilarity between tasks

在文件MultitaskKernelNormalizer.h216行定义。

void set_task_vector ( std::vector< int32_t >  vec)
参数:
vectask vector with containing task_id for each example

在文件MultitaskKernelNormalizer.h190行定义。

void set_task_vector_lhs ( std::vector< int32_t >  vec)
参数:
vectask vector with containing task_id for each example

在文件MultitaskKernelNormalizer.h172行定义。

void set_task_vector_rhs ( std::vector< int32_t >  vec)
参数:
vectask vector with containing task_id for each example

在文件MultitaskKernelNormalizer.h184行定义。


成员数据文档

int32_t num_tasks [protected]

number of tasks

在文件MultitaskKernelNormalizer.h239行定义。

float64_t scale [protected]

scale constant obtained from k(0,0)

在文件MultitaskKernelNormalizer.h248行定义。

std::vector<float64_t> similarity_matrix [protected]

MxM matrix encoding similarity between tasks

在文件MultitaskKernelNormalizer.h236行定义。

std::vector<int32_t> task_vector_lhs [protected]

task vector indicating to which task each example on the left hand side belongs

在文件MultitaskKernelNormalizer.h242行定义。

std::vector<int32_t> task_vector_rhs [protected]

task vector indicating to which task each example on the right hand side belongs

在文件MultitaskKernelNormalizer.h245行定义。


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

SHOGUN Machine Learning Toolbox - Documentation