This Jupyter Notebook collection is designed to support students understand the Linear Regression model defined in the NESA Software Engineering Course Specifications pg 28.
Note
There are some variations from the NESA course specifications to address syntax errors, missing methods and readability.
Several versions have been provided to support students understand the specification and apply it in different contexts. Open these Jupyter Notebooks in Jupyter Notebook, VSCode or Codespaces to modify the code/data and run the code blocks.
Important
The configuration for VSCode and Codespaces have been built into this repository.
- An introduction to scikit-learn basics with a focus on the Object Oriented Paradigm.
- The Raw Demonstration of the course specification provides a direct application of each step of the algorithm.
- The Graphical Demonstration of the course specifications provides graphs visualising each step of the algorithm.
- The CSV Demonstration of the course specifications uses a CSV upload of the data so larger model training data sets can be used.
- The SQL Demonstration of the course specifications imports the data from a SQL database so the data can be managed in a database.
- The Model Testing and Validation Demonstration provides a number of ways to evaluate, test and validate your model using a second set of test data.
- The Export/Import Demonstration of the course specifications exports the model so a separate Python implementation can use it to make predictions without the training data or dependencies. The demonstration also includes how to save a Matplotlib image so it can be used in a UI.
NESA Course Specifications Linear Regression by Ben Jones is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International