public function converged(array $gradient, array $coefficients) : bool
{
return pow(array_sum(array_map(function ($slope) {
return pow(abs($slope), $this->pNorm);
}, $gradient)), 1 / $this->pNorm) <= $this->eta;
}
public function testConverged() { $criteria = new GradientNorm(1.0); static::assertFalse($criteria->converged([2, 2], [])); static::assertTrue($criteria->converged([0.5, 0.5], [])); }