Topics
What is machine learning?
Contrast hand-written rules with a model that learns from data.
NumPy arrays
Create arrays and understand shape, dtype and indexing.
Vectorisation and broadcasting
Do maths on whole arrays without loops.
pandas DataFrames
Load a CSV and select rows and columns.
Cleaning data
Handle missing values, duplicates and wrong types.
groupby and aggregation
Summarise data by category.
Visualising data with matplotlib
Plot line, bar and scatter charts.
Statistics you need
Compute mean, median, std and correlation.
Linear regression from scratch
Fit a line y = mx + c to predict numbers.
Gradient descent
See how a model improves by stepping downhill on error.
Train/test split and overfitting
Evaluate on unseen data and spot overfitting.
scikit-learn workflow
Use fit/predict with a real library.
Classification with logistic regression
Predict yes/no with probabilities.
k-nearest neighbours
Classify by looking at the closest examples.
Decision trees
Split data with yes/no questions.
Accuracy, precision, recall, confusion matrix
Measure classifiers correctly.
Clustering with k-means
Group unlabelled data.
A single neuron (perceptron)
See weights, bias and activation in one artificial neuron.
A small neural network
Understand layers, forward pass and backpropagation.
Text to numbers: tokens and embeddings
See how text becomes tokens and vectors.
Calling an LLM from Python
Send a prompt to an LLM API and use the reply.
Mini RAG: answering from your notes
Retrieve relevant text then ask the model with it.
Project: match score predictor
Build an end-to-end ML pipeline.