geopm  3.1.1.dev296+g5916b956
GEOPM - Global Extensible Open Power Manager
LocalNeuralNetImp.hpp
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2015 - 2024 Intel Corporation
3  * SPDX-License-Identifier: BSD-3-Clause
4  */
5 
6 #ifndef LOCALNEURALNETIMP_HPP_INCLUDE
7 #define LOCALNEURALNETIMP_HPP_INCLUDE
8 
9 #include "LocalNeuralNet.hpp"
10 
11 namespace geopm
12 {
14  {
15  public:
22  LocalNeuralNetImp(const std::vector<std::shared_ptr<DenseLayer> > layers);
31  TensorOneD forward(const TensorOneD &inp) const override;
35  size_t get_input_dim() const override;
39  size_t get_output_dim() const override;
40 
41  private:
42  std::vector<std::shared_ptr<DenseLayer> > m_layers;
43  };
44 }
45 
46 #endif /* LOCALNEURALNETIMP_HPP_INCLUDE */
Class to manage data and operations of feed forward neural nets required for neural net inference.
Definition: LocalNeuralNet.hpp:20
Definition: LocalNeuralNetImp.hpp:14
size_t get_input_dim() const override
Get the dimension required for the input TensorOneD.
Definition: LocalNeuralNet.cpp:65
LocalNeuralNetImp(const std::vector< std::shared_ptr< DenseLayer > > layers)
Constructor input from a vector of DenseLayers.
Definition: LocalNeuralNet.cpp:24
size_t get_output_dim() const override
Get the dimension of the resulting TensorOneD.
Definition: LocalNeuralNet.cpp:69
TensorOneD forward(const TensorOneD &inp) const override
Perform inference using the instance weights and biases.
Definition: LocalNeuralNet.cpp:43
Class to store and perform operations on 1D Tensors, aka vectors, suitable for use in feed-forward ne...
Definition: TensorOneD.hpp:21
Definition: Accumulator.cpp:12