SHOGUN  4.1.0
 全部  命名空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义  
所有成员列表 | Public 成员函数 | 静态 Public 成员函数 | Public 属性 | Protected 成员函数 | 静态 Protected 成员函数
SGSparseVector< T > Singleton Reference

详细描述

template<class T>
singleton shogun::SGSparseVector< T >

template class SGSparseVector The assumtion is that the stored SGSparseVectorEntry<T>* vector is ordered by SGSparseVectorEntry.feat_index in non-decreasing order. This has to be assured by the user of the class.

在文件 base/Parameter.h29 行定义.

类 SGSparseVector< T > 继承关系图:
Inheritance graph
[图例]

Public 成员函数

 SGSparseVector ()
 
 SGSparseVector (SGSparseVectorEntry< T > *feats, index_t num_entries, bool ref_counting=true)
 
 SGSparseVector (index_t num_entries, bool ref_counting=true)
 
 SGSparseVector (const SGSparseVector &orig)
 
virtual ~SGSparseVector ()
 
dense_dot (T alpha, T *vec, int32_t dim, T b)
 
template<typename ST >
dense_dot (SGVector< ST > vec)
 
sparse_dot (const SGSparseVector< T > &v)
 
SGSparseVector< T > get ()
 
int32_t get_num_dimensions ()
 
void sort_features (bool stable_pointer=false)
 
bool is_sorted () const
 
get_feature (int32_t index)
 
SGVector< T > get_dense (int32_t dimension)
 
SGVector< T > get_dense ()
 
SGSparseVector< T > clone () const
 
void load (CFile *loader)
 
void save (CFile *saver)
 
void add_to_dense (T alpha, T *vec, int32_t dim, bool abs_val=false)
 
void display_vector (const char *name="vector", const char *prefix="")
 
template<>
void load (CFile *loader)
 
template<>
void save (CFile *saver)
 
template<>
void display_vector (const char *name, const char *prefix)
 
template<>
void display_vector (const char *name, const char *prefix)
 
template<>
void display_vector (const char *name, const char *prefix)
 
template<>
void display_vector (const char *name, const char *prefix)
 
template<>
void display_vector (const char *name, const char *prefix)
 
template<>
void display_vector (const char *name, const char *prefix)
 
template<>
void display_vector (const char *name, const char *prefix)
 
template<>
void display_vector (const char *name, const char *prefix)
 
template<>
void display_vector (const char *name, const char *prefix)
 
template<>
void display_vector (const char *name, const char *prefix)
 
template<>
void display_vector (const char *name, const char *prefix)
 
template<>
void display_vector (const char *name, const char *prefix)
 
template<>
void display_vector (const char *name, const char *prefix)
 
template<>
void display_vector (const char *name, const char *prefix)
 
int32_t ref_count ()
 

静态 Public 成员函数

static T sparse_dot (const SGSparseVector< T > &a, const SGSparseVector< T > &b)
 

Public 属性

index_t num_feat_entries
 
SGSparseVectorEntry< T > * features
 

Protected 成员函数

virtual void copy_data (const SGReferencedData &orig)
 
virtual void init_data ()
 
virtual void free_data ()
 
void copy_refcount (const SGReferencedData &orig)
 
int32_t ref ()
 
int32_t unref ()
 

静态 Protected 成员函数

static T dot_prod_expensive_unsorted (const SGSparseVector< T > &a, const SGSparseVector< T > &b)
 

构造及析构函数说明

default constructor

在文件 SGSparseVector.cpp23 行定义.

SGSparseVector ( SGSparseVectorEntry< T > *  feats,
index_t  num_entries,
bool  ref_counting = true 
)

constructor for setting params

参数
featsvector of SGSparseVectorEntry ordered by SGSparseVectorEntry.feat_index in non-decreasing order
num_entriesnumber of elements in feats vector
ref_countinguse reference counting

在文件 SGSparseVector.cpp29 行定义.

SGSparseVector ( index_t  num_entries,
bool  ref_counting = true 
)

constructor to create new vector in memory

在文件 SGSparseVector.cpp37 行定义.

SGSparseVector ( const SGSparseVector< T > &  orig)

copy constructor

在文件 SGSparseVector.cpp45 行定义.

~SGSparseVector ( )
virtual

在文件 SGSparseVector.cpp52 行定义.

成员函数说明

void add_to_dense ( alpha,
T *  vec,
int32_t  dim,
bool  abs_val = false 
)

add a sparse feature vector onto a dense one dense += alpha*sparse

参数
alphascalar to multiply with
vecdense vector
dimlength of the dense vector
abs_valif true, do dense+=alpha*abs(sparse)

在文件 SGSparseVector.cpp78 行定义.

SGSparseVector< T > clone ( ) const

clone vector

在文件 SGSparseVector.cpp354 行定义.

void copy_data ( const SGReferencedData orig)
protectedvirtual

needs to be overridden to copy data

实现了 SGReferencedData.

在文件 SGSparseVector.cpp393 行定义.

void copy_refcount ( const SGReferencedData orig)
protectedinherited

copy refcount

在文件 SGReferencedData.cpp55 行定义.

T dense_dot ( alpha,
T *  vec,
int32_t  dim,
b 
)

compute the dot product between dense weights and a sparse feature vector alpha * sparse^T * w + b

possible with subset

参数
alphascalar to multiply with
vecdense vector to compute dot product with
dimlength of the dense vector
bbias
返回
dot product between dense weights and a sparse feature vector

在文件 SGSparseVector.cpp58 行定义.

T dense_dot ( SGVector< ST >  vec)

compute the dot product between dense weights and a sparse feature vector sparse^T * w

