Skip to content

Program & Material for a Computational Neuroscience Crash Course. Bordeaux (2019).

License

Notifications You must be signed in to change notification settings

jamie-roberts/NeuroComp-Bordeaux-2019

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Computational Neuroscience Crash Course


Given the increasing complexity of neural data and the generalized use of theoretical models in neuroscience, more and more neuroscientists rely on computationnal tools for modelling or data analysis. We would like to offer the possibility to those who feel that their maths/informatics background is a bit short to update their maths and to get familiar with basic techniques for data analysis/modelling using the Python language. The course will span over two years, with a first part (2019) focusing on the maths and programming pre-requisites, and a second part next year (2020) on data analysis (and possibly modelling to follow).

Arthur Leblois (CNRS) & Nicolas P. Rougier (Inria)



Forewords

The course is free and open to everyone (student, post-docs, researchers...) but we'll give priority to master and PhD students given the limited number of places (n=24). Just send us an email (arthur.leblois@u-bordeaux.fr or nicolas.rougier@inria.fr) by end of March if you're interested. For all courses (maths and programming), we'll provide some theoretical background, propose small exercices for participant to work on their own and then solve the exercices together and make sure everybody has acquired the related concepts and techniques. Courses will be taught in English.

Warning

Prior to this course, you need to install Anaconda that is the easiest way to have access to the scientific Python stack on Linux, Windows, or Mac OS X. After installation, make sure you can start a Jupyter notebook from the Anaconda navigator because we'll use it extensively during this course.



Important dates

Mathematical pre-requisites

Date Time Place Topic Tutor
April 5, 2019 9:30-11:30 ED Building, room 30 Linear Algebra Arthur Leblois
April 12, 2019 9:30-11:30 ED Building, room 30 Differential Equations Arthur Leblois
April 26, 2019 9:30-11:30 ED Building, room 30 Signal Processing Arthur Leblois

Programming pre-requisites

Date Time Place Topic Tutor
July 1, 2019 9:00-12:00 ED Building, room 30 Python programming Nicolas Rougier
  14:00-17:00 ED Building, room 30 Numerical Computing Nicolas Rougier

Crash course & Project

Date Time Place Topic Tutor
July 2, 2019 9:00-12:00 ED Building, room 30 Data Exploration Nicolas Rougier & Arthur Leblois
  14:00-17:00 ED Building, room 30 Project (part 1) Nicolas Rougier & Arthur Leblois
July 3, 2019 9:00-12:00 ED Building, room 30 Team work -
  14:00-17:00 ED Building, room 30 Team work -
July 4, 2019 9:00-12:00 ED Building, room 30 Data Processing Nicolas Rougier & Arthur Leblois
  14:00-17:00 ED Building, room 30 Project (part 2) Nicolas Rougier & Arthur Leblois
July 5, 2019 9:00-12:00 ED Building, room 30 Data Analysis Nicolas Rougier & Arthur Leblois
  14:00-17:00 ED Building, room 30 Project (part 3) Nicolas Rougier & Arthur Leblois




Program

A. Mathematical pre-requisites

Linear Algebra

This course will introduce vectors and matrices, how to peform operations such as addition & multiplication on these objects. The correspondence with geometry and the resolution of a system of linear equations will be explained.

See also:


Differential Equations

We'll cover first-order differential equations (that can for example describe the evolution of a membrane potential). We'll see how to analyze and solve such equation.

See also:


Signal Processing

We'll explain first what is the Fourier transform that is ubiquituous in signal processing, what is spectral analysis and how to compute correlation in order to reveal similarity between signals. Instruction on how to install Python on your machine will be given.

See also:




B. Crash course

We'll introduce the Python language, but only the bare minimum necessary for getting started with scientific computing, that is basic types, control flow & functions.

See also:


This lesson will give an overview of NumPy, the core library for performant numerical computing, with support for large, multi-dimensional arrays and matrices, along with a large collection of high-level mathematical functions to operate on these arrays.

See also:


See also:


See also:




C. Project

The goal of the project is to analyze audio recordings of birds such as to discriminate between adults and juveniles. This analysis will be based on the material introduced during the course and you'll have to define some criteria for discrimination and to take care of noisy signals. The objective is to produce a final report detailing your analysis, including images, statistical test and formulas. This report will take the form of a single Jupyer notebook that will be exported to HTML.

The dataset is available from the Zenodo directory.




Copyright notice

This course has been written in March 2019 using

Copyright © 2019 Arthur Leblois & Nicolas P. Rougier – Released under a CC-BY 4.0 International license.
Banner image copyright © Randall Monroe (XKCD #353) – "For the Birds" image copyright © Pixar Studios

About

Program & Material for a Computational Neuroscience Crash Course. Bordeaux (2019).

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 100.0%