3#ifndef SI_SUBADAPTIVE_SUBADAPTIVE_H
4#define SI_SUBADAPTIVE_SUBADAPTIVE_H
91 virtual double prop(
const std::vector<double> & vec) = 0;
97 virtual std::vector<double>*
107 virtual bool openFile(
const std::string & filename =
"");
118 std::set<std::string> & listNames)
const;
124 static std::string mode[] = {
"class",
"potential"};
134 virtual void setStats(
const std::vector<double> &mean,
135 const std::vector<double> &sigma);
137 virtual void learnStats(
const std::vector<double> &vec,
double outp=0);
140 const std::map<unsigned, Stat> &
stats()
const;
El�ment adaptatif terminal.
Specialization for sigraph : Y as only one dim.
double _mg
Minimum global d'erreur.
double appGoodErrorRate() const
double _mgl
Min local d'erreur sur les bons (généralisation)
void setMisclassBadRate(double x)
virtual SubAdResponse * test(const SiDBLearnable &tst)
double _Mgg
Max global d'erreur sur les bons.
void setGenGoodErrorRate(double rate)
double _genErrorRate
Taux d'erreur de généralisation.
void setGenErrorRate(double rate)
void updateGoodErrors(double err)
Met à jour les taux d'erreur de généralisation pour les bons exemples (appelé par test())
static double GenForgetFactor
Facteur d'oubli pour moyenner les taux d'erreurs de généralisation.
static double LocalForgetFactor
Facteur d'oubli pour les min et max locaux.
virtual double unNormalizedPotential(double nout) const
void updateErrors(double err)
Met à jour les taux d'erreur de généralisation (appelé par test())
SubAdaptive(const std::string name="")
double genMeanErrorRate() const
C'est CETTE fonction qui est utilisée pour la pondération des experts.
virtual bool fileOpened() const
répond si le fichier est ouvert ou non
virtual std::string chooseFilename(const std::string &basename="") const
Choisit un nom de fichier par défaut.
double _errorRate
Taux d'erreur d'apprentissage.
double _mgg
Min global d'erreur sur les bons.
virtual double normalizedPotential(double outp) const
double genBadErrorRate() const
double _minOut
Borne inf de la sortie.
double _ggErrorRate
Taux d'erreur de généralisation sur les bons exemples.
void setMisclassGoodRate(double x)
void setRelianceWeightMethod(RelianceWeightMethod x)
std::ostream * _stream
fichier de sauvegarde des données reçues en apprentissage
static double GenGoodForgetFactor
Facteur d'oubli pour moyenner les taux d'erreurs de généralisation des bons exemples.
virtual void setMinOut(double mino)
Fixe le min de la sortie.
double globalMaxGErr() const
void setStepsSinceGenMin(unsigned n)
static double GenBadForgetFactor
Facteur d'oubli pour moyenner les taux d'erreurs de généralisation des mauvais exemples.
double misclassBadRate() const
void setGlobalGoodMaxGErr(double e)
double globalMinGErr() const
void setLearnfinished(bool s)
virtual double relianceWeight() const
RelianceWeightMethod _relianceWeightMethod
virtual SubAdaptive * clone() const =0
copie
double misclassRate() const
void setGlobalMaxGErr(double e)
double genErrorRate() const
double getSigma(unsigned ind)
virtual SubAdaptive & operator=(const SubAdaptive &sa)
unsigned stepsSinceGenMin() const
static double ForgetFactor
Facteur d'oubli pour moyenner les taux d'erreurs.
virtual void getStreams(SubAdaptive &sa)
Transfère les fichiers ouverts d'un autre modèle (en cas de copie)
std::map< unsigned, Stat > _stats
Statistiques pour chaque entrée.
virtual SubAdResponse * train(AdaptiveLeaf &, const SiDBLearnable &tr, const SiDBLearnable &tst)=0
Cumule phase d'apprentissage (learn) et phase de test si besoin.
unsigned _nStats
Nombre d'exemples dans les stats.
double genGoodErrorRate() const
virtual void setFileNames(const std::string &)
Noms des fichiers de sauvegardes (des réseaux de neurones par ex.)
void setLocalGoodMinGErr(double e)
void setErrorRate(double rate)
void setGenBadErrorRate(double rate)
double getMean(unsigned ind)
RelianceWeightMethod relianceWeightMethod() const
virtual void init()
Initialise l'apprentissage (fonction abstraite)
std::ostream * _tstream
fichier de sauvegarde pour les données de propagation / test
void setLocalMaxGErr(double e)
virtual std::vector< double > * normalizeSelected(const double *vec, unsigned int size)
Normalise le vecteur d'entrée et ne retourne que les composantes sélectionnées dans le modèle.
bool _learnfinished
L'apprentissage a été effectué.
unsigned _stepsSinceGenMin
Nb de tests depuis le dernier minimum global.
double _ml
Minimum local d'erreur.
RealClassMode _real_class_mode
Real Class mode.
void setNStats(unsigned nstats)
double _maxOut
Borne sup de la sortie.
void setGlobalGenGBError(double e)
double _gbErrorRate
Taux d'erreur de généralisation sur les mauvais exemples.
virtual void learnStats(const std::vector< double > &vec, double outp=0)
Ajout à la base de statistiques.
double localMaxGErr() const
void setLocalGoodMaxGErr(double e)
double _mggb
Min global de (erreur bons + erreur mauvais) en généralisation.
double _Mgl
Max local d'erreur sur les bons.
void setAppGoodErrorRate(double e)
virtual void subFiles(const std::string &prefix, std::set< std::string > &listNames) const
Donne la liste des fichiers sous le modèle.
double misclassGoodRate() const
double localMinGErr() const
std::string getRealClassMode(void) const
std::string _name
Entrées utiles.
bool getLearnfinished(void) const
void setRealClassMode(RealClassMode m)
double _Mg
Maximum global d'erreur.
virtual double test(const SiVectorLearnable &vl)
Test: met à jour le taux d'erreur de généralisation Renvoie la valeur prédite par le classifieur.
const std::map< unsigned, Stat > & stats() const
virtual std::string fileNames() const
double _Ml
Maximum local d'erreur.
virtual bool hasIncrementalLearning(void) const =0
Apprentissage incrémental (vecteur par vecteur) ?
virtual double prop(const std::vector< double > &vec)=0
Propagation (model answer).
void setGlobalGoodMinGErr(double e)
void setName(const std::string name)
virtual bool openFile(const std::string &filename="")
Ouvre un fichier pour écrire les vecteurs de données.
virtual void setStats(const std::vector< double > &mean, const std::vector< double > &sigma)
SetStats from vectors.
virtual void closeFile()
Ferme le fichier.
void setGlobalMinGErr(double e)
void updateBadErrors(double err)
Met à jour les taux d'erreur de généralisation pour les bons exemples (appelé par test())
virtual void setMaxOut(double maxo)
Fixe le max de la sortie.
double _agErrorRate
Taux d'erreur d'apprentissage sur les bons exemples.
void setLocalMinGErr(double e)
virtual void setBaseName(const std::string &)
virtual void buildTree(Tree &tr) const
Conversion en arbre (pour IO)
virtual double getLearnedLabel(const SiVectorLearnable &vl) const
virtual void resetStats()
Vide toutes les stats.