

Mar. 29. A few example questions of the final exam can be found here. The final exam will consist similar (but different) questions.

Mar. 28. Our last course meeting will be on Mar. 29 (Tuesday), 13:45 – 15:45, in room BKIZ U. In this meeting, we will have a quick review of the entire course and show a few example questions for the final exam, followed by Q&A.

All news ...

About
This course is introductory for machine learning to equip students with the basic knowledge and skills for further study and research in machine learning. It introduces the theory/methods of wellestablished machine learning and a few stateoftheart deep learning techniques for processing geospatial data (e.g., point clouds). Students will also gain handson experiences by applying commonly used machine learning techniques to solve practical problems through a series of lab exercises and assignments.
Contents
The topics of this course cover the fundamental of machine learning and deep learning, including:

Introduction to machine learning: the history of machine learning, applications of machine learning, the scope of machine learning, the challenges (e.g., datasets, class imbalance, generalization) in machine learning, the limits and dangers of using machine learning techniques.

Unsupervised learning: kmeans clustering, hierarchical clustering, densitybased clustering.

Supervised learning: knearest neighbors (KNN) and linear regression.

Classification: Bayesian classification, logistic regression, support vector machine (SVM), decision trees, and random forest. We will also discuss data collection and features.

Neural networks: multilayer perceptron (MLP), loss functions, gradient descent.

Deep learning (focusing on CNN): convolution, CNN architecture; practical techniques for training.
Goals
After finishing this course, the students will have gained the theory of commonly used machine learning techniques and the skills to apply them for processing geospatial data. Specifically, the students will be able to:

understand and explain the impact, limits, and dangers of machine learning; give use cases of machine learning for the built environment;

explain the main concepts in machine learning (e.g., regression, classification, unsupervised learning, supervised learning, dimensionality reduction, overfitting, training, validation, crossvalidation, and regularization);

explain the principles of wellestablished unsupervised and supervised machine learning techniques (e.g., clustering, linear regression, logistic regression, SVM, random forest, and neural networks);

collect and preprocess data (e.g., labeling, normalization, feature selection, augmentation, traintest splitting) for applying machine learning techniques;

select and apply the appropriate machine learning method for a specific geospatial data processing task (e.g., object classification and semantic segmentation);

analyze and evaluate the performance of machine learning models.
Assessment
The assessment of this course consists of two (or three) group assignments and the final exam. The final grade will be based on the contribution in doing the assignments and the final exam, breaking down to:

group assignments (40%). All assignments have equal weight in the final grade. It is possible to resubmit your work after incorporating the feedback/suggestions received from the teachers. However, the evaluation of an assignment is mainly based on the first submission. Students who have improved their work may receive a slightly higher grade depending on the significance of the improvement (but no more than 0.5).

final exam (60%). The final exam consists of multiplechoice questions and open questions. Example questions will be given two weeks before the exam.
Both assignments and the final exam have to meet the minimum requirement (i.e., 5.5) to pass the course. A total of 6.0 or above is necessary to pass the course.
Prerequisites
 Proficiency in Python.
All assignments will be in Python (and we will use numpy. If you have a lot of programming experience but in a different language (e.g. C/C++/Matlab/Javascript) you will probably be fine. For those who are not familiar with Python, please check this tutorial. And this is another great tutorial.

Basic linear algebra and calculus.
You should be comfortable understanding matrixvector operations and notation, taking derivatives and gradients.

Basic probability and statistics.
You should know basics of probabilities, gaussian distributions, mean, standard deviation, etc.
Course logistics

Lectures: on campus and also streamed via Zoom. Check here for the Zoom link for each lecture.

Slides, lecture notes, and lecture recordings: slides and lecture notes will be posted here shortly after each lecture. Lecture recordings will be uploaded to BrightSpace, which are unfortunately only accessible to enrolled TU Delft students.

Office hours: Tuesday (13:4515:45), Friday (10:4512:45, 13:4515:45). Course schedule and calendar

Contact: we will also use Discord channels for announcements and all courserelated questions. We highly recommend raising questions on the Discord text channel, so others can also benefit from the Q&A. For external inquiries, emergencies, or personal matters that you don't wish to put in a private post, you can email the teacher(s) or schedule a private meeting (to make an appointment, please indicate a few time slots during the office hours and include a Zoom link).
Lecturers
Copyright @Liangliang Nan. 2022