/** * @param array $arrOutputs * @uses activate() * @uses Layer::calculateHiddenDeltas() * @uses Layer::adjustWeights() * @uses Layer::calculateOutputDeltas() * @uses getNetworkError() */ protected function training($arrOutputs) { $this->activate(); $this->objOutputLayer->calculateOutputDeltas($arrOutputs); for ($i = $this->intNumberOfHiddenLayersDec; $i >= 0; $i--) { $this->arrHiddenLayers[$i]->calculateHiddenDeltas(); } $this->objOutputLayer->adjustWeights(); for ($i = $this->intNumberOfHiddenLayersDec; $i >= 0; $i--) { $this->arrHiddenLayers[$i]->adjustWeights(); } $this->intTotalTrainings++; $this->boolNetworkActivated = FALSE; }