参数
vecdense vector to compute dot product with
返回
dot product between dense weights and a sparse feature vector

在文件 SGSparseVector.cpp100 行定义.

void display_vector ( const char *  name = "vector",
const char *  prefix = "" 
)

display vector

参数
namevector name in output
prefixprepend on every entry
void display_vector ( const char *  name,
const char *  prefix 
)

在文件 SGSparseVector.cpp438 行定义.

void display_vector ( const char *  name,
const char *  prefix 
)

在文件 SGSparseVector.cpp451 行定义.

void display_vector ( const char *  name,
const char *  prefix 
)

在文件 SGSparseVector.cpp464 行定义.

void display_vector ( const char *  name,
const char *  prefix 
)

在文件 SGSparseVector.cpp477 行定义.

void display_vector ( const char *  name,
const char *  prefix 
)

在文件 SGSparseVector.cpp490 行定义.

void display_vector ( const char *  name,
const char *  prefix 
)

在文件 SGSparseVector.cpp503 行定义.

void display_vector ( const char *  name,
const char *  prefix 
)

在文件 SGSparseVector.cpp516 行定义.

void display_vector ( const char *  name,
const char *  prefix 
)

在文件 SGSparseVector.cpp529 行定义.

void display_vector ( const char *  name,
const char *  prefix 
)

在文件 SGSparseVector.cpp542 行定义.

void display_vector ( const char *  name,
const char *  prefix 
)

在文件 SGSparseVector.cpp555 行定义.

void display_vector ( const char *  name,
const char *  prefix 
)

在文件 SGSparseVector.cpp568 行定义.

void display_vector ( const char *  name,
const char *  prefix 
)

在文件 SGSparseVector.cpp581 行定义.

void display_vector ( const char *  name,
const char *  prefix 
)

在文件 SGSparseVector.cpp594 行定义.

void display_vector ( const char *  name,
const char *  prefix 
)

在文件 SGSparseVector.cpp607 行定义.

T dot_prod_expensive_unsorted ( const SGSparseVector< T > &  a,
const SGSparseVector< T > &  b 
)
staticprotected

helper function to compute dot product for unsorted sparse vectors

You should not use this at all, since computational complexity is in O(n^2)

参数
avector a
bvector b
返回
dot product

在文件 SGSparseVector.cpp414 行定义.

void free_data ( )
protectedvirtual

needs to be overridden to free data

实现了 SGReferencedData.

在文件 SGSparseVector.cpp407 行定义.

SGSparseVector<T> get ( )

get the sparse vector (no copying is done here)

返回
the refcount increased vector

在文件 SGSparseVector.h107 行定义.

SGVector< T > get_dense ( int32_t  dimension)

get dense representation of given size

参数
dimensionof requested dense vector
返回
SGVector<T>

在文件 SGSparseVector.cpp334 行定义.

SGVector< T > get_dense ( )

get shortet dense representation for sparse vector

返回
SGVector<T>

在文件 SGSparseVector.cpp315 行定义.

T get_feature ( int32_t  index)

get feature value for index

参数
index
返回
value

在文件 SGSparseVector.cpp298 行定义.

int32_t get_num_dimensions ( )

get number of dimensions

返回
largest feature index

在文件 SGSparseVector.cpp167 行定义.

void init_data ( )
protectedvirtual

needs to be overridden to initialize empty data

实现了 SGReferencedData.

在文件 SGSparseVector.cpp400 行定义.

bool is_sorted ( ) const

Utility function to tell if feature indices are sorted

返回
bool (true if sorted, else false)

在文件 SGSparseVector.cpp279 行定义.

void load ( CFile loader)

load vector from file

参数
loaderFile object via which to load data

在文件 SGSparseVector.cpp361 行定义.

void load ( CFile loader)

在文件 SGSparseVector.cpp381 行定义.

int32_t ref ( )
protectedinherited

increase reference counter

返回
reference count

在文件 SGReferencedData.cpp64 行定义.

int32_t ref_count ( )
inherited

display reference counter

返回
reference count

在文件 SGReferencedData.cpp41 行定义.

void save ( CFile saver)

save vector to file

参数
saverFile object via which to save data

在文件 SGSparseVector.cpp371 行定义.

void save ( CFile saver)

在文件 SGSparseVector.cpp387 行定义.

void sort_features ( bool  stable_pointer = false)

sort features by indices (Setting stable_pointer=true to guarantee that pointer features does not change. On the other hand, stable_pointer=false can shrink the vector if possible.)

参数
stable_pointer(default false) enforce stable pointer

在文件 SGSparseVector.cpp188 行定义.

T sparse_dot ( const SGSparseVector< T > &  v)

compute the dot product between current sparse vector and a given sparse vector. sparse_a^T * sparse_b

参数
vsparse vector
返回
dot product between the current sparse vector and v sparse vector

在文件 SGSparseVector.cpp123 行定义.

T sparse_dot ( const SGSparseVector< T > &  a,
const SGSparseVector< T > &  b 
)
static

compute the dot product between two sparse vectors. sparse_a^T * sparse_b

参数
asparse vector
bsparse vector
返回
dot product between a and b

在文件 SGSparseVector.cpp129 行定义.

int32_t unref ( )
protectedinherited

decrement reference counter and deallocate object if refcount is zero before or after decrementing it

返回
reference count

在文件 SGReferencedData.cpp84 行定义.

类成员变量说明

SGSparseVectorEntry<T>* features

features

在文件 SGSparseVector.h215 行定义.

index_t num_feat_entries

number of feature entries

在文件 SGSparseVector.h212 行定义.


The documentation for this singleton was generated from the following files:

SHOGUN 机器学习工具包 - 项目文档