Tutorials and practical resources I have developed for teaching computational methods and neuroscience.

Machine Learning

A practical machine-learning tutorial for analysing biological image datasets. We first use YOLO to detect cell mitosis events, then incorporate ByteTrack to track individual butterflies flying together. The tutorial includes presentation materials and two Jupyter notebooks containing code for students to work through.

Access the tutorial materials on Google Drive ↗

  • Presentation slides: one compressed PDF, and one full PowerPoint with embedded videos (~300MB).
  • Student exercises: two Jupyter notebooks (.ipynb).
Automated detection and tracking of butterflies. Example output from the machine-learning tutorial, showing model predictions overlaid on video footage.

Breadboard Neuroscience

An introduction to neuronal dynamics and computation using simple electronic circuits. The tutorial explores how resistors, capacitors, and other components can be used to model passive membranes and elementary neuronal computations.

Building an elementary motion detector from simple electronic components. Based on the canonical Hassenstein–Reichardt model of insect motion vision, this breadboard implementation illustrates how delayed signals from two inputs can be combined to distinguish opposite directions of motion. The schematic and traces show the underlying computation alongside its physical circuit implementation.

Read Breadboard Neuroscience (PDF) ↗