32 #ifndef XMIPPKERDENSOM_H 33 #define XMIPPKERDENSOM_H 56 KerDenSOM(
double _reg0,
double _reg1,
unsigned long _annSteps,
57 double _epsilon,
unsigned long _nSteps)
72 void nSteps(
const unsigned long& _nSteps);
74 #ifdef UNUSED // detected as unused 29.6.2018 78 virtual double getSigma();
96 bool _update =
false,
double _sigma = 0,
bool _saveIntermediate=
false) = 0;
103 virtual double test(
const FuzzyMap& _som,
const TS& _examples)
const;
110 virtual double functional(
const TS* _examples,
const FuzzyMap* _som,
double _sigma,
double _reg,
double& _likelihood,
double& _penalty) = 0;
112 #ifdef UNUSED // detected as unused 29.6.2018 118 virtual double randApproxGVC(
const TS* _examples,
const FuzzyMap* _som,
double _dataSD,
double _reg);
136 std::vector < std::vector<double> >
tmpMap;
150 virtual double updateU(
FuzzyMap* _som,
const TS* _examples,
const double& _sigma,
double& _alpha) = 0;
153 virtual double updateSigmaII(
FuzzyMap* _som,
const TS* _examples,
const double& _reg,
const double& _alpha) = 0;
158 #ifdef UNUSED // detected as unused 29.6.2018 160 virtual double dataDens(
const TS* _examples,
const FeatureVector* _example,
double _sigma)
const = 0;
187 #ifdef UNUSED // detected as unused 29.6.2018 void showU(FuzzyMap *_som, const TS *_ts)
std::vector< double > tmpD
virtual double functional(const TS *_examples, const FuzzyMap *_som, double _sigma, double _reg, double &_likelihood, double &_penalty)=0
virtual double updateSigmaII(FuzzyMap *_som, const TS *_examples, const double &_reg, const double &_alpha)=0
std::vector< double > tmpD1
virtual double codeDens(const FuzzyMap *_som, const FeatureVector *_example, double _sigma) const =0
virtual double test(const FuzzyMap &_som, const TS &_examples) const
virtual void updateV1(FuzzyMap *_som, const TS *_examples)
virtual void train(FuzzyMap &_som, TS &_examples, FileName &_fn_vectors, bool _update=false, double _sigma=0, bool _saveIntermediate=false)=0
virtual double updateU(FuzzyMap *_som, const TS *_examples, const double &_sigma, double &_alpha)=0
KerDenSOM(double _reg0, double _reg1, unsigned long _annSteps, double _epsilon, unsigned long _nSteps)
void showV(FuzzyMap *_som)
std::vector< std::vector< double > > tmpMap
virtual void initU(FuzzyMap *_som)
virtual void train(FuzzyMap &_som, const TS &_examples) const
void setAnnSteps(const unsigned long &_annSteps)
virtual double mainIterations(FuzzyMap *_som, const TS *_examples, double &_sigma, const double &_reg)
virtual void updateV(FuzzyMap *_som, const TS *_examples, const double &_sigma)
virtual double updateSigmaI(FuzzyMap *_som, const TS *_examples)
void showX(const TS *_ts)
std::vector< double > tmpDens
std::vector< double > tmpV
virtual void updateU1(FuzzyMap *_som, const TS *_examples)
std::vector< floatFeature > FeatureVector
void nSteps(const unsigned long &_nSteps)