Medial Code Documentation
Loading...
Searching...
No Matches
Public Member Functions
MedVW Class Reference

Vowpal Wabbit library who have been developed in Yahoo Research, It has various machine learning models specially for text. More...

#include <MedVW.h>

Inheritance diagram for MedVW:
MedPredictor SerializableObject

Public Member Functions

void init_defaults ()
 
int init_from_string (string text)
 The initialization parameters - please look at vowpal wabbit documentation.
 
int Learn (float *x, float *y, const float *w, int nsamples, int nftrs)
 Learn should be implemented for each model.
 
int Predict (float *x, float *&preds, int nsamples, int nftrs) const
 Predict should be implemented for each model.
 
size_t get_size ()
 Gets bytes sizes for serializations.
 
size_t serialize (unsigned char *blob)
 Serialiazing object to blob memory. return number ob bytes wrote to memory.
 
size_t deserialize (unsigned char *blob)
 Deserialiazing blob to object. returns number of bytes read.
 
int write_to_file (const string &path)
 The Serialization function.
 
int read_from_file (const string &path)
 The Serialization function.
 
- Public Member Functions inherited from MedPredictor
virtual int init (void *classifier_params)
 
int init_from_string (string initialization_text)
 
virtual int init (map< string, string > &mapper)
 Virtual to init object from parsed fields.
 
virtual int set_params (map< string, string > &mapper)
 
virtual void print (FILE *fp, const string &prefix, int level=0) const
 
virtual int n_preds_per_sample () const
 Number of predictions per sample. typically 1 - but some models return several per sample (for example a probability vector)
 
virtual int denormalize_model (float *f_avg, float *f_std, float label_avg, float label_std)
 
int learn (float *x, float *y, int nsamples, int nftrs)
 simple no weights call
 
virtual int learn (MedMat< float > &x, MedMat< float > &y, const vector< float > &wgts)
 MedMat x,y : will transpose/normalize x,y if needed by algorithm The convention is that untransposed mats are always samples x features, and transposed are features x samples.
 
int learn (MedMat< float > &x, MedMat< float > &y)
 MedMat x,y : will transpose/normalize x,y if needed by algorithm The convention is that untransposed mats are always samples x features, and transposed are features x samples.
 
int learn (MedMat< float > &x, vector< float > &y, const vector< float > &wgts)
 MedMat x, vector y: will transpose normalize x if needed (y assumed to be normalized)
 
int learn (MedMat< float > &x, vector< float > &y)
 MedMat x, vector y: will transpose normalize x if needed (y assumed to be normalized)
 
int learn (vector< float > &x, vector< float > &y, const vector< float > &wgts, int n_samples, int n_ftrs)
 vector x,y: transpose/normalizations not done.
 
int learn (vector< float > &x, vector< float > &y, int n_samples, int n_ftrs)
 vector x,y: transpose/normalizations not done.
 
virtual int predict (MedMat< float > &x, vector< float > &preds) const
 
int predict (vector< float > &x, vector< float > &preds, int n_samples, int n_ftrs) const
 
int threaded_predict (MedMat< float > &x, vector< float > &preds, int nthreads) const
 
int learn (const MedFeatures &features)
 
int learn (const MedFeatures &features, vector< string > &names)
 
virtual int predict (MedFeatures &features) const
 
virtual void calc_feature_importance (vector< float > &features_importance_scores, const string &general_params)
 Feature Importance - assume called after learn.
 
virtual void calc_feature_importance (vector< float > &features_importance_scores, const string &general_params, const MedFeatures *features)
 
virtual void calc_feature_contribs (MedMat< float > &x, MedMat< float > &contribs)
 Feature contributions explains the prediction on each sample (aka BUT_WHY)
 
virtual void calc_feature_contribs_conditional (MedMat< float > &mat_x_in, unordered_map< string, float > &contiditional_variables, MedMat< float > &mat_x_out, MedMat< float > &mat_contribs)
 
virtual void export_predictor (const string &output_fname)
 
int learn_prob_calibration (MedMat< float > &x, vector< float > &y, vector< float > &min_range, vector< float > &max_range, vector< float > &map_prob, int min_bucket_size=10000, float min_score_jump=0.001, float min_prob_jump=0.005, bool fix_prob_order=false)
 calibration for probability using training data
 
int convert_scores_to_prob (const vector< float > &preds, const vector< float > &min_range, const vector< float > &max_range, const vector< float > &map_prob, vector< float > &probs) const
 If you have ran learn_prob_calibration before, you have min_range,max_range,map_prob from This function - that is used to convert preds to probs.
 
int learn_prob_calibration (MedMat< float > &x, vector< float > &y, int poly_rank, vector< double > &params, int min_bucket_size=10000, float min_score_jump=0.001)
 Will create probability bins using Platt scale method.
 
