芝麻web文件管理V1.00
编辑当前文件:/home2/sdektunc/www/cepali/analytics/classes/local/target/binary.php
. /** * Binary classifier target. * * @package core_analytics * @copyright 2017 David Monllao {@link http://www.davidmonllao.com} * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ namespace core_analytics\local\target; defined('MOODLE_INTERNAL') || die(); /** * Binary classifier target. * * @package core_analytics * @copyright 2017 David Monllao {@link http://www.davidmonllao.com} * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ abstract class binary extends discrete { /** * is_linear * * @return bool */ public function is_linear() { return false; } /** * Returns the target discrete values. * * Only useful for targets using discrete values, must be overwriten if it is the case. * * @return array */ public static final function get_classes() { return array(0, 1); } /** * Returns the predicted classes that will be ignored. * * @return array */ public function ignored_predicted_classes() { // Zero-value class is usually ignored in binary classifiers. return array(0); } /** * Is the calculated value a positive outcome of this target? * * @param string $value * @param string $ignoredsubtype * @return int */ public function get_calculation_outcome($value, $ignoredsubtype = false) { if (!self::is_a_class($value)) { throw new \moodle_exception('errorpredictionformat', 'analytics'); } if (in_array($value, $this->ignored_predicted_classes(), false)) { // Just in case, if it is ignored the prediction should not even be recorded but if it would, it is ignored now, // which should mean that is it nothing serious. return self::OUTCOME_VERY_POSITIVE; } // By default binaries are danger when prediction = 1. if ($value) { return self::OUTCOME_VERY_NEGATIVE; } return self::OUTCOME_VERY_POSITIVE; } /** * classes_description * * @return string[] */ protected static function classes_description() { return array( get_string('yes'), get_string('no') ); } }