Jan van Gemert

Doing a MSc thesis at Delft University of Technology (TU Delft) in Computer Vision / Deep learning

I try to give MSc students a sense of doing real, cutting edge research and I have published in top venues based on a MSc thesis.
I exclusively supervise MSc thesis topics on visual data (images, video), and I do fundamental research, which means that I focus on understanding underlying concepts and a bit less on specific applications.

First meeting.
For our first meeting, please have a look at the following points and prepare accordingly:

  • Background: Show me that you have good grades for: 1. Deep Learning; and 2. Computer Vision by Deep Learning. Additional Machine Learning, Graphics, or Image Processing courses will be appreciated.
  • Information: I will need your first name, last name, email address, name of your MSc program, formal thesis starting date, expected graduation date, netID, and student number.
  • Mare: Sign up your MSc thesis in MARE (do this as soon as possible).
  • Brightspace: Sign up for the MSc CS Thesis project EEMCS in Brightspace.
  • Planning: Planning is part of your final grade and you are responsible for making sure that you graduate on time. Add a text file to the 'notes' folder on the git with the name: "planning.txt" with a planning time line (give the expected dates) of when required forms, committee meetings, milestones, green light moments, etc., are due. Note that I cannot keep track of each step for all students, so, please do not depend on me and plan this for yourself. The information can be found on Brighspace and Mare
  • Git: Create a git project named 'mscYourName' with 3 folders: 'code' (for your code), 'thesis' (for your latex files), 'notes' (for our agreements). If a repo does not exist for you already, send an email to eip-ewi at tudelft dot nl to let them create a TU Delft gitlab repository for you, and mention that you are my MSc thesis student.
  • Committee: For your thesis committee graduation we need at least 1 member outside of the PRB section. At our first meeting, please suggest 2 potential EWI faculty members outside PRB to be on your committee. You can find potential committee members on the "people" sections of the TUD computer science webpages, or it can be faculty members where you enjoyed their courses or have had contact with before. Note: it has to a faculty member from EWI.
  • Saskia: After we had our first meeting: send an email to Saskia Peters: S.Peters at tudelft dot nl to let her know your starting date and that you will start your MSc thesis with me and ask her for an account on our GPU cluster.
Thesis start.
Things to do when you start your thesis:

  • Mattermost: Sign up for our Mattermost and join the public "CV-lab-MSCthesis" channel. You can use this channel to get in contact with other MSc students. Writing a thesis is very individual, so please use this opportunity to meet/discuss with other students in a similar situation.
  • Mandatory student meetings: Every 2 weeks we have scheduled MSc student presentations from the PRB section (schedule). You are required to present a few times (follow my presentation guidelines.) and you have to attend at least 10x, if you cannot make it send an email to Saskia Peters (S.Peters@tudelft.nl). The benefit for you is that you can practice your presentation a few times before your final defense and that you get feedback and insight in what others are doing. If you have questions about this, please ask Saskia (S.Peters@tudelft.nl)
  • GPU cluster: Please inform yourself about how to use our compute cluster.
  • Cluster folder: On the cluster, please create a folder with your name in "/tudelft.net/staff-umbrella/StudentsCVlab/" and use it for your experiments; this is not a safe place to store original source code: Make sure all important code is backed up in your git. Please avoid using many small files, as this slows down access and clogs the file system (limited nr of inodes). Check for common datasets in "/tudelft.net/staff-bulk/ewi/insy/CV-DataSets". If you use conda, do "conda clean --all" after installing. Please regularly remove things you no longer need.
  • Research: Read my research guidelines.
