mirror of
https://github.com/lordmathis/CUDANet.git
synced 2025-11-06 09:44:28 +00:00
Cleanup and refactor
This commit is contained in:
@@ -10,9 +10,26 @@ class ILayer {
|
||||
public:
|
||||
virtual ~ILayer() {}
|
||||
|
||||
virtual void forward(const float* input, float* output) = 0;
|
||||
virtual void setWeights(const std::vector<std::vector<float>>& weights) = 0;
|
||||
virtual void setBiases(const std::vector<float>& biases) = 0;
|
||||
virtual void forward(const float* input, float* output) = 0;
|
||||
virtual void setWeights(const float* weights) = 0;
|
||||
virtual void setBiases(const float* biases) = 0;
|
||||
|
||||
private:
|
||||
virtual void initializeWeights() = 0;
|
||||
virtual void initializeBiases() = 0;
|
||||
|
||||
virtual void toCuda() = 0;
|
||||
|
||||
int inputSize;
|
||||
int outputSize;
|
||||
|
||||
float* d_weights;
|
||||
float* d_biases;
|
||||
|
||||
std::vector<float> weights;
|
||||
std::vector<float> biases;
|
||||
|
||||
Activation activation;
|
||||
};
|
||||
|
||||
} // namespace Layers
|
||||
|
||||
Reference in New Issue
Block a user