added support for bias

This commit is contained in:
2015-08-30 22:27:18 +02:00
parent ed06ca2d35
commit f7448a9b28
2 changed files with 14 additions and 1 deletions

View File

@@ -39,12 +39,15 @@ namespace NeuralNetwork
FFNeuron(const FFNeuron&) = delete;
FFNeuron& operator=(const FFNeuron&) = delete;
inline virtual float getWeight(const int& i ) const override { return weights[i+1];}
inline virtual float getWeight(const int& i ) const override { return weights[i+1]; }
inline virtual void setWeight(const int& i,const float &p) override { weights[i+1]=p; }
inline virtual float output() const override { return out; }
inline virtual float input() const override { return inputs; }
inline virtual float derivatedOutput() const override { return function.derivatedOutput(inputs,out); }
inline virtual float getBias() const override { return weights[0]; }
inline virtual void setBias(const float & bias) override { weights[0]=bias; }
protected:
ActivationFunction::ActivationFunction &function;
float *weights;

View File

@@ -40,6 +40,16 @@ namespace NeuralNetwork
* @brief Returns value for derivation of activation function
*/
virtual float derivatedOutput() const=0;
/**
* @brief Function sets bias for neuron
*/
virtual void setBias(const float &bias)=0;
/**
* @brief Function returns bias for neuron
*/
virtual float getBias() const=0;
protected:
};
}