Advertisement
Guest User

Untitled

a guest
Jul 7th, 2015
185
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.54 KB | None | 0 0
  1. bool BinaryNeuron::TrainNeuron(std::vector<bool> NeuronInput, bool Output)
  2. {
  3.     if (this->initialised == false) return false;
  4.     float WeigthSum = 0, Correction;
  5.     bool Error;
  6.     for (int i = 0; i < this->Weigths.size(); i++)
  7.     {
  8.         WeigthSum += (this->Weigths[i] * NeuronInput[i + 1]);
  9.     }
  10.     Error = (Output ^ (WeigthSum >= this->BreakValue));
  11.     if (!Error) return true;
  12.     Correction = Error*this->LearnVal;
  13.     for (int i = 0; i < this->Weigths.size(); i++)
  14.     {
  15.         this->Weigths[i] = (this->Weigths[i] + (NeuronInput[i] * Correction));
  16.     }
  17.     return false;
  18. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement