#include <keras_model.h>
Definition at line 148 of file keras_model.h.
keras::LayerMaxPooling::LayerMaxPooling |
( |
| ) |
|
|
inline |
Implements keras::Layer.
Definition at line 142 of file keras_model.cc.
143 vector<vector<vector<float> > >
im = dc->
get_3d();
144 vector<vector<vector<float> > > y_ret;
145 for(
unsigned int i = 0; i < im.size(); ++i) {
146 vector<vector<float> > tmp_y;
147 for(
unsigned int j = 0; j < (
unsigned int)(im[0].
size()/
m_pool_x); ++j) {
148 tmp_y.push_back(vector<float>((
int)(im[0][0].
size()/
m_pool_y), 0.0));
150 y_ret.push_back(tmp_y);
152 for(
unsigned int d = 0;
d < y_ret.size(); ++
d) {
153 for(
unsigned int x = 0;
x < y_ret[0].size(); ++
x) {
155 unsigned int end_x = start_x +
m_pool_x;
156 for(
unsigned int y = 0;
y < y_ret[0][0].size(); ++
y) {
158 unsigned int end_y = start_y +
m_pool_y;
161 for(
unsigned int i = start_x; i < end_x; ++i) {
162 for(
unsigned int j = start_y; j < end_y; ++j) {
163 values.push_back(im[
d][i][j]);
166 y_ret[
d][
x][
y] = *max_element(values.begin(), values.end());
171 out->set_data(y_ret);
virtual std::vector< std::vector< std::vector< float > > > const & get_3d() const
decltype(auto) constexpr size(T &&obj)
ADL-aware version of std::size.
virtual unsigned int keras::LayerMaxPooling::get_input_cols |
( |
| ) |
const |
|
inlinevirtual |
virtual unsigned int keras::LayerMaxPooling::get_input_rows |
( |
| ) |
const |
|
inlinevirtual |
virtual unsigned int keras::LayerMaxPooling::get_output_units |
( |
| ) |
const |
|
inlinevirtual |
void keras::LayerMaxPooling::load_weights |
( |
std::ifstream & |
fin | ) |
|
|
virtual |
int keras::LayerMaxPooling::m_pool_x |
int keras::LayerMaxPooling::m_pool_y |
The documentation for this class was generated from the following files: