Course manual 2021/2022

Course content

The main subjects covered in the course will be:

  • Mathematical methods for signal analysis:
    • Linear algebra
  • Calculus:
    • Advanced calculus of real functions
    • Functions of several variables
  • Introduction to dynamical systems:
    • Systems of linear differential equations
  • Programming in MATLAB:
    • From algorithms to programs
    • Performing signal processing and statistics in MATLAB
  • Introduction to programming in Python
  • Spectral analysis:
    • Theory and practice
    • Spectral filtering
    • Introduction to image processing
  • Analysis of neuronal spiking data:
    • Spike sorting
    • Analysis of single neuron and population activity
  • Introduction to artificial neural networks for classification
  • Foundations of information theory, encoding/decoding

Study materials

Literature

  • Material provided by lecturer

  • A short compendium of most of the topics covered during the course can be found in the following book: Wallish et al., Matlab for Neuroscientists (Second Edition), Elsevier

  • The cloud environment SOWISO (https://uva.sowiso.nl/) will be used by students to learn, practice, and assess the mathematical methods and techniques taught in this course

Practical training material

  • Material will be provided by lecturers

Software

  • Matlab, Python

Objectives

  • understand and apply advanced concepts in linear algebra;
  • understand and apply methods and techniques of advanced calculus;
  • formulate, carry out, and write down mathematical computations in a correct way;
  • compute the behavior of systems of linear differential equations;
  • read, interpret and design computer programs in MATLAB and Python;
  • independently develop MATLAB and Python programs to perform simple signal processing routines.
  • combine algorithms to solve a problem and generate a program
  • apply the steps in signal processing pipelines
  • explain and apply the most relevant signal processing techniques for spectral analysis and for the analysis of spiking data;
  • select the most appropriate signal processing techniques for spectral analysis and for the analysis of spiking data;

Teaching methods

  • Lecture
  • Computer lab session/practical training
  • Self-study
  • Working independently on e.g. a project or thesis

Lectures will be used to introduce and discuss concepts and topics related to math, programming and signal analysis.

During computer practicals, students will work on exercises meant to learn the applied skills associated with the taught concepts and methods, and will work on the group assignments.

Self-study will allow students to memorize and better understand the explained topics.

Independent (and group) work will be needed to complete the group assignments.

Learning activities

Activiteit

Aantal uur

Hoorcollege

60

Laptopcollege (supervised + independent)

128

Tentamen 6
Vragenuur 4
Zelfstudie 138
Totaal 28*12 EC 336

  
Weeks 1-3, 5-7:

Hoorcolleges (2 hours per day), Computerpractica (own laptop is required, 2 hours per day with assistance + independent activities) and self-study. During computerpractica, students will work individually on exercises that help get the skills that are needed for the (graded) group assignments. Assignments will be prepared during computerpractica and during self study.

We expect that the course will take place on campus. If this is not possible as a consequence of corona-regulations, most activities will be performed remotely (tools such as Zoom, Discord and Sowiso will be used). Details will be discussed during the introductory lecture and will be posted on Canvas.

Weeks 4, 8:

Self study (preparation for final test, completion of assignments).

Attendance

Programme's requirements concerning attendance (OER-B):

  • Participation in all practical (computer) sessions, field work and seminars in the curriculum is obligatory. Any additional requirements are described per component in the study guide. Here is also described what the possible consequences are of not complying with this obligation.

Additional requirements for this course:

Participation to hoorcolleges and laptopcolleges is compulsory. Students may miss at most 10% of all activities, and any absence needs to be communicated to the course coordinator.

 

Bovenstaande aanwezigheidsplicht geldt ook voor alle 'live' aangeboden online (computer)practica en werkcolleges.

Mocht je wegens persoonlijke omstandigheden (denk hierbij aan ziekte of bijzondere familieomstandigheden) niet kunnen deelnemen aan een verplichte onderwijsbijeenkomst, neem dan direct per e-mail contact op met de vakcoördinator of docent via de gecommuniceerde e-mailadressen. Er wordt dan met je besproken of er mogelijkheden zijn om het onderwijs op een andere wijze te volgen, en zo ja welke.

Ben je langdurig niet in staat om onderwijs te volgen (langer dan 1 week), neem dan ook contact op met de studieadviseur.

NB Covid-19: Houd je te allen tijde aan de RIVM richtlijnen, ook als dit betekent dat je daardoor één of meerdere verplichte onderwijsbijeenkomsten moet missen. Ook hiervoor geldt, neem direct contact op zodat er samen gekeken kan worden naar een oplossing.

Assessment

Item and weight Details

Final grade

0.5 (50%)

Average exam grade

Must be ≥ 5, Mandatory

0.5 (50%)

Deeltoets

Mandatory

0.5 (50%)

Tentamen

Mandatory

0.5 (50%)

Average assignment grade

Must be ≥ 5, Mandatory

1 (50%)

Assignment 1

Mandatory

1 (50%)

Assignment 2

Mandatory

Final grade after retake

0.5 (50%)

Hertentamen

Must be ≥ 5, Mandatory

0.5 (50%)

Average assignment grade

Must be ≥ 5, Mandatory

0.5 (50%)

Assignment 1

Mandatory

0.5 (50%)

Assignment 2

Mandatory

Grading matrices/rubrics and criteria for each of the graded component will be uploaded on Canvas at the beginning of the course.

Assignments will be done in groups of 2/3 students, and will lead to a single group grade. Assignments will be primarily based on the development of MATLAB code. Groups for assignments will be formed at the beginning of the course. About one week after the deadline of an assignment, feedback will be provided by the teaching assistants. Late submissions will not be accepted.

The grade will be made up by the following components:

Assignment 1: 25%

Assignment 2: 25%

Deeltoets: 25%

Tentamen: 25%

In order to be able to pass the course, the average grade for the assignments (assignment 1 + assignment 2) must be >= 5.0 and the average grade for the exams (deeltoets + tentamen) must be >=5.0. The final weighted grade (assignment 1 + assignment 2 + deeltoets + tentamen) must be >=5.5. 

In case the average assignment grade is <5.0, students will have to retake the course the next academic year. In case the average grade for the exams is <5.0, students will have the opportunity to attend the hertentamen.

The hertentamen will combine topics covered in the deeltoets and tentamen and will account for 50% of the course grade. The minimum passing score for the hertentamen is 5.0.

Inspection of assessed work

Contact the course coordinator to make an appointment for inspection.

Assignments

Assignment 1

  • Students will be asked to design a computer program (focused on applications of linear algebra) and implement it into Matlab or Python

Assignment 2

  • Students will be asked to develop a Matlab program to analyze neurophysiological data (local field potentials and spiking activity)

Fraud and plagiarism

The 'Regulations governing fraud and plagiarism for UvA students' applies to this course. This will be monitored carefully. Upon suspicion of fraud or plagiarism the Examinations Board of the programme will be informed. For the 'Regulations governing fraud and plagiarism for UvA students' see: www.student.uva.nl

Course structure

 

Week Day Hoorcollege topic / other activity Hoorcollege lecturer Laptopcollege activities Notes
1 Mon Introduction Olcese Software installation  
  Tue Matlab programming Olcese Exercises (Matlab)  
  Wed Matlab programming Olcese Exercises (Matlab)  
  Thu Linear algebra - vector spaces Heck Exercises (Sowiso)  
  Fri Linear algebra - vector spaces Heck Exercises (Sowiso)  
2 Mon Linear algebra - Systems of linear equations Heck Exercises (Sowiso)  
  Tue Linear algebra - Matrices Heck Exercises (Sowiso) + Assignment 1  
  Wed Linear algebra - Matrices Heck Exercises (Sowiso) + Assignment 1  
  Thu Linear algebra - Eigenvalues Heck Exercises (Sowiso) + Assignment 1  
  Fri Linear algebra - SVD & applications Heck Exercises (Sowiso) + Assignment 1  
3 Mon Python programming Olcese Exercises (Python) + Assignment 1  
  Tue Python programming Olcese Exercises (Python) + Assignment 1  
  Wed Calculus - Multivariate 1 Lucic Exercises (Sowiso) + Assignment 1  
  Thu Calculus - Advanced one-dimensional Lucic Exercises (Sowiso) + Assignment 1  
  Fri Calculus - Multivariate 2 Lucic Exercises (Sowiso) + Assignment 1  
4 Mon     Assignment 1  
  Tue       Deadline for submitting assignment 1 (11.00 a.m.)
  Wed Vragenuur      
  Thu Deeltoets      
  Fri        
5 Mon Spiking data: Single-units Olcese Exercises (Matlab)  
  Tue Spiking data: Spike sorting (PCA) Olcese Exercises (Matlab)  
  Wed Recap on differential equations Heck Exercises (Sowiso + Assignment 2  
  Thu Bifurcations Heck Exercises (Sowiso) + Assignment 2  
  Fri Linear systems of differential equations Heck Exercises (Sowiso) + Assignment 2  
6 Mon Nonlinear differential equations Heck Exercises (on paper) + Assignment 2  
  Tue Applications of differential equations Heck Exercises (on paper) + Assignment 2  
  Wed Fourier analysis 1 Olcese Exercises (on paper) + Assignment 2  
  Thu Fourier analysis 2 Olcese Exercises (on paper) + Assignment 2  
  Fri Spectral filtering 1 Olcese Exercises (Matlab) + Assignment 2  
7 Mon Spectral filtering 2 Olcese Exercises (Matlab) + Assignment 2  
  Tue Phase coherence + image processing Olcese Exercises (Matlab) + Assignment 2  
  Wed Spiking data: Population/information theory Olcese Exercises (Matlab) + Assignment 2  
  Thu Introduction to neural-based classifiers Olcese Exercises (Python) + Assignment 2  
  Fri Research seminar Bosman Assignment 2  
8 Mon     Assignment 2  
  Tue       Deadline for submitting assignment 2 (11.00 a.m.)
  Wed Vragenuur      
  Thu        
  Fri Tentamen      

 

Timetable

The schedule for this course is published on DataNose.

Exit qualifications

Via de Zichtbare Leerlijnen Creator kun je zien aan welke eindtermen de leerdoelen van deze cursus bijdragen en hoe de  vakleerdoelen, leerlijndoelen en eindtermen van de opleiding aan elkaar gekoppeld zijn:

https://datanose.nl/#program[BSc%20PB]/outcomes 

https://datanose.nl/#program[BSc%20PB]/trajectories

Additional information

Knowledge in basic mathematics and statistics is required (trigonometry, differential calculus, complex numbers, probability theory, main statistical tests).

Students are required to have followed at least an introductory course on mathematics (Basis Wiskunde or similar), and on programming in Matlab (e.g. Inleiding Programmeren or similar).

Capacity: Max. 50 students

Processed course evaluations

Last year's course was positively evaluated. We have focused on scheduling lectures in a way that allows students to start working earlier on the assignments, to reduce workload.

Contact information

Coordinator

  • Umberto Olcese

Docenten

Lectures

  • André Heck
  • Conrado Bosman

Teaching assistants

  • Joao Patriota
  • Katinka den Nijs