SHOGUN
3.2.1
Main Page
Related Pages
Modules
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
src
shogun
neuralnets
NeuralInputLayer.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2014, Shogun Toolbox Foundation
3
* All rights reserved.
4
*
5
* Redistribution and use in source and binary forms, with or without
6
* modification, are permitted provided that the following conditions are met:
7
8
* 1. Redistributions of source code must retain the above copyright notice,
9
* this list of conditions and the following disclaimer.
10
*
11
* 2. Redistributions in binary form must reproduce the above copyright notice,
12
* this list of conditions and the following disclaimer in the documentation
13
* and/or other materials provided with the distribution.
14
*
15
* 3. Neither the name of the copyright holder nor the names of its
16
* contributors may be used to endorse or promote products derived from this
17
* software without specific prior written permission.
18
19
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
23
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29
* POSSIBILITY OF SUCH DAMAGE.
30
*
31
* Written (W) 2014 Khaled Nasr
32
*/
33
34
#ifndef __NEURALINPUTLAYER_H__
35
#define __NEURALINPUTLAYER_H__
36
37
#include <
shogun/lib/common.h
>
38
#include <
shogun/neuralnets/NeuralLayer.h
>
39
40
namespace
shogun
41
{
46
class
CNeuralInputLayer
:
public
CNeuralLayer
47
{
48
public
:
50
CNeuralInputLayer
();
51
60
CNeuralInputLayer
(int32_t num_neurons, int32_t start_index = 0);
61
62
virtual
~CNeuralInputLayer
() {}
63
65
virtual
bool
is_input
() {
return
true
; }
66
72
virtual
void
compute_activations
(
SGMatrix<float64_t>
inputs);
73
78
virtual
int32_t
get_start_index
() {
return
m_start_index
; }
79
84
virtual
void
set_start_index
(int32_t i) {
m_start_index
= i; }
85
86
virtual
const
char
*
get_name
()
const
{
return
"NeuralInputLayer"
; }
87
88
private
:
89
void
init();
90
91
public
:
95
float64_t
gaussian_noise
;
96
97
protected
:
102
int32_t
m_start_index
;
103
};
104
}
105
#endif
shogun::CNeuralInputLayer::gaussian_noise
float64_t gaussian_noise
Definition:
NeuralInputLayer.h:95
shogun::CNeuralInputLayer::get_name
virtual const char * get_name() const
Definition:
NeuralInputLayer.h:86
shogun::CNeuralInputLayer::set_start_index
virtual void set_start_index(int32_t i)
Definition:
NeuralInputLayer.h:84
shogun::CNeuralLayer
Base class for neural network layers.
Definition:
NeuralLayer.h:73
shogun::CNeuralInputLayer::get_start_index
virtual int32_t get_start_index()
Definition:
NeuralInputLayer.h:78
float64_t
double float64_t
Definition:
common.h:50
shogun::CNeuralInputLayer::m_start_index
int32_t m_start_index
Definition:
NeuralInputLayer.h:102
shogun::CNeuralInputLayer::CNeuralInputLayer
CNeuralInputLayer()
Definition:
NeuralInputLayer.cpp:38
shogun::SGMatrix< float64_t >
shogun::CNeuralInputLayer
Represents an input layer. The layer can be either connected to all the input features that a network...
Definition:
NeuralInputLayer.h:46
common.h
shogun::CNeuralInputLayer::compute_activations
virtual void compute_activations(SGMatrix< float64_t > inputs)
Definition:
NeuralInputLayer.cpp:50
shogun::CNeuralInputLayer::is_input
virtual bool is_input()
Definition:
NeuralInputLayer.h:65
NeuralLayer.h
shogun::CNeuralInputLayer::~CNeuralInputLayer
virtual ~CNeuralInputLayer()
Definition:
NeuralInputLayer.h:62
SHOGUN
Machine Learning Toolbox - Documentation