diff options
| author | Gaspard Coulet <gaspard.coulet@mines-ales.org> | 2021-04-28 23:12:36 +0200 |
|---|---|---|
| committer | Gaspard Coulet <gaspard.coulet@mines-ales.org> | 2021-04-28 23:12:36 +0200 |
| commit | b4c345e6a5fa929ba20eac19183b9c777055f52d (patch) | |
| tree | 23a0232f2526c5ab7f53391609a8a0a5960865f0 /Neurone/FonctionActivation.h | |
Initial commit
Diffstat (limited to 'Neurone/FonctionActivation.h')
| -rw-r--r-- | Neurone/FonctionActivation.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/Neurone/FonctionActivation.h b/Neurone/FonctionActivation.h new file mode 100644 index 0000000..ccd1119 --- /dev/null +++ b/Neurone/FonctionActivation.h @@ -0,0 +1,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 |
