Pre-start

Announcements

  • Any final project questions??
    • There are folks I haven't heard from so PLEASE contact me and let me know what to expect for your final project. 
      • If there is no submission here, the objectives listed in the syllabus weren't met so I have to give an incomplete or failing grade
        • same goes for homework
  • Thank you all! Bagels + Coffee.

Neural Signal Processing & Machine Learning

ELEC/BIOE 548 | ELEC 483

Fall 2022

Episodes 25 & 26 (bonus) The dramatic conclusion: Continuous decoding | Real-time detection | Beyond this course

1

Introduction. Class & brains

2

Fundamental neurobiology. How do neurons fire? How/what do we record?

3

Modeling spike trains. First bit of analysis work and understanding firing properties of neurons.

5

Classification. Making machines learn. Which direction is a monkey trying to reach? Bayesian decoding.

4

Point processes. Continued modeling work of neurons.

6

Clustering/Mixture models. Making machines learn some more. Spike sorting.

Bi-weekly Schedule

7

Continuous decoding. Kalman filters. Machines continue to learn...but smoothly this time!

8

Spectral analysis? LFP interpretation in spectral domain. But also kinda in clustering.

Brain Signals!

  • How can we measure neural activity?

  • What info do neurons encode in trains of action potentials (“spike trains”)?

  • How can we model “statically” encoded information?

  • Estimation/”decoding”

  • Signal conditioning – “spike sorting” (PCA, Expectation-Maximization)

  • How can we model/decode “dynamic” information? (filtering, Kalman, HMM)

  • Real-time systems discussion!

  • Beyond spike trains (LFP, EEG, imaging)

Probabilistic PCA (PPCA)

Factor Analysis

(FA)

One last note

Kalman Filter

Kalman filters are very simple

Kalman Filter

Kalman Filter

Kalman Filter

Kalman Filter

Kalman Filter

Kalman Filter

Apparently, this is a figure from Dr. Kemere's PhD Thesis lol

Kalman Filter

https://neuralsignalprocessing.github.io/Lectures/KalmanFilter.pdf

 

https://www.bzarg.com/p/how-a-kalman-filter-works-in-pictures/

 

https://www.kalmanfilter.net/default.aspx

https://towardsdatascience.com/kalman-filter-an-algorithm-for-making-sense-from-the-insights-of-various-sensors-fused-together-ddf67597f35e

I'll probably record one more video lecture of this later as I just wanted to define all the equations and formulas and needed more time to show examples and demonstrate usage and such. However, honestly these are the resources that should help significantly if you want to learn and understand this stuff fully. Have fun and enjoy!

Kalman Filter

\(\mathbf{z}_t \in \mathbb{R}^M \quad\) latent "state" variable at time \(t\)

\(\mathbf{x}_t \in \mathbb{R}^D \quad\) observation at time \(t\)

\(\mathbf{x}_t\) represents the spiking data BUT this does not just need to be sorted place cells through spatial tuning curve generation!

\(\mathbf{z}_t\) represents latent states which could be place fields OR even have more information conveyed than just space!

  • But what might that information mean???

Meaning we could also include pyramidal cells that are not spatially tuned & even interneurons

Kalman Filter

Let's start with the state model: \(\mathbf{z}_t \in \mathbb{R}^M\)

We need to pick \(M<D\), where \(M\) is the number of latent states and \(D\) is the dimensionality of the input data \(\mathbf{x}_t\) which in this case happens to be 10.

Set \(D=10\) & \(M=6\) just to have concrete numbers

\(\mathbf{z}_t|\mathbf{z}_{t-1}\sim\mathcal{N}(\mathbf{A}\mathbf{z}_{t-1},\mathbf{Q})\)

\(\mathbf{z}_1\sim\mathcal{N}(\boldsymbol{\pi},\mathbf{V})\)

Kalman Filter

Kalman Filter

Kalman Filter

Kalman Filter

Real-time systems

Real-time systems

Real-time systems

Real-time systems

Real-time systems

Real-time systems

Real-time systems

Real-time systems

BEYOND THIS