Search moodle.org's
Developer Documentation

See Release Notes

  • Bug fixes for general core bugs in 3.11.x will end 14 Nov 2022 (12 months plus 6 months extension).
  • Bug fixes for security issues in 3.11.x will end 13 Nov 2023 (18 months plus 12 months extension).
  • PHP version: minimum PHP 7.3.0 Note: minimum PHP version has increased since Moodle 3.10. PHP 7.4.x is supported too.
   1  <?php
   2  
   3  declare(strict_types=1);
   4  
   5  namespace Phpml\NeuralNetwork\ActivationFunction;
   6  
   7  use Phpml\NeuralNetwork\ActivationFunction;
   8  
   9  class ThresholdedReLU implements ActivationFunction
  10  {
  11      /**
  12       * @var float
  13       */
  14      private $theta;
  15  
  16      public function __construct(float $theta = 0.0)
  17      {
  18          $this->theta = $theta;
  19      }
  20  
  21      /**
  22       * @param float|int $value
  23       */
  24      public function compute($value): float
  25      {
  26          return $value > $this->theta ? $value : 0.0;
  27      }
  28  
  29      /**
  30       * @param float|int $value
  31       * @param float|int $calculatedvalue
  32       */
  33      public function differentiate($value, $calculatedvalue): float
  34      {
  35          return $calculatedvalue >= $this->theta ? 1.0 : 0.0;
  36      }
  37  }