In-Class Participation Exercises#

Active learning activities designed for use during lectures. Each module includes 3 exercises of varying types to promote engagement and deeper understanding.

Exercise Types#

Type

Description

Duration

Reflection

Personal reflection connecting concepts to experience

3-5 min

Mini-Exercise

Hands-on coding or problem solving

5-10 min

Discussion

Pair or group discussion with neighbors

5-7 min

Prediction

Make predictions before seeing results

2-3 min

Critique

Analyze code, results, or identify bugs

5-7 min

Exercises by Module#

Data Foundations#

Module

Exercises

Focus

00: Introduction

0.1-0.3

ML applications, prediction, sharing experience

01: NumPy

1.1-1.3

Vectorization, broadcasting, when loops are okay

02: Pandas Intro

2.1-2.3

Data types, exploration race, missing data strategies

03: Intermediate Pandas

3.1-3.3

GroupBy, data wrangling frustrations, spot the bug

Feature Engineering & Dimensionality#

Module

Exercises

Focus

04: Feature Engineering

4.1-4.3

Domain features, scaling, engineering philosophy

05: Dimensionality Reduction

5.1-5.3

Variance prediction, PCA loadings, PCA vs t-SNE

Supervised Learning#

Module

Exercises

Focus

06: Linear Regression

6.1-6.3

Coefficient interpretation, residual diagnosis, causation

07: Classification

7.1-7.3

Metric selection, confusion matrix, ROC curves

08: Regularization

8.1-8.3

Bias-variance, Ridge vs Lasso, cross-validation leakage

09: Nonlinear Methods

9.1-9.3

Method selection, overfitting visualization, interpretability

Advanced Topics#

Module

Exercises

Focus

10: Ensemble Methods

10.1-10.3

Wisdom of crowds, feature importance comparison, when to use

11: Clustering

11.1-11.3

Cluster prediction, scaling impact, validation without labels

12: Uncertainty Quantification

12.1-12.3

Communicating uncertainty, bootstrap, sources of uncertainty

13: Model Interpretability

13.1-13.3

Stakeholder explanations, SHAP interpretation, right to explanation

How to Use#

  1. Before class: Review the exercises for the day’s module

  2. During class: Pause at designated points for each exercise

  3. After exercises: Brief whole-class discussion or share-out

  4. Participation credit: Students complete exercises in their own copy

Grading Suggestions#

  • Completion-based: Check if students attempted each exercise

  • Effort-based: Brief instructor review of quality

  • Peer review: Students review each other’s responses

  • Random selection: Grade a subset of exercises each week

Files#

Individual module notebooks:

  • participation-00-introduction.ipynb - Introduction exercises

  • participation-01-numpy.ipynb - NumPy exercises

  • participation-02-pandas-intro.ipynb - Pandas Introduction exercises

  • participation-03-intermediate-pandas.ipynb - Intermediate Pandas exercises

  • participation-04-feature-engineering.ipynb - Feature Engineering exercises

  • participation-05-dimensionality-reduction.ipynb - Dimensionality Reduction exercises

  • participation-06-linear-regression.ipynb - Linear Regression exercises

  • participation-07-classification.ipynb - Classification exercises

  • participation-08-regularization.ipynb - Regularization & Model Selection exercises

  • participation-09-nonlinear-methods.ipynb - Nonlinear Methods exercises

  • participation-10-ensemble-methods.ipynb - Ensemble Methods exercises

  • participation-11-clustering.ipynb - Clustering exercises

  • participation-12-uncertainty-quantification.ipynb - Uncertainty Quantification exercises

  • participation-13-model-interpretability.ipynb - Model Interpretability exercises

Combined notebook (for reference):

  • participation-exercises.ipynb - All exercises in one notebook