SHOGUN  5.0.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules
HingeLoss.h
Go to the documentation of this file.
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  Copyright (c) 2011 Berlin Institute of Technology and Max-Planck-Society.
7 
8  This program is free software; you can redistribute it and/or modify
9  it under the terms of the GNU General Public License as published by
10  the Free Software Foundation; either version 3 of the License, or
11  (at your option) any later version.
12 
13  Modifications (w) 2011 Shashwat Lal Das
14  Modifications (w) 2012 Fernando José Iglesias García
15 */
16 
17 #ifndef _HINGELOSS_H__
18 #define _HINGELOSS_H__
19 
20 #include <shogun/lib/config.h>
21 
23 
24 namespace shogun
25 {
30 {
31 public:
36 
41 
50  float64_t loss(float64_t prediction, float64_t label);
51 
61 
70  virtual float64_t first_derivative(float64_t prediction, float64_t label);
71 
80 
89  virtual float64_t second_derivative(float64_t prediction, float64_t label);
90 
99 
110  virtual float64_t get_update(float64_t prediction, float64_t label, float64_t eta_t, float64_t norm);
111 
120  virtual float64_t get_square_grad(float64_t prediction, float64_t label);
121 
127  virtual ELossType get_loss_type() { return L_HINGELOSS; }
128 
129  virtual const char* get_name() const { return "HingeLoss"; }
130 };
131 
132 }
133 
134 #endif
float64_t loss(float64_t prediction, float64_t label)
Definition: HingeLoss.cpp:22
Class CLossFunction is the base class of all loss functions.
Definition: LossFunction.h:57
virtual float64_t get_update(float64_t prediction, float64_t label, float64_t eta_t, float64_t norm)
Definition: HingeLoss.cpp:54
virtual ELossType get_loss_type()
Definition: HingeLoss.h:127
double float64_t
Definition: common.h:50
virtual float64_t second_derivative(float64_t prediction, float64_t label)
Definition: HingeLoss.cpp:44
virtual float64_t first_derivative(float64_t prediction, float64_t label)
Definition: HingeLoss.cpp:34
all of classes and functions are contained in the shogun namespace
Definition: class_list.h:18
CHingeLoss implements the hinge loss function.
Definition: HingeLoss.h:29
virtual const char * get_name() const
Definition: HingeLoss.h:129
ELossType
shogun loss type
Definition: LossFunction.h:28
virtual float64_t get_square_grad(float64_t prediction, float64_t label)
Definition: HingeLoss.cpp:63

SHOGUN Machine Learning Toolbox - Documentation