22 m_min_label(0), m_num_classes(0), m_dim(0), m_means(), m_variances(),
23 m_label_prob(), m_rates()
30 m_min_label(0), m_num_classes(0), m_dim(0), m_means(),
31 m_variances(), m_label_prob(), m_rates()
37 SG_ERROR(
"Specified features are not of type CDotFeatures\n")
56 SG_ERROR(
"Specified features are not of type CDotFeatures\n")
69 SG_ERROR(
"Specified features are not of type CDotFeatures\n")
80 int32_t min_label = train_labels.vector[0];
81 int32_t max_label = train_labels.vector[0];
85 for (i=1; i<train_labels.vlen; i++)
87 min_label =
CMath::min(min_label, train_labels.vector[i]);
88 max_label =
CMath::max(max_label, train_labels.vector[i]);
92 for (i=0; i<train_labels.vlen; i++)
93 train_labels.vector[i]-= min_label;
115 int32_t max_progress = 2 * train_labels.vlen + 2 *
m_num_classes;
118 int32_t progress = 0;
122 for (i=0; i<train_labels.vlen; i++)
125 for (j=0; j<
m_dim; j++)
128 m_label_prob.vector[train_labels.vector[i]]+=1.0;
137 for (j=0; j<
m_dim; j++)
138 m_means(j, i) /= m_label_prob.vector[i];
145 for (i=0; i<train_labels.vlen; i++)
148 for (j=0; j<
m_dim; j++)
161 for (j=0; j<
m_dim; j++)
162 m_variances(j, i) /= m_label_prob.vector[i] > 1 ? m_label_prob.vector[i]-1 : 1;
190 for (
int i = 0; i < num_vectors; i++)
220 for (k=0; k<
m_dim; k++)
227 int32_t max_label_idx = 0;
virtual ELabelType get_label_type() const =0
SGVector< float64_t > m_label_prob
a priori probabilities of labels
experimental abstract native multiclass machine class
The class Labels models labels, i.e. class assignments of objects.
virtual int32_t get_num_labels() const =0
multi-class labels 0,1,...
virtual CMulticlassLabels * apply_multiclass(CFeatures *data=NULL)
virtual ~CGaussianNaiveBayes()
virtual int32_t get_num_vectors() const =0
Features that support dot products among other operations.
SGMatrix< float64_t > m_variances
variances for normal distributions of features
SGVector< float64_t > m_rates
label rates
virtual int32_t get_dim_feature_space() const =0
bool set_label(int32_t idx, float64_t label)
Multiclass Labels for multi-class classification.
int32_t m_num_classes
number of different classes (labels)
int32_t m_min_label
minimal label
virtual void set_features(CFeatures *features)
int32_t m_dim
dimensionality of feature space
virtual bool train_machine(CFeatures *data=NULL)
all of classes and functions are contained in the shogun namespace
SGMatrix< float64_t > m_means
means for normal distributions of features
The class Features is the base class of all feature objects.
static float64_t log(float64_t v)
SGVector< float64_t > get_computed_dot_feature_vector(int32_t num)
static float32_t sqrt(float32_t x)
virtual CFeatures * get_features()
bool has_property(EFeatureProperty p) const
virtual float64_t apply_one(int32_t idx)
CDotFeatures * m_features
features for training or classifying
virtual void set_labels(CLabels *lab)