Neuron change
This commit is contained in:
@@ -76,6 +76,8 @@ namespace NeuralNetwork
|
||||
|
||||
virtual float operator()(const std::vector<float>& inputs) =0;
|
||||
|
||||
virtual void setInputSize(const std::size_t &size) = 0;
|
||||
|
||||
/**
|
||||
* @brief Function returns clone of object
|
||||
*/
|
||||
@@ -138,6 +140,12 @@ namespace NeuralNetwork
|
||||
weights[n.id()]=w;
|
||||
}
|
||||
|
||||
virtual void setInputSize(const std::size_t &size) override {
|
||||
if(weights.size()<size+1) {
|
||||
weights.resize(size+1);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Returns output of neuron
|
||||
*/
|
||||
@@ -215,6 +223,9 @@ namespace NeuralNetwork
|
||||
|
||||
virtual float operator()(const std::vector< float >&) override { return 1.0; }
|
||||
|
||||
virtual void setInputSize(const std::size_t&) override {
|
||||
}
|
||||
|
||||
virtual BiasNeuron* clone() const { return new BiasNeuron(); }
|
||||
};
|
||||
|
||||
@@ -242,6 +253,9 @@ namespace NeuralNetwork
|
||||
|
||||
virtual float operator()(const std::vector< float >&) override { return 1.0; }
|
||||
|
||||
virtual void setInputSize(const std::size_t&) override {
|
||||
}
|
||||
|
||||
virtual InputNeuron* clone() const { return new InputNeuron(id_); }
|
||||
protected:
|
||||
long unsigned int id_;
|
||||
|
||||
Reference in New Issue
Block a user