Lab and skill programs
Which topic covers each lab session and skill session, and what to build for each.
Each session below points to a topic with a program you can run on the page. Run it, understand it, then do the extension as your lab work.
Lab sessions
| Session | Task | Go to | Extension to build |
|---|---|---|---|
| 1 | Linear regression | Topic 28 | Add a second input feature, and report MSE and R² |
| 2 | Classification with decision trees | Topic 4, Topic 30 | Run your ID3 on a 6-row dataset of your own |
| 3 | Decision tree with evaluation parameters | Topic 30 | Calculate precision, recall and F1 by hand from the confusion matrix, and compare with the library |
| 4 | Decision tree construction | Topic 6, Topic 30 | Compare entropy and Gini on load_wine |
| 5 | Random forest classification | Topic 31 | Plot accuracy against the number of trees |
| 6 | Naive Bayes on adult census data | Topic 32 | Run it on the real Adult data on your own computer |
| 7 | K-nearest neighbours | Topic 33 | Implement weighted voting |
| 8 | K-means clustering | Topic 34, Topic 13 | Cluster load_wine, and describe each cluster |
| 9 | Perceptron | Topic 15 | Train NAND and NOR gates |
| 10 | ANN model with a genetic optimiser | Topic 35 | Try different mutation sizes and report the results |
| 11 | Multilayer network to predict the weather | Topic 35 | Compare three network sizes, and draw a learning curve |
| 12 | ANN classification model | Topic 17, Topic 35 | Apply an MLP to load_breast_cancer, and report precision and recall |
Skill sessions
| Session | Task | Go to |
|---|---|---|
| 1 | Data exploration with pandas and visualisation | Topic 26 |
| 2 | Data preprocessing | Topic 27 |
| 3 | Build a linear regression model | Topic 28 |
| 4 | Decision boundary of a linear regression | Topic 28 (second program) |
| 5 | Handling missing values, then linear regression | Topic 28 (second program) |
| 6 | Build a decision tree | Topic 4, Topic 30 |
| 7 | Post-pruning a decision tree | Topic 30, Topic 6 |
| 8 | Naive Bayes as a generative classifier | Topic 11 |
| 9 | Predict the income class with naive Bayes | Topic 32 |
| 10 | Build a Bayesian belief network | Topic 12 |
| 11 | AND and OR gates with a perceptron | Topic 15 |
| 12 | Neural network with one hidden layer of 2 neurons | Topic 16, Topic 17 |
| 13 | Multilayer network using backpropagation | Topic 17 |
| 14 | The TensorFlow environment | Project guide (on your own computer) |
| 15 | Gradient descent for logistic regression | Topic 29 |
| 16 | Genetic algorithm to build a model | Topic 18, Topic 35 |
| 17–24 | Case studies and the project | Project guide |