During your thesis.
Things to keep in mind when you are doing your thesis research:

  • Green light: The green-light moment is when your (co)supervisor(s) agree that you have enough results to graduate. This means that the main research questions have been answered. Yet, there are possibly more things to try, and more text to write. When we believe that the main results will no longer change, that is "green light". To determine "green light", you should be able to answer the "Graduation questions" written at the bottom of this document.
  • Training: Are you training deep networks? Unfortunately, significant time goes to tuning hyper-parameters, please be prepared to follow A Recipe for Training Neural Networks
  • Co-supervisor: If you have a co-supervisor: Meet them individually each week.
  • When to meet me: Meet me whenever it is useful for you. This could for example be when you want to brainstorm, are unsure about something, need to make an informed descision about which direction to go, etc. If you need to, we can meet every week, or, if you don't need to, then we can meet after 3 weeks: plan it whenever it is useful for you, so if you want to meet me just to update me of your progress, then it might not be very useful for you and you can consider to postpone the meeting. Please keep in mind that you are responsible for scheduling meetings and your own progress.
  • How to meet me: Invite your co-supervisor for each meeting and schedule yourself for a slot online.
  • Please try to keep presentations short so that there is enough time to interact.
  • What to discuss with me: Start with a short presentation taking no longer than half of the scheduled time. The first slide should be the current "high level story line", for what a "story line" is, please refer to my Research paper template. This story line makes sure that we are all still aware of the topic and direction, which is important as the direction (and thus the story line) will change over time. Slide 2: Quick reminder of what part of the story line you will now present, and possibly any agreements that we made last time. Remaining slides are for content. Put the answer to the typical questions I ask on each slide, if relevant. If you present results, make sure to explicitly write down all conclusions you draw from these results on the slide.
  • Update: Do not forget to keep everything in your git up to date
  • Stuck?: Whenever you are stuck: First re-read my guidelines, especially the typical questions I ask, as you can try to ask them yourself.
Thesis report.
The core of your MSc Thesis report is a scientific article so that you practice writing an article, and that the research is easy to submit for publication (if the work lends itself for that).

A scientific article is aimed at fellow experts in your research topic. Yet, your thesis should be understandable by a broader audience of knowledgeable non-experts. Thus, in your thesis report you should add the relevant context that allows the scientific article to be read by non-experts. As a rule of thumb for who your non-expert target audience is: Structure your report so that any fellow MSc student from your MSc program can follow it.

This means your thesis report will need three parts:
  • Part 1: Small introduction chapter: The goal of this small chapter is to make the full report readable for a non-expert. Thus, you explain the structure (thesis = article+background) and briefly explain the "high level story line", in such a way that a non-expert can understand it. Mention that part 2 is a scientific article, and mention which technical background sections are found in part 3, and how these sections in part 3 relate to part 2. This small chapter can be short, maybe even a single page, but a few more pages is fine too.
  • Part 2: Scientific article: Preferably in double column CVPR-style Latex format. This is written in the same style as a publication in the field.
  • Part 3: Any supplemental materials: Technical explanations of core concepts used in the scientific article of part 2. These explanations should make it possible for a non-expert to understand the technical side of the scientific article in part 2.
For the writing: follow my writing guidelines.

Make sure that your thesis answers the questions that are typically asked in a thesis defense (see below)

Defense.
The formal requirements (forms, timeline, green-light moment, etc.) vary per faculty. You are responsible for managing these requirements. Please reserve 2 hours for the defense.

The procedure during the defense is approximately as follows:
  • You give a presentation of around 20 minutes (follow my presentation guidelines.) The presentation time is short on purpose: we wish to assess how well you can extract the essentials of your work.
  • Some questions from the audience.
  • Detailed questions from the committee members.
  • The committee retreats and decides on a weighted grade, based on this matrix.
  • The committee motivates the grade to the candidate privately.
  • The diploma ceremony proceeds in public.
Graduation questions.
Some questions you may expect during your defense, and which thus should also be answered in your thesis and at your Green-Light moment, are:
  • What is "scientific" about your work? (ie: what is interesting about it for other researchers?; what have we now learned?).
  • Can you explain *why* this effect happens? Do you have evidence for this?
  • How can we be sure that your explanation is true? Are you "confusing explanation with speculation" (see: Troubling Trends in Machine Learning Scholarship)
  • How can we be sure that the improved accuracy comes from what you claim: "failure to identify the sources of empirical gains" (see: Troubling Trends in Machine Learning Scholarship). Note that improved accuracy is nice, but the scientific interest is the detailed, well-motivated, well-investigated, answer to "why does it improve?".
  • When will your method fail? What assumptions does it make? In which cases will your approach not work, and in which cases will it work well?
  • Did you look at your results? So not just the numbers, but what do you see when you look at the output on individual samples? For some samples the results improve, and for others the results decrease, are there any explainable patterns for the improving/decreasing samples? Can you quantify this?
  • Why did you use this particular evaluation measure? Its nice that others use this, but is this evaluation measure the best choice for what you want to know? And why?
  • In your article you use the term XXX; what does this mean?
  • Your system has several modules; How well does each module perform? Are all modules needed? Can't we remove module XXX? (ie: you need to do an ablation study to answer these questions)
  • If you would have to start again, with the knowledge you have now, what would you have done differently?

Valid XHTML 1.0 Transitional
Valid CSS!