Skip to content

belindaastanton/Prepare_to_Teach_Software_Automation_Resources

 
 

Repository files navigation

Prepare to Teach 'Software Automation' in Software Engineering

A facilitated online workshop series to support teacher confidence in the delivery of Software Automation. Teachers will commit to an eight-week series of one-hour online workshops, each with 1 hour of preparation work each week.

At the end of the workshop series, teachers will

  1. Have a deeper understanding of the Machine Learning Algorithms listed in the syllabus and the underlying principles of Machine Learning.
  2. Be able to interpret and modify practical OOP implementations of the Algorithms.
  3. Have a practical understanding of MLOps.
  4. Be provided with all resources to adapt or adopt to their context.

Teachers should be prepared to complete one hour of self-directed professional learning before the online workshop each week. The online workshop will focus on deepening understanding of the preparation work and practical application of the concepts through OOP Python implementations.

Session Times

The online workshops will begin week 1, term 2 until week 8, Tuesdays from 3:30-4:30pm.

Program

Note

This Program is indicative and will be adjusted as we progress, as some topics may take less time than planned and others longer.

Week Overview Workshop Outline Preperation
0
1 Linear Regression
  • Jupyter Notebooks
  • Numpy & Pandas
  • Linear Regression
  • Linear Regression algorithm
  • Intuition: Fit, underfit, overfit
  • Video's & Notes
  • Problem Set
2 Complex Regression & Classification
  • OOP Multifeature Linear Regression
  • OOP Polynomial Linear Regression
  • Classification
  • Logistic Regression algorithm
  • OOP Logistic Regression
  • Video's & Notes
  • Problem Set
  • OOP Logistic Regression Iris Classification Problem
3 Data in Machine Learning
  • Bias V Variance
  • Bias in Machine Learning
  • Matplotlib
  • One hot encoding
  • Video's & Notes
  • Problem Set
4 Advanced Supervised Machine Learning
  • OOP K Nearest Neighbour
  • OOP Decision Trees
  • OOP Neural Networks
  • Video's & Notes
  • Problem Set
  • OOP Neural Network Iris Classification
5 MLOPs (Design)
  • MLOps
  • Refactor machine learning problem
  • Define success metrics
  • Video's & Notes
  • Problem Set
6 & 7 MLOPs (Development)
  • Data wrangling
  • Feature Engineering
  • Model Fitting
  • Testing and evaluation
  • Model refining
  • Model development
8 MLOPs (Operations)
  • Model exporting
  • Implement a CLI to a model
  • Capstone Project

Capstone Project

At the end of the workshop, teachers will be given an optional task that will require them to identify a data set, wrangle the data, engineer features, develop an ML model and put it into operations.

The optional task will be reviewed informally as a 1:1 online discussion about the final solution you have delivered anytime after the workshops have ended (no formal submission date).

Other Resources

  1. Pre-configured Code Spaces DevContainer for Machine Learning - A repository template for Jupyter Notebook Python Development in GitHub CodeSpaces including image packages.
  2. NESA Course Specification Linear Regression Implementation - A Jupyter Notebook collection designed to support students' understanding of the Linear Regression model defined in the NESA Software Engineering Course Specifications pg 28.
  3. NESA Software Engineering - Machine Learning OOP Implementation Examples - A Jupyter Notebook collection designed to support students implement Programming for automation in the NESA Software Engineering Syllabus specifically using an OOP to make predictions.
  4. Practical Application of NESA Software Engineering MLOps - A Jupyter Notebook collection designed to develop a practical understanding of Machine Learning Operations (MLOps) defined in the NESA Software Engineering Course Specifications pg 27.

External links:


Prepare to Teach Software Automation Professional Learning Resources by Ben Jones is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Jupyter Notebook 65.0%
  • Python 35.0%