Last active
November 30, 2015 05:04
-
-
Save AlexanderSavochkin/b91259c0e0cfbf33166e to your computer and use it in GitHub Desktop.
Multinomial logistic regression model header file
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class MultinomialLogRelModel | |
{ | |
//Основные параметры модели | |
int num_classes; //Количество классов | |
int num_sample_features; //Количество признаков в объектах | |
valarray<double> model_weights; //Веса модели | |
double regularization_coeff; //Коэффициент регуляризации | |
double learning_rate; //Параметр шага в методе градиентного спуска | |
public: | |
... | |
// | |
// | |
void featurize(const valarray<double>& sample_features, int label, valarray<double>& model_features) const; | |
//Вычисляет вектор частных производных (градиет) логарифмической функции правдоподобия по параметрам модели | |
//для одного обучающего примера | |
void gradientForSample(const valarray<double>& sample_features, int label, valarray<double>& gradient) const; | |
... | |
// | |
int classify(const valarray<double>& sample_features); | |
//То же самое, что и предыдущий метод "classify", но дополнительно возвращает вероятности для каждого класса | |
int probabilities(const valarray<double>& sample_features, valarray<double>& probabilities) | |
}; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment