Git Product home page Git Product logo

precourse's Introduction

Prerequisites and preparatory materials

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!

Preparing yourself for the course

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.

Programming

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 will be updating our 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 - we will reach out when it is updated.

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.

Math skills

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 (more details will be forthcoming). 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".

Neuroscience

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.

precourse's People

Contributors

kbonnen avatar patrickmineault avatar gunnarblohm avatar ebatty avatar titipata avatar fedeclaudi avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.