SHOGUN  4.1.0
 全部  命名空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义  
VwRegressor.h
浏览该文件的文档.
1 /*
2  * Copyright (c) 2009 Yahoo! Inc. All rights reserved. The copyrights
3  * embodied in the content of this file are licensed under the BSD
4  * (revised) open source license.
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 3 of the License, or
9  * (at your option) any later version.
10  *
11  * Written (W) 2011 Shashwat Lal Das
12  * Adaptation of Vowpal Wabbit v5.1.
13  * Copyright (C) 2011 Berlin Institute of Technology and Max-Planck-Society.
14  */
15 
16 #ifndef _VW_REGRESSOR_H__
17 #define _VW_REGRESSOR_H__
18 
19 #include <shogun/lib/config.h>
20 
21 #include <shogun/base/SGObject.h>
22 #include <shogun/lib/DataType.h>
25 
26 namespace shogun
27 {
28 
37 class CVwRegressor: public CSGObject
38 {
39 public:
43  CVwRegressor();
44 
50  CVwRegressor(CVwEnvironment* env_to_use);
51 
55  virtual ~CVwRegressor();
56 
65  inline float64_t get_loss(float64_t prediction, float64_t label)
66  {
67  return loss->loss(prediction, label);
68  }
69 
80  inline float64_t get_update(float64_t prediction, float64_t label,
81  float64_t eta_t, float64_t norm)
82  {
83  return loss->get_update(prediction, label, eta_t, norm);
84  }
85 
92  virtual void dump_regressor(char* reg_name, bool as_text);
93 
99  virtual void load_regressor(char* file_name);
100 
105  virtual const char* get_name() const { return "VwRegressor"; }
106 
112  virtual void init(CVwEnvironment* env_to_use = NULL);
113 
114 public:
119 
120 protected:
123 };
124 
125 }
126 #endif // _VW_REGRESSOR_H__
double norm(double *v, double p, int n)
Definition: epph.cpp:452
Class CLossFunction is the base class of all loss functions.
Definition: LossFunction.h:57
virtual void load_regressor(char *file_name)
virtual const char * get_name() const
Definition: VwRegressor.h:105
virtual float64_t get_update(float64_t prediction, float64_t label, float64_t eta_t, float64_t norm)=0
Class CVwEnvironment is the environment used by VW.
Definition: VwEnvironment.h:41
CLossFunction * loss
Loss function.
Definition: VwRegressor.h:118
float32_t ** weight_vectors
Weight vectors, one array for each thread.
Definition: VwRegressor.h:116
float64_t get_loss(float64_t prediction, float64_t label)
Definition: VwRegressor.h:65
Class SGObject is the base class of all shogun objects.
Definition: SGObject.h:112
double float64_t
Definition: common.h:50
Regressor used by VW.
Definition: VwRegressor.h:37
virtual float64_t loss(float64_t prediction, float64_t label)
Definition: LossFunction.h:79
float float32_t
Definition: common.h:49
all of classes and functions are contained in the shogun namespace
Definition: class_list.h:18
CVwEnvironment * env
Environment.
Definition: VwRegressor.h:122
virtual void dump_regressor(char *reg_name, bool as_text)
Definition: VwRegressor.cpp:93
float64_t get_update(float64_t prediction, float64_t label, float64_t eta_t, float64_t norm)
Definition: VwRegressor.h:80

SHOGUN 机器学习工具包 - 项目文档