122 assert_shape(vec2_len);
142 result+=vec2[offs+j];
150 result+=vec2[offs+j];
166 assert_shape(vec2_len);
180 alpha_correction+=1.0;
184 if (alpha_correction==0.0)
216 void CBinnedDotFeatures::assert_shape(int32_t vec2_len)
220 SG_ERROR(
"Bin matrix has shape (%d,%d) = %d entries, not matching vector" 227 SG_ERROR(
"Number of colums (%d) doesn't match number of features " 300 void CBinnedDotFeatures::init()
309 return "BinnedDotFeatures";
CDenseFeatures< float64_t > * get_simple_features()
virtual float64_t dense_dot(int32_t vec_idx1, const float64_t *vec2, int32_t vec2_len)
virtual EFeatureClass get_feature_class() const
void set_norm_one(bool norm_one)
CBinnedDotFeatures(int32_t size=0)
virtual int32_t get_num_vectors() const
#define SG_NOTIMPLEMENTED
CDenseFeatures< float64_t > * m_features
underlying features
void set_simple_features(CDenseFeatures< float64_t > *features)
Features that support dot products among other operations.
virtual bool get_next_feature(int32_t &index, float64_t &value, void *iterator)
virtual CFeatures * duplicate() const
EFeatureClass
shogun feature class
ST * get_feature_vector(int32_t num, int32_t &len, bool &dofree)
The class BinnedDotFeatures contains a 0-1 conversion of features into bins.
T * get_column_vector(index_t col) const
virtual int32_t get_nnz_features_for_vector(int32_t num)
SGMatrix< float64_t > m_bins
bins with limits
void free_feature_vector(ST *feat_vec, int32_t num, bool dofree)
virtual void add_to_dense_vec(float64_t alpha, int32_t vec_idx1, float64_t *vec2, int32_t vec2_len, bool abs_val=false)
virtual EFeatureClass get_feature_class() const =0
void set_bins(SGMatrix< float64_t > bins)
bool m_fill
fill up with 1's or flag just one column
virtual EFeatureType get_feature_type() const
EFeatureType
shogun feature type
int32_t get_num_features() const
virtual void free_feature_iterator(void *iterator)
virtual int32_t get_num_vectors() const
all of classes and functions are contained in the shogun namespace
T sum(const Container< T > &a, bool no_diag=false)
virtual int32_t get_dim_feature_space() const
virtual ~CBinnedDotFeatures()
The class Features is the base class of all feature objects.
bool m_norm_one
normalize vectors to have norm one
virtual const char * get_name() const
SGMatrix< float64_t > get_bins()
static float32_t sqrt(float32_t x)
virtual float64_t dot(int32_t vec_idx1, CDotFeatures *df, int32_t vec_idx2)
virtual void * get_feature_iterator(int32_t vector_index)
virtual EFeatureType get_feature_type() const =0