GithubHelp home page GithubHelp logo

vatsal-iitb / machine-learning-for-regression Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mathworks-teaching-resources/machine-learning-for-regression

0.0 0.0 0.0 6.01 MB

Interactive courseware module that introduces typical workflow, setup, and considerations involved in solving regression problems with machine learning.

License: Other

MATLAB 100.00%

machine-learning-for-regression's Introduction

Machine Learning for Regression View <File Exchange Title> on File Exchange or Open in MATLAB Online

Curriculum Module
Created with R2021a. Compatible with R2021a and later releases.

Description

This package contains several live scripts and supporting files that teach the basics of machine learning for regression. The materials are designed to be flexible and can be easily modified to accommodate a variety of teaching and learning methods. These include a brief background, interactive illustrations, tasks, reflection questions, a real-world application in electricity load forecasting, and guided exercises for the different concepts explored. The module can be used to provide a light introduction to the terminology and concepts in machine learning, centered around regression. The overarching goal is to familiarize students with the typical workflow, setup, and considerations involved in solving regression problems with machine learning.

The instructions inside the live scripts will guide you through the activities and exercises. Get started with each live script by running it one section at a time. To stop running the script or a section midway (for example, when an animation is in progress), use the Stop button in the RUN section of the Live Editor tab in the MATLAB toolstrip.

Suggested Prework

MATLAB Onramp—a free two-hour introductory tutorial to learn the essentials of MATLAB®. Additional programming skills (see MATLAB Fundamentals) are beneficial, but not assumed in the tasks and instructions.
Regression Basics—a curriculum module to cover the fundamentals of regression analyis.

No prior exposure to the subject of machine learning is assumed.

Details

machineLearningIntro.mlx Open in MATLAB Online An interactive lesson that introduces some key concepts in machine learning, along with a few regression models. It contains many independent introductory sections that are easy to edit.

Learning Goals

  • State the difference between regression, classification, and clustering problems.
  • Outline the common steps involved in applying machine learning techniques.
  • Define feature engineering and feature extraction.
  • Formulate regression as a machine learning problem.
  • Identify and use the different machine learning models commonly used for regression.
  • Explain overfitting and underfitting in machine learning, and identify at least two ways of tackling these problems.

loadForecastRegression.mlx, loadForecastRegression_soln.mlx Open in MATLAB Online
Students are guided through the steps to apply machine learning for electricity load forecasting using real-world data. This script can be used in two different modes: controls-only or with complete code.

Learning Goals

  • Apply the steps in the machine learning workflow to solve a practical problem in time series forecasting.
  • Formulate the time series forecasting problem as a machine learning problem by engineering appropriate features.
  • Validate and compare different types of regression models.
  • Test and evaluate the trained model to make predictions.

electricityLoadDataML.mlx Open in MATLAB Online
A supplementary script to download the external electricity load data from New York ISO for use in loadForecastRegression.mlx. This script contains the code for downloading, organizing, formatting, and cleaning up the raw data.

FE1_programmaticML.mlx, FE2_loadForecastDL.mlx Open in MATLAB Online
These two scripts contain ideas to expand on the practical problem presented in loadForecastRegression.mlx. Working through the suggestions requires some independent exploration and active learning. FE1_programmaticML.mlx encourages students to write their own machine learning algorithm, and FE2_loadForecastDL.mlx begins to explore deep learning for load forecasting.

Products

MATLAB, Statistics and Machine Learning Toolbox™

License

The license for this module is available in the LICENSE.TXT file in this GitHub repository.

Support

Have any questions or feedback? Contact the MathWorks online teaching team.

Copyright 2021 The MathWorks, Inc.

machine-learning-for-regression's People

Contributors

eszmw avatar plalan-mw avatar rweinstemw avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.