template<class T , class L >
int convert_scores_to_prob (const vector< T > &preds, const vector< double > &params, vector< L > &converted) const
 Converts probability from Platt scale model.
 
virtual bool predict_single_not_implemented ()
 Prepartion function for fast prediction on single item each time.
 
virtual void prepare_predict_single ()
 
virtual void predict_single (const vector< float > &x, vector< float > &preds) const
 
virtual void predict_single (const vector< double > &x, vector< double > &preds) const
 
virtual void calc_feature_importance_shap (vector< float > &features_importance_scores, string &importance_type, const MedFeatures *features)
 
void * new_polymorphic (string derived_class_name)
 for polymorphic classes that want to be able to serialize/deserialize a pointer * to the derived class given its type one needs to implement this function to return a new to the derived class given its type (as in my_type)
 
size_t get_predictor_size ()
 
size_t predictor_serialize (unsigned char *blob)
 
- Public Member Functions inherited from SerializableObject
virtual int version () const
 Relevant for serializations.
 
virtual string my_class_name () const
 For better handling of serializations it is highly recommended that each SerializableObject inheriting class will implement the next method.
 
virtual void serialized_fields_name (vector< string > &field_names) const
 The names of the serialized fields.
 
virtual void pre_serialization ()
 
virtual void post_deserialization ()
 
size_t serialize_vec (vector< unsigned char > &blob)
 
size_t deserialize_vec (vector< unsigned char > &blob)
 
virtual size_t serialize (vector< unsigned char > &blob)
 
virtual size_t deserialize (vector< unsigned char > &blob)
 
virtual int read_from_file_unsafe (const string &fname)
 read and deserialize model without checking version number - unsafe read
 
int init_from_string (string init_string)
 Init from string.
 
int init_params_from_file (string init_file)
 
int init_param_from_file (string file_str, string &param)
 
int update_from_string (const string &init_string)
 
virtual int update (map< string, string > &map)
 Virtual to update object from parsed fields.
 
virtual string object_json () const
 

Additional Inherited Members

- Static Public Member Functions inherited from MedPredictor
static MedPredictormake_predictor (string model_type)
 
static MedPredictormake_predictor (MedPredictorTypes model_type)
 
static MedPredictormake_predictor (string model_type, string params)
 
static MedPredictormake_predictor (MedPredictorTypes model_type, string params)
 
- Data Fields inherited from MedPredictor
MedPredictorTypes classifier_type
 The Predicotr enum type.
 
bool transpose_for_learn
 True if need to transpose before learn.
 
bool normalize_for_learn
 True if need to normalize before learn.
 
bool normalize_y_for_learn
 True if need to normalize labels before learn.
 
bool transpose_for_predict
 True if need to transpose before predict.
 
bool normalize_for_predict
 True if need to normalize before predict.
 
vector< string > model_features
 The model features used in Learn, to validate when caling predict.
 
int features_count = 0
 The model features count used in Learn, to validate when caling predict.
 
- Protected Member Functions inherited from MedPredictor
void prepare_x_mat (MedMat< float > &x, const vector< float > &wgts, int &nsamples, int &nftrs, bool transpose_needed) const
 
void predict_thread (void *p) const
 

Detailed Description

Vowpal Wabbit library who have been developed in Yahoo Research, It has various machine learning models specially for text.

It may be initialize by string

Member Function Documentation

◆ deserialize()

size_t MedVW::deserialize ( unsigned char *  blob)
virtual

Deserialiazing blob to object. returns number of bytes read.

Reimplemented from SerializableObject.

◆ get_size()

size_t MedVW::get_size ( )
virtual

Gets bytes sizes for serializations.

Reimplemented from SerializableObject.

◆ init_defaults()

void MedVW::init_defaults ( )
virtual

Reimplemented from MedPredictor.

◆ Learn()

int MedVW::Learn ( float *  x,
float *  y,
const float *  w,
int  n_samples,
int  n_ftrs 
)
virtual

Learn should be implemented for each model.

This API always assumes the data is already normalized/transposed as needed, and never changes data in x,y,w. method should support calling with w=NULL.

Reimplemented from MedPredictor.

◆ Predict()

int MedVW::Predict ( float *  x,
float *&  preds,
int  n_samples,
int  n_ftrs 
) const
virtual

Predict should be implemented for each model.

This API assumes x is normalized/transposed if needed. preds should either be pre-allocated or NULL - in which case the predictor should allocate it to the right size.

Reimplemented from MedPredictor.

◆ read_from_file()

int MedVW::read_from_file ( const string &  path)
virtual

The Serialization function.

Reimplemented from SerializableObject.

◆ serialize()

size_t MedVW::serialize ( unsigned char *  blob)
virtual

Serialiazing object to blob memory. return number ob bytes wrote to memory.

Reimplemented from SerializableObject.

◆ write_to_file()

int MedVW::write_to_file ( const string &  path)
virtual

The Serialization function.

Reimplemented from SerializableObject.


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