SHOGUN  v1.1.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
LogLoss.h
Go to the documentation of this file.
1 /*
2  * This program is free software; you can redistribute it and/or modify
3  * it under the terms of the GNU General Public License as published by
4  * the Free Software Foundation; either version 3 of the License, or
5  * (at your option) any later version.
6  *
7  * Written (W) 2011 Shashwat Lal Das
8  * Copyright (c) 2011 Berlin Institute of Technology and Max-Planck-Society.
9  */
10 
11 #ifndef _LOGLOSS_H__
12 #define _LOGLOSS_H__
13 
15 
16 namespace shogun
17 {
21 class CLogLoss: public CLossFunction
22 {
23 public:
28 
32  ~CLogLoss() {};
33 
42  float64_t loss(float64_t prediction, float64_t label);
43 
52  virtual float64_t first_derivative(float64_t prediction, float64_t label);
53 
62  virtual float64_t second_derivative(float64_t prediction, float64_t label);
63 
74  virtual float64_t get_update(float64_t prediction, float64_t label, float64_t eta_t, float64_t norm);
75 
84  virtual float64_t get_square_grad(float64_t prediction, float64_t label);
85 
91  virtual ELossType get_loss_type() { return L_LOGLOSS; }
92 
93  virtual const char* get_name() const { return "LogLoss"; }
94 };
95 
96 }
97 
98 #endif

SHOGUN Machine Learning Toolbox - Documentation