Home | Develop | Download | Contact
EnsemblePerceptron.hpp
1 /*
2  * EnsemblePerceptron.hpp
3  *
4  * Copyright 2018 Fernando Pujaico Rivera <fernando.pujaico.rivera@gmail.com>
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19  * MA 02110-1301, USA.
20  *
21  */
22 
32 #ifndef __PDS_ENSEMBLEPERCEPTRON_HPP__
33 #define __PDS_ENSEMBLEPERCEPTRON_HPP__
34 
35 
49 #include <Pds/Vector>
50 #include <Pds/Perceptron>
51 #include <Pds/IterationConf>
52 
53 #include <sstream> // std::ostringstream
54 
55 namespace Pds{
56 
65 {
66 private:
68  std::vector<Pds::Perceptron> P;
70 
71 public:
72 
83 
89  EnsemblePerceptron(const std::string &filename);
90 
104  EnsemblePerceptron(const Pds::Matrix &W);
105 
125  const Pds::Matrix &X,
126  const Pds::Vector &Y,
127  unsigned int M,
128  double Prob);
129 
130 
132 
133 
139 public:
140 
151  double Predict(const Pds::Vector &x) const;
152 
158  Pds::Vector Predict(const Pds::Matrix &X) const;
159 
164 public:
165 
176  bool ExportFile(const std::string &filename) const;
177 
184  bool ImportFile(const std::string &filename);
185 
191 public:
192 
203  unsigned int Nel(void) const;
204 
211 
212 
219  bool IsEmpty(void) const;
220 
227  bool IsNotEmpty(void) const;
228 
229 
235  void MakeEmpty(void);
236 
241 public:
242 
253  std::string ToString(void) const;
254 
260  void Print(std::string str="") const;
265 }; // Class EnsemblePerceptron
266 
267 } // namespace Pds
268 
269 
289 std::ostream& operator<<(std::ostream &out,const Pds::EnsemblePerceptron &A);
290 
299 #endif
300 
La clase tipo Pds::EnsemblePerceptron . Esta clase genera una matriz de Nlin lineas y 1 columna....
std::vector< Pds::Perceptron > P
La clase tipo Pds::IterationConf . Esta clase genera una matriz de Nlin lineas y 1 columna....
La clase tipo Pds::Perceptron . Esta clase genera una matriz de Nlin lineas y 1 columna....
Definition: Perceptron.hpp:64
bool ExportFile(const std::string &filename) const
Salva en formato texto el objeto de tipo Pds::EnsemblePerceptron.
double Predict(const Pds::Vector &x) const
Evalua el objeto de tipo Pds::EnsemblePerceptron.
unsigned int Nel(void) const
Número de elementos en el ensemble.
EnsemblePerceptron(const Pds::Matrix &W)
Crea un objeto de tipo Pds::EnsemblePerceptron copiando datos desde una matriz. Toda la matriz es vec...
void Print(std::string str="") const
Imprime en pantalla el contenido del vector de pesos después del texto indicado en str.
Pds::Vector Predict(const Pds::Matrix &X) const
Evalua el objeto de tipo Pds::EnsemblePerceptron.
std::ostream & operator<<(std::ostream &out, const Pds::EnsemblePerceptron &A)
Retorna el contenido del perceptron por la salida estándar.
bool ImportFile(const std::string &filename)
Carga desde un formato texto el objeto de tipo Pds::EnsemblePerceptron.
EnsemblePerceptron(const std::string &filename)
Crea un objeto de tipo Pds::EnsemblePerceptron. El ensamble será de N Perceptron, donde N=filename....
std::string ToString(void) const
Convierte el vector de pesos del perceptron en un std::string.
EnsemblePerceptron(Pds::IterationConf &Conf, const Pds::Matrix &X, const Pds::Vector &Y, unsigned int M, double Prob)
Crea un objeto de tipo Pds::EnsemblePerceptron calculando los pesos conociendo los vectores de entrad...
bool IsNotEmpty(void) const
Verifica si el perceptron NO está vazio, es decir vector de pessos tiene elementos y funcion de activ...
void MakeEmpty(void)
Convierte el perceptron a vazio, es decir con el vector de pessos sin elementos y funcion de activaci...
EnsemblePerceptron(void)
Crea un objeto vazio de tipo Pds::EnsemblePerceptron. El método IsEmpty() retorna true.
bool IsEmpty(void) const
Verifica si el perceptron está vazio, es decir vector de pessos sin elementos y funcion de activación...
const Pds::Perceptron & GetStackingClassifier(void) const
Retorna el clasificador del segundo nivél.
Nombre de espacio para Pds (Procesamiento Digital de Senales)

Enlaces de interés

HomePage Bazaar Download Bug report Ayuda Developer Feed