Phpml\NeuralNetwork\Training\Backpropagation::getSigma PHP Method

getSigma() private method

private getSigma ( Neuron $neuron, array $target, integer $key, boolean $lastLayer ) : float
$neuron Phpml\NeuralNetwork\Node\Neuron
$target array
$key integer
$lastLayer boolean
return float
    private function getSigma(Neuron $neuron, array $target, int $key, bool $lastLayer) : float
    {
        $neuronOutput = $neuron->getOutput();
        $sigma = $neuronOutput * (1 - $neuronOutput);
        if ($lastLayer) {
            $sigma *= $target[$key] - $neuronOutput;
        } else {
            $sigma *= $this->getPrevSigma($neuron);
        }
        $this->sigmas[] = new Sigma($neuron, $sigma);
        return $sigma;
    }