Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-60520

Let models use different machine learning backends

    XMLWordPrintable

    Details

    • Testing Instructions:
      Hide

      New site

      1. Install a new site
      2. Go to Site admin > Analytics > Analytics models
      3. Edit the students at risk model, set the predictions processor to "PHP machine learning backend" and save changes
      4. Go back to the edit form (from the models list page) and check that "PHP machine learning backend" is preselected (it was saved correctly), edit the field again and set it to "Default (PHP machine learning backend)"
      5. Go back to the edit form (from the models list page) and check that "Default (PHP machine learning backend)" is preselected

      Upgraded site

      1. Upgrade a moodle site to a version that includes this patch (integration master should be enough)
      2. Go to Site admin > Analytics > Analytics models
      3. Edit the students at risk model, set the predictions processor to "PHP machine learning backend" and save changes
      4. Go back to the edit form (from the models list page) and check that "PHP machine learning backend" is preselected (it was saved correctly), edit the field again and set it to "Default (PHP machine learning backend)"
      5. Go back to the edit form (from the models list page) and check that "Default (PHP machine learning backend)" is preselected
      6. Add the following as a new line in your config.php: $CFG->pathtopython = 'pythonWRONG'; (this is just to ensure that your no python stuff will work properly)
      7. Go back to the edit form (from the models list page) and check that Predictions processor DOES NOT include a "Python machine learning backend" option
      8. Update your recently added config.php line to: $CFG->pathtopython = 'python';
      9. Follow https://docs.moodle.org/35/en/Analytics#Predictions_processor to install the python machine learning backend
      10. Go to Site admin > Analytics > Analytics models
      11. Edit the students at risk model, check that there is a "Python machine learning backend" option for predictions processor field, set the field to "Python machine learning backend" and save changes
      12. Go back to the edit form (from the models list page) and check that the preselected Predictions processor option is "Python machine learning backend"
      Show
      New site Install a new site Go to Site admin > Analytics > Analytics models Edit the students at risk model, set the predictions processor to "PHP machine learning backend" and save changes Go back to the edit form (from the models list page) and check that "PHP machine learning backend" is preselected (it was saved correctly), edit the field again and set it to "Default (PHP machine learning backend)" Go back to the edit form (from the models list page) and check that "Default (PHP machine learning backend)" is preselected Upgraded site Upgrade a moodle site to a version that includes this patch (integration master should be enough) Go to Site admin > Analytics > Analytics models Edit the students at risk model, set the predictions processor to "PHP machine learning backend" and save changes Go back to the edit form (from the models list page) and check that "PHP machine learning backend" is preselected (it was saved correctly), edit the field again and set it to "Default (PHP machine learning backend)" Go back to the edit form (from the models list page) and check that "Default (PHP machine learning backend)" is preselected Add the following as a new line in your config.php: $CFG->pathtopython = 'pythonWRONG'; (this is just to ensure that your no python stuff will work properly) Go back to the edit form (from the models list page) and check that Predictions processor DOES NOT include a "Python machine learning backend" option Update your recently added config.php line to: $CFG->pathtopython = 'python'; Follow https://docs.moodle.org/35/en/Analytics#Predictions_processor to install the python machine learning backend Go to Site admin > Analytics > Analytics models Edit the students at risk model, check that there is a "Python machine learning backend" option for predictions processor field, set the field to "Python machine learning backend" and save changes Go back to the edit form (from the models list page) and check that the preselected Predictions processor option is "Python machine learning backend"
    • Affected Branches:
      MOODLE_35_STABLE
    • Fixed Branches:
      MOODLE_36_STABLE
    • Pull from Repository:
    • Pull Master Branch:
      MDL-60520_master

      Description

      A single machine learning backend is not the best choice for all models. It depends on the model.

      I would propose to:

      • Use the current predictions processor setting as a default predictions processor for all models
      • Add a new field to analytics_models table that would overwrite the default

      PD: My previous issue description got lost because I lost the network connection; I may extend this description in the future but not now, I am grrring

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                1 Vote for this issue
                Watchers:
                7 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Fix Release Date:
                  3/Dec/18