18 #ifndef __NEURAL_NETWORKS_PREDICTION_TOPOLOGY_H__
19 #define __NEURAL_NETWORKS_PREDICTION_TOPOLOGY_H__
21 #include "algorithms/neural_networks/layers/layer_forward_descriptor.h"
22 #include "algorithms/neural_networks/neural_networks_training_topology.h"
28 namespace neural_networks
45 class Topology:
public Base
48 typedef services::Collection<layers::forward::LayerDescriptor> Descriptors;
55 DAAL_DEPRECATED Topology() {}
62 DAAL_DEPRECATED Topology(
const training::Topology &t) : _config(t.size())
64 for(
size_t i = 0; i < _config.size(); ++i)
66 const layers::LayerDescriptor& desc = t[i];
67 layers::forward::LayerIfacePtr predictionLayer = desc.layer()->forwardLayer->getLayerForPrediction();
68 _config[i] = layers::forward::LayerDescriptor(i, predictionLayer, desc.nextLayers());
69 predictionLayer->getLayerParameter()->predictionStage =
true;
78 DAAL_DEPRECATED Topology(
const Topology &t) : _config(t.size())
80 for(
size_t i = 0; i < t.size(); i++)
82 _config[i] = layers::forward::LayerDescriptor(i, t[i].layer(), t[i].nextLayers());
91 size_t size()
const {
return _config.size(); }
99 size_t push_back(
const layers::forward::LayerIfacePtr &layer)
101 size_t id = _config.size();
102 _config.push_back(layers::forward::LayerDescriptor(
id, layer));
112 DAAL_DEPRECATED
size_t add(
const layers::forward::LayerIfacePtr &layer)
114 return push_back(layer);
124 DAAL_DEPRECATED
size_t add(
const Topology &topologyBlock,
size_t &startIndex)
126 size_t size = _config.size();
130 for(
size_t i = 0; i < topologyBlock.size(); i++)
132 id = push_back(topologyBlock[i].layer());
133 const layers::NextLayers& nextLayers = topologyBlock[i].nextLayers();
134 for(
size_t j = 0; j < nextLayers.size(); j++)
136 addNext(i + size, nextLayers[j] + size);
148 DAAL_DEPRECATED services::Status clear()
151 return services::Status();
160 DAAL_DEPRECATED layers::forward::LayerDescriptor& operator [] (
size_t index) {
return _config[index]; }
168 const layers::forward::LayerDescriptor& operator [] (
size_t index)
const {
return _config[index]; }
176 DAAL_DEPRECATED layers::forward::LayerDescriptor&
get(
size_t index) {
return _config[index]; }
184 DAAL_DEPRECATED
const layers::forward::LayerDescriptor&
get(
size_t index)
const {
return _config[index]; }
196 services::Status addNext(
size_t index,
size_t next)
198 _config[index].addNext(next);
199 return services::Status();
206 typedef services::SharedPtr<Topology> TopologyPtr;
210 using interface1::Topology;
211 using interface1::TopologyPtr;
daal::algorithms::neural_networks::prediction::interface1::Topology::add
DAAL_DEPRECATED size_t add(const Topology &topologyBlock, size_t &startIndex)
Definition: neural_networks_prediction_topology.h:124
daal::algorithms::neural_networks::prediction::interface1::Topology::Topology
DAAL_DEPRECATED Topology(const Topology &t)
Definition: neural_networks_prediction_topology.h:78
daal::algorithms::neural_networks::prediction::interface1::Topology
Class defining a neural network topology - a set of layers and connection between them - on the predi...
Definition: neural_networks_prediction_topology.h:45
daal::algorithms::neural_networks::prediction::prediction
Definition: neural_networks_prediction_result.h:55
daal::Base
Base class for Intel(R) Data Analytics Acceleration Library objects
Definition: base.h:41
daal::algorithms::neural_networks::prediction::interface1::Topology::size
size_t size() const
Definition: neural_networks_prediction_topology.h:91
daal::algorithms::neural_networks::prediction::interface1::Topology::Topology
DAAL_DEPRECATED Topology(const training::Topology &t)
Definition: neural_networks_prediction_topology.h:62
daal::algorithms::neural_networks::prediction::interface1::Topology::addNext
services::Status addNext(size_t index, size_t next)
Definition: neural_networks_prediction_topology.h:196
daal::algorithms::neural_networks::prediction::interface1::Topology::push_back
size_t push_back(const layers::forward::LayerIfacePtr &layer)
Definition: neural_networks_prediction_topology.h:99
daal::algorithms::neural_networks::prediction::interface1::Topology::clear
DAAL_DEPRECATED services::Status clear()
Definition: neural_networks_prediction_topology.h:148
daal::algorithms::neural_networks::prediction::interface1::Topology::add
DAAL_DEPRECATED size_t add(const layers::forward::LayerIfacePtr &layer)
Definition: neural_networks_prediction_topology.h:112
daal::algorithms::neural_networks::prediction::interface1::Topology::operator[]
DAAL_DEPRECATED layers::forward::LayerDescriptor & operator[](size_t index)
Definition: neural_networks_prediction_topology.h:160