Resources - Chen DataSAI 2022

September 2022


Sabera Talukder Resources Cosyne 2022
  The 2022-2023 school year starts for many this week! ๐Ÿค“ With the start of a new school year, I wanted to collect all the resources we created for Caltech's inaugural Chen DataSAI Summer School for anyone interested in easily learning AI techniques! If you are looking to learn computational techniques either more broadly or for scientific applications, you can build these lectures, coding tutorials, and code solutions into your new-(academic) year-new-you schedule ๐Ÿ˜˜.

  Before we dive into all of the content we created for YOU, let me give a quick run down of Chen DataSAI and our Summer School's goals. First and foremost, DataSAI stands for Data Science and Artificial Intelligence. Our main goal was to take data science and artificial intelligence methods and make them easily accessible to students who may not be as familiar with computational techniques. We built Chen DataSAI to enable you apply the methods you learn to scientific problems you care about! As you walk through the course you will hopefully see that embodied throughout our incredible speakers and special lessons, such as Bring Your Own Data Day. If you're already a total pro ๐Ÿ˜Ž, feel free to only check out the jupyter notebooks and solutions that speak to you! Choose your own adventure!

  This post collects all of the resources for the course including the: Course Website | Code Repository | Lecture Recordings, and serves as a one-stop-shop to recreate the inaugural Chen DataSAI experience for yourself! With that, let's get started ๐Ÿ‘ฉโ€๐Ÿ’ป๐Ÿ‘จโ€๐Ÿ’ป happy learning & happy coding!



Computational Basics

Tuesday 7/5 | Live Twitter Thread |

Lecture - Introduction to Chen DataSAI & Computational Basics
  | Lecture Recording | Lecture Slides |

Coding Session 1 - Dimensionality Reduction
  | Jupyter Notebook | Code Solutions |

Coding Session 2 - Overfitting & Regularization
  | Jupyter Notebook | Code Solutions |

Coding Session 3 - Dataset Engineering
  | Jupyter Notebook | Code Solutions |



Dynamical Time Series Analysis

Wednesday 7/6 | Live Twitter Thread |

Intro Lecture - Dynamical Systems & Time Series Data in Neuroscience
  | Lecture Recording | Lecture Slides |

Methods Lecture - Fitting Generalized Linear Models to Neural Data
  | Lecture Recording | Lecture Slides |

Coding Session 1 - Generalized Linear Model on Retinal Data
  | Jupyter Notebook | Code Solutions |

Coding Session 2 - Neural Model Simulation
  | Jupyter Notebook | Code Solutions |



High Dimensional Data Analysis

Thursday 7/7 | Live Twitter Thread |

Intro Lecture - Dealing with High-dimensional Data; Projections, Dimensionality Reduction & Classification
  | Lecture Recording | Lecture Slides |

Methods Lecture - Making Sense of Neural Population Data
  | Lecture Recording | Lecture Slides |

Coding Session - Predicting Muscle Activity from M1 Neural Recordings and Latent Signals
  | Jupyter Notebook | Code Solutions |



Autoencoders & Machine Learning Introduction

Friday 7/8 | Live Twitter Thread |

Intro Lecture - Introduction to Machine Learning
  | Lecture Recording | Lecture Slides |

Methods Lecture - Autoencoders
  | Lecture Recording | Lecture Slides |

Coding Session - Neural Autoencoders
  | Jupyter Notebook | Code Solutions |



Single-cell RNASeq, Linear Regression & Hypothesis Testing

Monday 7/11 | Live Twitter Thread |

Intro Lecture - Single-cell RNASeq
  | Lecture Recording | Lecture Slides |

Methods Lecture - Regression & Hypothesis Testing
  | Lecture Recording | Lecture Slides |

Philosophy Discussion - Exploratory Data Analysis
  | Discussion Slides |

By-hand Math Session - Linear Regression
  | Regression Exercise | Cheat Sheet | Regression Exercise Solutions |

Coding Session 1 - Regression Modeling for Single-cell Data
  | Jupyter Notebook | Code Solutions |

Coding Session 2 - Modeling and Variance Stabilization of Count Data
  | Jupyter Notebook | Code Solutions |



Bring Your Own Data Day - Data Preprocessing & Model Engineering

Tuesday 7/12 | Live Twitter Thread |

Lecture 1 - Data Processing Principles
  | Lecture Recording | Lecture Slides |

Lecture 2 - Model Engineering Principles
  | Lecture Recording | Lecture Slides |

Coding Session - In Case You Don't Have Your Own Data ๐Ÿ™ˆ
  | Minimal (๐Ÿ˜ฑ) Jupyter Notebook |



Introduction to Deep Learning & LFADS

Wednesday 7/13 | Live Twitter Thread |

Intro Lecture - Introduction to Deep Learning & Population Dynamics
  | Lecture Recording | Lecture Slides |

Methods Lecture - Uncovering Single Trial Population Dynamics
  | Lecture Recording | Lecture Slides |

Philosophy Discussion - Neural Networks, Deep Autoencoders & Neural Population Dynamics
  | Discussion Slides |

Coding Session - Latent Variable Models
  | Jupyter Notebook | Code Solutions |



Generative Modeling & MYOW

Thursday 7/14 | Live Twitter Thread |

Intro Lecture - Learning Representations of Neural States through Self-Supervised Learning
  | Lecture Recording | Lecture Slides |

Methods Lecture - Introduction to Neural Networks and Pytorch
  | Lecture Recording | Lecture Slides | Lecture Jupyter Notebook |

Coding Session - Self-supervised Representation Learning for Neural Activity
  | Jupyter Notebook | Code Solutions |



RNNs & Dynamical Systems

Friday 7/15 | Live Twitter Thread |

Intro Lecture - Recurrent Neural Networks for Neuroscience
  | Lecture Recording | Lecture Slides |

Methods Lecture - RNNs for Neuroscience
  | Lecture Recording | Lecture Slides | Lecture Slides Annotated |

Coding Session - Implementing, Training & Analyzing Recurrent Neural Networks
  | Jupyter Notebook | Code Solutions |



ยกยก Bonus Content !!


Implement Your Own Variational Autoencoder - As Seen in the Autoencoder Lectures
  | Self-contained Jupyter Notebook |



  Glad you made it through the course ๐Ÿค“ Now you're an AI for Neuroscience Pro!



If you enjoyed this article, please let me know! ๐Ÿ‘‰