nl en

Introduction to Neural Computing


Admission requirements

The prerequisites include basic linear algebra (e.g., vector space and matrix operations), calculus (mainly differentiation), and Python programming. No background of machine learning or aritificial intelligence is required.


Neural computation and neural networks (NNs) are biologically inspired computation models, which have been extensively used to solve enormous challenging problems/tasks, e.g., image classification, machine translation, and time-series forecasting. Taking its in the computational neuroscience, the neural network accomplishes such tasks by mimicking the way how information are processed in our brains.

This course aims to provide a concise but rigorous overview over the whole field with focus on explaining the fundamental principle that empowers NNs, as well as diving into some widely-applied NN models, e.g., the well-known multi-layer feedforwad network and the long short-term memory. On the practical side, various examples and coding exercises will also be provided to the students.

  1. Introduction and Biological Background
  2. Multi-layer Perceptron
  3. Back-propagation
  4. Recurrent Neural Network
  5. Convolutional Neural Network
  6. Advanced topics

Course objectives

The course gives a comprehensive overview of the field with a series of lectures and programming exercises. Provided that the students have gained some experiences on the exercises, we will provide a practical assignment on implementing and training the NNs, which will also help deepen the understanding of the field.

  • Understand the fundamental principles of neural computation.

  • Learn the major neural network models, e.g., convolutional and recurrent NNs.

  • Practice implementing the NN models with PyTorch.

  • Get familiar with the computational tasks that are commonly tackled by NNs, e.g., image classification.


The most recent timetable can be found at the Computer Science (MSc) student website.

You will find the timetables for all courses and degree programmes of Leiden University in the tool MyTimetable (login). Any teaching activities that you have sucessfully registered for in MyStudymap will automatically be displayed in MyTimetable. Any timetables that you add manually, will be saved and automatically displayed the next time you sign in.

MyTimetable allows you to integrate your timetable with your calendar apps such as Outlook, Google Calendar, Apple Calendar and other calendar apps on your smartphone. Any timetable changes will be automatically synced with your calendar. If you wish, you can also receive an email notification of the change. You can turn notifications on in ‘Settings’ (after login).

For more information, watch the video or go the the 'help-page' in MyTimetable. Pleas note: Joint Degree students Leiden/Delft have to merge their two different timetables into one. This video explains how to do this.

Mode of instruction

Lectures and practical assignment sessions.

Hours of Study: 114 (= 6 EC)
Lectures: 26
Programming exercises: 10
Practical work: 48
Exam and preparation: 30

Assessment method

The final grade is a combination of grades for (1) the written exam (70%) and (2) the practical assignment (30%).

Reading List

The following ilteratures are recommended but not mandatory for the course:

  • Goodfellow, Ian, Yoshua Bengio, and Aaron Courville. Deep learning. MIT press, 2016.

  • MacKay, David JC, and David JC Mac Kay. Information theory, inference and learning algorithms. Cambridge university press, 2003. (Only Chapter 5 is relevant to the course. This is very good in the learning theory, which contains various advanced and insightful discussions)

  • Hertz, John, Anders Krogh, and Richard G. Palmer. Introduction to the theory of neural computation. CRC Press, 2018. (This is an old reference, but really concise and classic. You might find this one quite technical to read)


From the academic year 2022-2023 on every student has to register for courses with the new enrollment tool MyStudymap. There are two registration periods per year: registration for the fall semester opens in July and registration for the spring semester opens in December. Please see this page for more information.

Please note that it is compulsory to both preregister and confirm your participation for every exam and retake. Not being registered for a course means that you are not allowed to participate in the final exam of the course. Confirming your exam participation is possible until ten days before the exam.
Extensive FAQ on MyStudymap can be found here.


Lecturers: dr. Hao Wang
Website: See course page on Brightspace.


Not applicable.