Home | Develop | Download | Contact
FlattenLayer.hpp
1 /*
2  * FlattenLayer.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_FLATTENLAYER_HPP__
33 #define __PDS_FLATTENLAYER_HPP__
34 
35 #include <string>
36 #include <Pds/Ra>
37 #include <Pds/AbstractLayer>
38 
48 namespace Pds{
49 
50 
61 {
62  bool Trainable;
63 public:
64 
77  FlattenLayer(void);
78 
86 
88 
94 public:
105  bool IsEmpty(void) const;
106 
107 
113  Pds::Shape GetInputShape(void) const;
114 
115 
121  Pds::Shape GetOutputShape(const Pds::Shape &In) const;
127 public:
145  bool ExportXmlToStream(std::ofstream &myfile) const;
146 
158  std::string ExportXmlToString(void) const;
159 
174  bool ImportXmlFromString( const std::string &str);
175 
180 public:
205  Pds::TensorBlock PredictTensor(const Pds::TensorBlock &In) const;
206 
207 
208 
227  Pds::Vector Predict(const std::vector<Pds::Matrix> &In) const;
235 public:
246  void Print(std::string str="") const;
247 
252  void MakeEmpty(void);
253 
254 
261  {
262  return new Pds::FlattenLayer(*this);
263  }
264 
268 }; // Class FlattenLayer
269 
270 } // namespace Pds
271 
272 
277 #endif
278 
La clase tipo Pds::AbstractLayer . Esta clase genera un objeto con dos parametros Nlin y Ncol....
La clase tipo Pds::FlattenLayer . Esta clase genera un objeto con dos parametros Nlin y Ncol....
const std::string FlattenLayer
Tag de un objeto de tipo Pds::FlattenLayer.
Definition: NnDefines.hpp:154
Pds::Shape GetInputShape(void) const
Retorna el Shape de entrada de la estructura, si no importa el elemento es -1.
bool ImportXmlFromString(const std::string &str)
Carga los datos de la capa.
Pds::Vector Predict(const std::vector< Pds::Matrix > &In) const
Evalua la capa de la CNN.
Pds::AbstractLayer * Clone(void)
Retorna un puntero (generado con new) a una nuevo dirección de memoria con una copia del objeto actua...
Pds::TensorBlock PredictTensor(const Pds::TensorBlock &In) const
Evalua la capa de la CNN.
void MakeEmpty(void)
Limpia el objeto.
std::string ExportXmlToString(void) const
Salva los datos de la capa en un std::string en formato Xml.
FlattenLayer(void)
Crea un objeto de tipo Pds::FlattenLayer nulo con 0 entradas y 0 salidas. Sin función de activación....
Pds::Shape GetOutputShape(const Pds::Shape &In) const
Retorna el Shape de salida de la estructura.
void Print(std::string str="") const
Muestra en pantalla el contenido de Pds::FlattenLayer, elementos separados por tabulador.
bool ExportXmlToStream(std::ofstream &myfile) const
Salva los datos de la capa en un std::ofstream en formato Xml.
FlattenLayer(const Pds::FlattenLayer &B)
Crea un objeto de tipo Pds::FlattenLayer copiando datos desde otro.
bool IsEmpty(void) const
Retorna true si la capa esta vacia o false si no.
Nombre de espacion para PDS (Procesamiento Digital de Senales)
Definition: FCLayer.hpp:48

Enlaces de interés

HomePage Bazaar Download Bug report Ayuda Developer Feed