Logo ROOT   6.12/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 #include "TObject.h"
38 #include "TString.h"
39 
40 namespace TMVA {
41 
42  class TActivation {
43 
44  public:
45 
47  virtual ~TActivation() {}
48 
49  // evaluate the activation function
50  virtual Double_t Eval(Double_t arg) = 0;
51 
52  // evaluate the derivative of the activation function
53  virtual Double_t EvalDerivative(Double_t arg) = 0;
54 
55  // minimum of the range of activation function
56  virtual Double_t GetMin() = 0;
57 
58  // maximum of the range of the activation function
59  virtual Double_t GetMax() = 0;
60 
61  // expression for activation function
62  virtual TString GetExpression() = 0;
63 
64  // writer of function code
65  virtual void MakeFunction(std::ostream& fout, const TString& fncName) = 0;
66 
67  ClassDef(TActivation,0); // Interface for TNeuron activation function classes
68 
69  };
70 
71 } // namespace TMVA
72 
73 #endif
virtual Double_t GetMax()=0
virtual TString GetExpression()=0
virtual Double_t GetMin()=0
Basic string class.
Definition: TString.h:125
virtual Double_t Eval(Double_t arg)=0
#define ClassDef(name, id)
Definition: Rtypes.h:320
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:47
Interface for TNeuron activation function classes.
Definition: TActivation.h:42
virtual Double_t EvalDerivative(Double_t arg)=0