Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
moodle
moodle
Commits
381c6708
Commit
381c6708
authored
Aug 25, 2017
by
David Monllaó
Browse files
MDL-59265 mlbackend: Splitting up predictor interface in 2
parent
5c5cb3ee
Changes
5
Hide whitespace changes
Inline
Side-by-side
analytics/classes/classifier.php
0 → 100644
View file @
381c6708
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Classifier interface.
*
* @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
;
defined
(
'MOODLE_INTERNAL'
)
||
die
();
/**
* Classifier interface.
*
* @package core_analytics
* @copyright 2016 David Monllao {@link http://www.davidmonllao.com}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
interface
classifier
extends
predictor
{
/**
* Train this processor classification model using the provided supervised learning dataset.
*
* @param string $uniqueid
* @param \stored_file $dataset
* @param string $outputdir
* @return \stdClass
*/
public
function
train_classification
(
$uniqueid
,
\
stored_file
$dataset
,
$outputdir
);
/**
* Classifies the provided dataset samples.
*
* @param string $uniqueid
* @param \stored_file $dataset
* @param string $outputdir
* @return \stdClass
*/
public
function
classify
(
$uniqueid
,
\
stored_file
$dataset
,
$outputdir
);
/**
* Evaluates this processor classification model using the provided supervised learning dataset.
*
* @param string $uniqueid
* @param float $maxdeviation
* @param int $niterations
* @param \stored_file $dataset
* @param string $outputdir
* @return \stdClass
*/
public
function
evaluate_classification
(
$uniqueid
,
$maxdeviation
,
$niterations
,
\
stored_file
$dataset
,
$outputdir
);
}
analytics/classes/predictor.php
View file @
381c6708
...
...
@@ -41,69 +41,4 @@ interface predictor {
* @return bool
*/
public
function
is_ready
();
/**
* Train this processor classification model using the provided supervised learning dataset.
*
* @param string $uniqueid
* @param \stored_file $dataset
* @param string $outputdir
* @return \stdClass
*/
public
function
train_classification
(
$uniqueid
,
\
stored_file
$dataset
,
$outputdir
);
/**
* Classifies the provided dataset samples.
*
* @param string $uniqueid
* @param \stored_file $dataset
* @param string $outputdir
* @return \stdClass
*/
public
function
classify
(
$uniqueid
,
\
stored_file
$dataset
,
$outputdir
);
/**
* Evaluates this processor classification model using the provided supervised learning dataset.
*
* @param string $uniqueid
* @param float $maxdeviation
* @param int $niterations
* @param \stored_file $dataset
* @param string $outputdir
* @return \stdClass
*/
public
function
evaluate_classification
(
$uniqueid
,
$maxdeviation
,
$niterations
,
\
stored_file
$dataset
,
$outputdir
);
/**
* Train this processor regression model using the provided supervised learning dataset.
*
* @param string $uniqueid
* @param \stored_file $dataset
* @param string $outputdir
* @return \stdClass
*/
public
function
train_regression
(
$uniqueid
,
\
stored_file
$dataset
,
$outputdir
);
/**
* Estimates linear values for the provided dataset samples.
*
* @param string $uniqueid
* @param \stored_file $dataset
* @param mixed $outputdir
* @return void
*/
public
function
estimate
(
$uniqueid
,
\
stored_file
$dataset
,
$outputdir
);
/**
* Evaluates this processor regression model using the provided supervised learning dataset.
*
* @param string $uniqueid
* @param float $maxdeviation
* @param int $niterations
* @param \stored_file $dataset
* @param string $outputdir
* @return \stdClass
*/
public
function
evaluate_regression
(
$uniqueid
,
$maxdeviation
,
$niterations
,
\
stored_file
$dataset
,
$outputdir
);
}
analytics/classes/regressor.php
0 → 100644
View file @
381c6708
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Regressors interface.
*
* @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
;
defined
(
'MOODLE_INTERNAL'
)
||
die
();
/**
* Regressors interface.
*
* @package core_analytics
* @copyright 2016 David Monllao {@link http://www.davidmonllao.com}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
interface
regressor
extends
predictor
{
/**
* Train this processor regression model using the provided supervised learning dataset.
*
* @param string $uniqueid
* @param \stored_file $dataset
* @param string $outputdir
* @return \stdClass
*/
public
function
train_regression
(
$uniqueid
,
\
stored_file
$dataset
,
$outputdir
);
/**
* Estimates linear values for the provided dataset samples.
*
* @param string $uniqueid
* @param \stored_file $dataset
* @param mixed $outputdir
* @return void
*/
public
function
estimate
(
$uniqueid
,
\
stored_file
$dataset
,
$outputdir
);
/**
* Evaluates this processor regression model using the provided supervised learning dataset.
*
* @param string $uniqueid
* @param float $maxdeviation
* @param int $niterations
* @param \stored_file $dataset
* @param string $outputdir
* @return \stdClass
*/
public
function
evaluate_regression
(
$uniqueid
,
$maxdeviation
,
$niterations
,
\
stored_file
$dataset
,
$outputdir
);
}
lib/mlbackend/php/classes/processor.php
View file @
381c6708
...
...
@@ -38,7 +38,7 @@ use Phpml\ModelManager;
* @copyright 2016 David Monllao {@link http://www.davidmonllao.com}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class
processor
implements
\
core_analytics\
predict
or
{
class
processor
implements
\
core_analytics\
classifier
,
\
core_analytics\regress
or
{
/**
* Size of training / prediction batches.
...
...
lib/mlbackend/python/classes/processor.php
View file @
381c6708
...
...
@@ -33,7 +33,7 @@ defined('MOODLE_INTERNAL') || die();
* @copyright 2016 David Monllao {@link http://www.davidmonllao.com}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class
processor
implements
\
core_analytics\
predict
or
{
class
processor
implements
\
core_analytics\
classifier
,
\
core_analytics\regress
or
{
/**
* The required version of the python package that performs all calculations.
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment