Public Member Functions | Protected Member Functions

CCosineDistance Class Reference


Detailed Description

class CosineDistance

The Cosine distance is obtained by using the Cosine similarity (Orchini similarity, angular similarity, normalized dot product), which measures similarity between two vectors by finding their angle. An extension to the Cosine similarity yields the Tanimoto coefficient.

\[\displaystyle d(\bf{x},\bf{x'}) = 1 - \frac{\sum_{i=1}^{n}\bf{x_{i}}\bf{x'_{i}}} {\sqrt{\sum_{i=1}^{n} x_{i}^2 \sum_{i=1}^{n} {x'}_{i}^2}} \quad x,x' \in R^{n} \]

See also:
Wikipedia: Cosine similarity
CTanimotoDistance

Definition at line 36 of file CosineDistance.h.

Inheritance diagram for CCosineDistance:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 CCosineDistance ()
 CCosineDistance (CSimpleFeatures< float64_t > *l, CSimpleFeatures< float64_t > *r)
virtual ~CCosineDistance ()
virtual bool init (CFeatures *l, CFeatures *r)
virtual void cleanup ()
virtual EDistanceType get_distance_type ()
virtual const char * get_name () const

Protected Member Functions

virtual float64_t compute (int32_t idx_a, int32_t idx_b)

Constructor & Destructor Documentation

CCosineDistance (  ) 

default constructor

Definition at line 20 of file CosineDistance.cpp.

constructor

Parameters:
l features of left-hand side
r features of right-hand side

Definition at line 25 of file CosineDistance.cpp.

~CCosineDistance (  )  [virtual]

Definition at line 31 of file CosineDistance.cpp.


Member Function Documentation

void cleanup (  )  [virtual]

cleanup distance

Implements CSimpleDistance< float64_t >.

Definition at line 41 of file CosineDistance.cpp.

float64_t compute ( int32_t  idx_a,
int32_t  idx_b 
) [protected, virtual]

compute distance for features a and b idx_{a,b} denote the index of the feature vectors in the corresponding feature object

Implements CDistance.

Definition at line 45 of file CosineDistance.cpp.

virtual EDistanceType get_distance_type (  )  [virtual]

get distance type we are

Returns:
distance type COSINE

Implements CSimpleDistance< float64_t >.

Definition at line 65 of file CosineDistance.h.

virtual const char* get_name ( void   )  const [virtual]

get name of the distance

Returns:
name Cosine distance

Reimplemented from CSimpleDistance< float64_t >.

Definition at line 71 of file CosineDistance.h.

bool init ( CFeatures l,
CFeatures r 
) [virtual]

init distance

Parameters:
l features of left-hand side
r features of right-hand side
Returns:
if init was successful

Reimplemented from CSimpleDistance< float64_t >.

Definition at line 36 of file CosineDistance.cpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

SHOGUN Machine Learning Toolbox - Documentation