2019-2020 / SPAT0002-1

Programming techniques, numerical methods and machine learning

Duration

15h Th, 15h Pr

Number of credits

 Master in space sciences (120 ECTS)3 crédits 

Lecturer

Dominique Sluse

Language(s) of instruction

English language

Organisation and examination

Teaching in the second semester

Schedule

Schedule online

Units courses prerequisite and corequisite

Prerequisite or corequisite units are presented within each program

Learning unit contents

This course constitutes a practical introduction to the python language as well as to numerical methods commonly used in astrophysics and space sciences. Moreover, it provides a practical overview of some development tools that are very useful to implement or integrate those methods, and that also may help scientists to achieve their common tasks.
The course is divided into two main parts:


  • The section "Programming" presents an overview of development tools (Shell, IDE, language types and usage, system versioning control of type git), and an introduction to Python language and its main scientific libraries (Numpy / Scipy / Matplotlib / Astropy).
  • The section "Numerical Methods" aims at introducing students with a large variety of numerical methods. Depending of the students interests and needs, several topics among the following will be studied: numerical methods of statistical classical or frequentist inference (i.e. Maximum Likelihood Estimation, confidence interval via Jackknife and bootstrapping, hypothesis test), Baysian statistical inference (MCMC for confidence interval estimation, model selection), general principles of neural network and machine learning (supervised, unsupervised). The presentation of those methods will take place together with actual problems and examples.
 

Learning outcomes of the learning unit

  • Understand the basic principles of a large variety of numerical methods currently used in space and astrophysical sciences.
  • Implementing a numerical solution and all the operations related to its execution and/or the exploitation of the results (input/output, visualization, etc).
  • Follow good practices in terms of project development and programing (lisibility, reproductibility, ...)

Prerequisite knowledge and skills

The student is expected to masterize basic programming concepts (such as loops, conditional loops, function, concept of object, ...) as covered by the lecture "Introduction à la programmation (INFO0201-1)". A basic knowledge of statistics (probability calculation, conditional probabilities, concept of Bayesian inference) as covered by a lecture such as "Statistique des données expérimentales de la physique STAT0064-3" is also mandatory.

Planned learning activities and teaching methods

The course materials include Jupyter notebooks (http://jupyter.org) that contain, in addition to the theory, examples and small intereactive exercises that provide the students with a direct experience of the methods and concepts presented during the lecture. The practical classes are dedicated to the study of more advanced problems with the help of Python libraries that implement several of the algorithms teached during the lecture.

Mode of delivery (face-to-face ; distance-learning)

The lecture will be of 3h/week during Q2.

Recommended or required readings

The lecture will be based on the following book as well as on various notebooks and existing online material:  

Other useful references will be provided to the students during the lectures.

Assessment methods and criteria

Evaluation will be based upon

  • A written (notebook) + oral exam;
  • and/or the realization and presentation of a research and programming project (individually or in small groups)

Work placement(s)

Organizational remarks

Contacts

Dominique Sluse University of Liège Institut d'Astrophysique et de Géophysique (B5c build.) 17, allée du Six-Août B-4000 Liège Tél.: (+32) (4) 366 9797  (D. Sluse)
eMail: dsluse@uliege.be

Adaptation of teaching commitments following the COVID-19 pandemic for the May-June 2020 session

Teaching methods implemented : distance-learning

The notebooks used for the lecture have been enriched for an improved offline learning. Occasionally, some videos completing the most theoretical aspects  are provided. The lecturer is available to answer question via a teleconferencing application Lifesize during the whole time-slot originally booked for the lecture. The lecturer remains available to answer questions outside those time-slots, via email, or teleconference. A version of the notebooks including the solutions to the exercises is available after each lecture on the github-repository https://github.com/SPAT0002-1/Ongoing.

Assessment subjects

All the topics covered during the lecture will be evaluated.

Assessment methods

The evaluation will be in two parts: First, a (long) exercise in form of a notebook will have to be solved by the student. The student will receive the (jupyter) notebook containing the question to be solved via email and will have 2h to complete it, and send it back by email. Second, a video call (the student does not need a working camera but needs to be able to visualise the teacher's screen) will take place after the written exam. The student will have 30 mins to explain his solution, and answer questions from the lecturer.

Contacts

dsluse@uliege.be
Lifesize room: 707577

Adaptation of teaching commitments following the COVID-19 pandemic for the Aug-Sept 2020 session

Assessment subjects

All the topics covered during the lecture will be evaluated. The sections that have not been covered have been explicitly flagged inside the notebooks and in the index file (index.ipynb).

Assessment methods

The evaluation will be in two parts: First, a (long) exercise in form of a notebook will have to be solved by the student. The student will receive the (jupyter) notebook containing the question to be solved via email and will have 2h to complete it, and send it back by email. Second, a video call (the student does not need a working camera but needs to be able to visualise the teacher's screen) will take place after the written exam. The student will have 30 mins to explain his solution, and answer questions from the lecturer.

Contacts

dsluse@uliege.be Phone: 043669797 Lifesize room: 707577

Items online

Notebooks used for the Lecture SPAT-0002
Jupyter notebooks used during the lectures (archives 2018-2019 + Ongoing)

Complementary support: 'Statistics, Data Mining and Machine Learning in Astronomy', Ivezic, Connolly, VanderPlas, and Gray, 2012 (Princeton University Press) (http://www.astroml.org/)