28 num_dimensions(orig.num_dimensions)
106 result += f1->
dot(vec_idx1, f2,vec_idx2) *
144 int32_t num=stop-start;
159 for (int32_t i=0; i<num; i++)
191 for (int32_t i=0; i<num; i++)
218 combined_feature_iterator* it=SG_MALLOC(combined_feature_iterator, 1);
222 it->iterator=it->f->get_feature_iterator(vector_index);
223 it->vector_index=vector_index;
230 combined_feature_iterator* it = (combined_feature_iterator*) iterator;
234 if (it->f->get_next_feature(index, value, it->iterator))
246 it->f->free_feature_iterator(it->iterator);
250 it->iterator=it->f->get_feature_iterator(it->vector_index);
261 combined_feature_iterator* it = (combined_feature_iterator*) iterator;
262 if (it->iterator && it->f)
263 it->f->free_feature_iterator(it->iterator);
294 if (succesful_deletion)
296 return succesful_deletion;
325 for (
index_t f_idx=0; f_idx<num_weights; f_idx++)
346 void CCombinedDotFeatures::init()
349 "Total number of dimensions.");
351 "Total number of vectors.");
353 "feature_array",
"Feature array.");
virtual void dense_dot_range(float64_t *output, int32_t start, int32_t stop, float64_t *alphas, float64_t *vec, int32_t dim, float64_t b)
int32_t iterator_idx
idx for iterator
virtual int32_t get_nnz_features_for_vector(int32_t num)=0
CDynamicObjectArray * feature_array
int32_t num_vectors
total number of vectors
virtual void dense_dot_range(float64_t *output, int32_t start, int32_t stop, float64_t *alphas, float64_t *vec, int32_t dim, float64_t b)
virtual bool get_next_feature(int32_t &index, float64_t &value, void *iterator)
virtual float64_t dense_dot(int32_t vec_idx1, const float64_t *vec2, int32_t vec2_len)=0
virtual ~CCombinedDotFeatures()
void update_dim_feature_space_and_num_vec()
bool insert_feature_obj(CDotFeatures *obj, int32_t idx)
virtual void set_subfeature_weights(SGVector< float64_t > weights)
bool insert_element(CSGObject *e, int32_t index)
virtual float64_t dot(int32_t vec_idx1, CDotFeatures *df, int32_t vec_idx2)=0
virtual int32_t get_num_vectors() const =0
virtual void dense_dot_range_subset(int32_t *sub_index, int32_t num, float64_t *output, float64_t *alphas, float64_t *vec, int32_t dim, float64_t b)
virtual void add_to_dense_vec(float64_t alpha, int32_t vec_idx1, float64_t *vec2, int32_t vec2_len, bool abs_val=false)=0
bool delete_feature_obj(int32_t idx)
int32_t get_num_elements() const
virtual CFeatures * duplicate() const
Features that support dot products among other operations.
bool append_feature_obj(CDotFeatures *obj)
virtual int32_t get_dim_feature_space() const =0
virtual EFeatureType get_feature_type() const
virtual SGVector< float64_t > get_subfeature_weights()
void add(bool *param, const char *name, const char *description="")
virtual EFeatureClass get_feature_class() const
void list_feature_obj() const
Class SGObject is the base class of all shogun objects.
int32_t get_num_feature_obj()
virtual void dense_dot_range_subset(int32_t *sub_index, int32_t num, float64_t *output, float64_t *alphas, float64_t *vec, int32_t dim, float64_t b)
virtual void add_to_dense_vec(float64_t alpha, int32_t vec_idx1, float64_t *vec2, int32_t vec2_len, bool abs_val=false)
CDotFeatures * get_feature_obj(int32_t idx)
virtual EFeatureClass get_feature_class() const =0
Dynamic array class for CSGObject pointers that creates an array that can be used like a list or an a...
virtual int32_t get_nnz_features_for_vector(int32_t num)
all of classes and functions are contained in the shogun namespace
The class Features is the base class of all feature objects.
Features that allow stacking of a number of DotFeatures.
virtual void free_feature_iterator(void *iterator)
virtual float64_t dense_dot(int32_t vec_idx1, const float64_t *vec2, int32_t vec2_len)
CSGObject * get_element(int32_t index) const
void set_combined_feature_weight(float64_t nw)
void push_back(CSGObject *e)
bool delete_element(int32_t idx)
virtual void * get_feature_iterator(int32_t vector_index)
int32_t num_dimensions
total number of dimensions
virtual float64_t dot(int32_t vec_idx1, CDotFeatures *df, int32_t vec_idx2)
float64_t get_combined_feature_weight()
virtual EFeatureType get_feature_type() const =0