Skip to main content

This is a tutorial covering Generalized Linear Models (GLMs), which are a fundamental framework for supervised learning. In this tutorial, the objective is to model a retinal ganglion cell spike train by fitting a temporal receptive field: first with a Linear-Gaussian GLM (also known as ordinary least-squares regression model) and then with a Poisson GLM (aka "Linear-Nonlinear-Poisson" model). The data you will be using was published by Uzzell & Chichilnisky 2004.

Difficulty level: Beginner
Duration: 8:09
Speaker: : Anqi Wu

This tutorial covers the implementation of logistic regression, a special case of GLMs used to model binary outcomes. In this tutorial, we will decode a mouse's left/right decisions from spike train data.

Difficulty level: Beginner
Duration: 6:42
Speaker: : Anqi Wu

This tutorial covers multivariate data can be represented in different orthonormal bases.

Difficulty level: Beginner
Duration: 4:48
Speaker: : Alex Cayco Gajic

This tutorial covers how to perform principal component analysis (PCA) by projecting the data onto the eigenvectors of its covariance matrix.

To quickly refresh your knowledge of eigenvalues and eigenvectors, you can watch this short video (4 minutes) for a geometrical explanation. For a deeper understanding, this in-depth video (17 minutes) provides an excellent basis and is beautifully illustrated.

Difficulty level: Beginner
Duration: 6:33
Speaker: : Alex Cayco Gajic

This tutorial covers how to apply principal component analysis (PCA) for dimensionality reduction, using a classic dataset that is often used to benchmark machine learning algorithms: MNIST. We'll also learn how to use PCA for reconstruction and denoising.

You can learn more about MNIST dataset here.

Difficulty level: Beginner
Duration: 5:35
Speaker: : Alex Cayco Gajic

This tutorial covers how dimensionality reduction can be useful for visualizing and inferring structure in your data. To do this, we will compare principal component analysis (PCA) with t-SNE, a nonlinear dimensionality reduction method.

Difficulty level: Beginner
Duration: 4:17
Speaker: : Alex Cayco Gajic

This tutorial provides an introduction to Bayesian statistics and covers developing a Bayesian model for localizing sounds based on audio and visual cues. This model will combine prior information about where sounds generally originate with sensory information about the likelihood that a specific sound came from a particular location. The resulting posterior distribution not only allows us to make optimal decision about the sound's origin, but also lets us quantify how uncertain that decision is. Bayesian techniques are therefore useful normative models: the behavior of human or animal subjects can be compared against these models to determine how efficiently they make use of information.

Difficulty level: Beginner
Duration: 5:13

In this tutorial, we will use the concepts introduced in Tutorial 1 as building blocks to explore more complicated sensory integration and ventriloquism!

Difficulty level: Beginner
Duration: 4:22

This tutorial covers computing all the necessary steps to perform model inversion (estimate the model parameters such as 𝑝𝑐𝑜𝑚𝑚𝑜𝑛 that generated data similar to that of a participant). We will describe all the steps of the generative model first, and in the last exercise we will use all these steps to estimate the parameter 𝑝𝑐𝑜𝑚𝑚𝑜𝑛 of a single participant using simulated data. The generative model will be the same Bayesian model we have been using throughout tutorial 2: a mixture of Gaussian prior (common + independent priors) and a Gaussian likelihood.

Difficulty level: Beginner
Duration: 2:40

This tutorial focuses on Bayesian Decision Theory, which combines the posterior with cost functions that allow us to quantify the potential impact of making a decision or choosing an action based on that posterior. Cost functions are therefore critical for turning probabilities into actions!

Difficulty level: Beginner
Duration: 5:10

This lecture provides an introduction to linear systems.

Difficulty level: Beginner
Duration: 30:55
Speaker: : Eric Shea-Brown

This tutorial covers the behavior of dynamical systems, systems that evolve in time, where the rules by which they evolve in time are described precisely by a differential equation. 

Differential equations are equations that express the rate of change of the state variable 𝑥. One typically describes this rate of change using the derivative of 𝑥 with respect to time (𝑑𝑥/𝑑𝑡) on the left hand side of the differential equation: 𝑑𝑥𝑑𝑡=𝑓(𝑥). A common notational short-hand is to write 𝑥˙ for 𝑑𝑥𝑑𝑡. The dot means "the derivative with respect to time".

Difficulty level: Beginner
Duration: 9:28
Speaker: : Bing Wen Brunton

This tutorial provides an introduction to the Markov process in a simple example where the state transitions are probabilistic. The aims of this tutorial is to help you understand Markov processes and history dependence, as well as to explore the behavior of a two-state telegraph process and understand how its equilibrium distribution is dependent on its parameters.

Difficulty level: Beginner
Duration: 3:24
Speaker: : Bing Wen Brunton

This tutorial builds on how deterministic and stochastic processes can both be a part of a dynamical system by simulating random walks, investigating the mean and variance of a Ornstein-Uhlenbeck (OU) process, and quantifying the OU process's behavior at equilibrium.

Difficulty level: Beginner
Duration: 2:54
Speaker: : Bing Wen Brunton

The goal of this tutorial is to use the modeling tools and intuitions developed in the previous few tutorials and use them to fit data. The concept is to flip the previous tutorial -- instead of generating synthetic data points from a known underlying process, what if we are given data points measured in time and have to learn the underlying process?

This tutorial is in two sections:

  • Section 1 walks through using regression of data to solve for the coefficient of an OU process from Tutorial 3.
  • Section 2 generalizes this auto-regression framework to high-order autoregressive models, and we will try to fit data from monkeys at typewriters.
Difficulty level: Beginner
Duration: 5:34
Speaker: : Bing Wen Brunton

This tutorial introduces the Sequential Probability Ratio Test between two hypotheses 𝐻𝐿 and 𝐻𝑅 by running simulations of a Drift Diffusion Model (DDM). As independent and identically distributed (i.i.d) samples from the true data-generating distribution coming in, we accumulate our evidence linearly until a certain criterion is met before deciding which hypothesis to accept. Two types of stopping criterion/stopping rule will be implemented: after seeing a fixed amount of data, and after the likelihood ratio passes a pre-defined threshold. Due to the noisy nature of observations, there will be a drifting term governed by expected mean output and a diffusion term governed by observation noise.

Difficulty level: Beginner
Duration: 4:46
Speaker: : Yicheng Fei

This tutorial covers how to simulate a Hidden Markov Model (HMM) and observe how changing the transition probability and observation noise impacts what the samples look like. Then we'll look at how uncertainty increases as we make future predictions without evidence (from observations) and how to gain information from the observations.

Difficulty level: Beginner
Duration: 4:48
Speaker: : Yicheng Fei

This tutorial covers how to infer a latent model when our states are continuous. Particular attention is paid to the Kalman filter and its mathematical foundation.

Difficulty level: Beginner
Duration: 2:38

In this tutorial, you will perform a Sequential Probability Ratio Test between two hypotheses HL and HR by running simulations of a Drift Diffusion Model (DDM).

Difficulty level: Beginner
Duration: 4:46
Speaker: : Zhengwei Wu

In this tutorial, you will implement a continuous control task: you will design control inputs for a linear dynamical system to reach a target state. 

Difficulty level: Beginner
Duration: 10:02
Speaker: : Zhengwei Wu