Welcome to the Neuromatch Academy! We're really excited to bring computational neuroscience to such a wide and varied audience. We're preparing an amazing set of lectures and tutorials for you!
People are coming to this course from a wide range of disciplines and with varying levels of background, and we want to make sure everybody is able to follow and enjoy the school from day 1. This means you need to know the basics of programming in Python, some core math concepts, and some exposure to neuroscience. Below we provide more details.
This course will be run using Python. If you've never programmed in Python, now is a good time to start practicing! We expect students to be familiar with variables, lists, dicts, the numpy and scipy libraries as well as plotting in matplotlib. Practice a little bit every day and you'll be in great shape by the time the class starts.
We have NMA Python workshop materials (W0D1 and W0D2 here). You will be able to go through this NMA-made content at your own pace before the course.
Besides these NMA materials, we recommend the Software carpentry 1-day Python tutorial or the free Edx course Using Python for Research. For a more in-depth intro, see the scipy lecture notes. Finally, you can follow the Python data science handbook, which also has a print edition.
If you're coming from a Matlab background, you can quickly get up to speed with this cheatsheet. You may also enjoy this paperback on Neural Data Science with both Matlab and Python versions.
Computational neuroscience and neural data analysis relies on linear algebra, probability, basic statistics, and calculus (derivates and ODEs).
We will have an optional 3 day math pre-reqs refresher course covering these topics on June 30th, July 1st, and July 2nd. You can of course also go through the provided material at your own pace. This is a lot of math to learn in just 3 days so we expect you to study on your own before and after if you are not familiar with the topics.
Linear algebra: You will need a good grasp of linear algebra to follow along, as linear algebra is crucial for almost anything quantitative involving more than one number at a time. You need to know vector and matrix addition and multiplication, rank, bases, determinants, inverses, and eigenvalue decomposition. We highly recommend this beautiful lecture series. Another great resource is Khan academy. Here is a series of exercises on linear algebra in Python.
Statistics: Understanding statistics is also important; you should be comfortable with means and variances, and the normal distribution. For a refresher, we recommend selective readings (i.e. chapters 6-7 from Russ Poldrack's book "Statistical thinking of the 21st century".
Calculus: Finally, basic calculus is crucial; you should know what integrals and derivatives are, and understand what a differential equation means. If you need to refresh your memory on differential and integral calculus, Gilbert Strang's book is a good refreshment book. For differential equations, we recommend studying chapter 0-1 (including exercises!) of Jiri Lebl's book "Differential equations for engineers".
If you're coming from outside neuroscience, it'll be great to familiarize yourself with fundamental concepts. We will be releasing an NMA Neuroscience Video Series covering basics, with a special focus on neural data types. Here is a short read on the subject. Here is another resource from the Brain Facts book by Society For Neuroscience.
We're so excited to have you here! Looking forward to meeting you soon,
The Neuromatch Academy team.