COMP328 Fundamentals of Machine Learning

Unit 3 of 3 · Module 1

Python ML Ecosystem

Units 1 and 2 were about ideas and data. Unit 3 is where you get your hands on the tools. Over nine tutorials you will learn to load, inspect, clean, visualise, and model real datasets using Python — and you will finish with a complete end-to-end workflow that is the direct precursor to Assignment 1.

9 tutorials ~6 hours 1 unit quiz Feeds Assignment 1

Learning outcomes

By the end of this unit you will be able to

  • Set up and use a Python environment for data science, including JupyterLab and the core libraries of the Python ML ecosystem.
  • Load, inspect, and manipulate tabular data using Pandas DataFrames, including selecting, filtering, grouping, and aggregating.
  • Perform the same operations on raw arrays using NumPy, and explain when vectorised computation is preferable to Python loops.
  • Clean a real dataset: handle missing values, remove duplicates, correct data types, and address inconsistent formatting.
  • Visualise data using Matplotlib, choosing appropriate plot types for different kinds of feature.
  • Use the Scikit-Learn estimator API — fit, predict, score — to train and evaluate a model in a few lines of code.
  • Perform a complete end-to-end machine learning workflow: load, explore, clean, split, train, evaluate, and interpret results on a real dataset.
  • Explain how the operations you perform in code correspond to the conceptual stages of the lifecycle from T-08.

The shift from Units 1 and 2

Unit 1 was conceptual; Unit 2 was about the structure of data. Unit 3 is where you stop reading about machine learning and start doing it. Everything in the previous two units assumed you would eventually apply it. This is that moment. Expect to spend more time in front of a code editor than in front of a textbook.

Prerequisite reminder

This unit assumes you have completed Units 1 and 2, and that you are comfortable with basic Python programming — variables, functions, loops, and conditionals. If your Python is rusty, work through a refresher before starting T-01. The unit assumes you can read and write simple Python code, not that you are fluent in it.

Tutorials

Nine tutorials, worked through in order. The first seven introduce the tools one at a time, with plenty of small examples. T-08 brings everything together in a single complete workflow. T-09 reviews the unit and prepares you for Module 2.

What you will be working with

The Python ML ecosystem is deliberately modular. Each tool does one thing well, and they are designed to work together. By the end of this unit you will have used all of them.

Python 3.9+ The language itself, and the environment everything runs inside.
JupyterLab An interactive notebook environment for writing and running code in cells.
NumPy Fast numerical arrays and vectorised operations.
Pandas Tabular data — loading, cleaning, transforming, and summarising.
Matplotlib Plots and visualisations, from histograms to scatter plots.
Scikit-Learn Classical machine learning algorithms behind a single, unified API.

How to work through this unit

This unit is the first one where you will spend most of your time typing code rather than reading prose. The habits that matter here are different from every earlier unit.

  1. Type the code yourself

    Do not copy and paste from the tutorials. Typing the code yourself, and making the small mistakes that come with it, is how the syntax and the patterns become familiar.

  2. Run every cell

    Every code example in this unit should be executed in your own environment. Reading code does not build the skill; running it does.

  3. Experiment beyond the examples

    When a tutorial shows you how to do something, try it on different columns, different rows, or a different dataset. The point is to build fluency, and fluency comes from variation.

  4. Work through T-08 without help

    The end-to-end workflow in T-08 is the direct precursor to Assignment 1. When you reach it, try to complete it without looking back at earlier tutorials. If you get stuck, look back — but attempt it first.

Assessment in this unit

Unit 3 contributes one unit quiz to your final grade, and prepares you directly for Assignment 1, which is the first substantial piece of work in the course.

  • Quiz 3 Python ML Ecosystem — 15 questions, counts toward your quiz grade Go to T-09
  • Assignment 1 Data Exploration and Preparation — released in Module 2, due week 4 Preview

Assignment 1 opens immediately after this unit

Assignment 1: Data Exploration and Preparation is released at the start of Module 2 and is due in week 4. It asks you to load, explore, clean, and prepare a real dataset — the same operations you will practise throughout this unit. If you work through T-08 carefully, the assignment will feel like a natural extension of it.

Setting up your environment

Before starting T-01, install Python, JupyterLab, NumPy, Pandas, Matplotlib, and Scikit-Learn on your machine. If installation causes problems, the Anaconda distribution packages all of them together and is the simplest starting point for most students. T-01 includes a brief installation guide, but if you have any difficulty, resolve it before continuing — the rest of the unit depends on a working environment.

Looking ahead to Module 2

Module 2 begins building models in earnest. Everything in this unit — loading data with Pandas, splitting it into training and test sets, fitting a model with Scikit-Learn — becomes a routine part of every tutorial. The tools are not the point; they are the medium through which the rest of the course is delivered. Learn them well here, and the later modules will feel much easier.

πŸ‘€