blob: ccd111932da56fd8f70b185e9f70b53efb29ce00 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
#ifndef _FONCTIONACTIVATION_H_
#define _FONCTIONACTIVATION_H_
#include<math.h>
/**
* L'objectif ce cette classe et d'être appeller pour l'activation
* et donc changer plus facilement la fonction d'activation pour le test.
*/
class FonctionActivation {
public:
typedef enum {
IDENTITY,
BINARYSTEP,
SIGMOID, // : Hyperparameter k
TAN,
SIN,
/* Rectifier */
RELU, // Basic : ramp function
LRELU, // Leaky function : 0.01
PRELU, // Hyperparameter : Hyperparameter k
ELU // Exponential and ramp
} EnumFonctionActivation;
private:
EnumFonctionActivation fonctionActivation;
public:
FonctionActivation();
FonctionActivation(EnumFonctionActivation fonctionActivation);
void setFonctionActivation(EnumFonctionActivation fonctionActivation);
double getValeurActivation(double sum, double k = 0) const;
double getValeurDerivee(double sum, double k = 0) const;
};
#endif
|