Logo ROOT   6.08/07
Reference Guide
TActivation.h
Go to the documentation of this file.
1 // @(#)root/tmva $Id$
2 // Author: Matt Jachowski
3 
4 /**********************************************************************************
5  * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
6  * Package: TMVA *
7  * Class : TMVA::TActivation *
8  * *
9  * Description: *
10  * Interface for TNeuron activation function classes. *
11  * *
12  * Authors (alphabetical): *
13  * Matt Jachowski <jachowski@stanford.edu> - Stanford University, USA *
14  * *
15  * Copyright (c) 2005: *
16  * CERN, Switzerland *
17  * *
18  * Redistribution and use in source and binary forms, with or without *
19  * modification, are permitted according to the terms listed in LICENSE *
20  * (http://tmva.sourceforge.net/LICENSE) *
21  **********************************************************************************/
22 
23 
24 #ifndef ROOT_TMVA_TActivation
25 #define ROOT_TMVA_TActivation
26 
27 //////////////////////////////////////////////////////////////////////////
28 // //
29 // TActivation //
30 // //
31 // Interface for TNeuron activation function classes //
32 // //
33 //////////////////////////////////////////////////////////////////////////
34 
35 #include <iosfwd>
36 
37 #ifndef ROOT_TObject
38 #include "TObject.h"
39 #endif
40 #ifndef ROOT_TString
41 #include "TString.h"
42 #endif
43 
44 namespace TMVA {
45 
46  class TActivation {
47 
48  public:
49 
51  virtual ~TActivation() {}
52 
53  // evaluate the activation function
54  virtual Double_t Eval(Double_t arg) = 0;
55 
56  // evaulate the derivative of the activation function
57  virtual Double_t EvalDerivative(Double_t arg) = 0;
58 
59  // minimum of the range of activation function
60  virtual Double_t GetMin() = 0;
61 
62  // maximum of the range of the activation function
63  virtual Double_t GetMax() = 0;
64 
65  // expression for activation function
66  virtual TString GetExpression() = 0;
67 
68  // writer of function code
69  virtual void MakeFunction(std::ostream& fout, const TString& fncName) = 0;
70 
71  ClassDef(TActivation,0); // Interface for TNeuron activation function classes
72 
73  };
74 
75 } // namespace TMVA
76 
77 #endif
virtual Double_t GetMax()=0
virtual TString GetExpression()=0
virtual Double_t GetMin()=0
Basic string class.
Definition: TString.h:137
virtual Double_t Eval(Double_t arg)=0
#define ClassDef(name, id)
Definition: Rtypes.h:254
virtual void MakeFunction(std::ostream &fout, const TString &fncName)=0
double Double_t
Definition: RtypesCore.h:55
Abstract ClassifierFactory template that handles arbitrary types.
virtual ~TActivation()
Definition: TActivation.h:51
virtual Double_t EvalDerivative(Double_t arg)=0