Skip to content

Latest commit

 

History

History
30 lines (17 loc) · 2.98 KB

README.md

File metadata and controls

30 lines (17 loc) · 2.98 KB

Computer Vision Scientist Task

Introduction

Hi there! As part of the application process we would kindly ask you to complete this task. First, a coding task where you have to complete the script we have provided (see autoencoder.py). The second task is to show us your thinking, by answering questions below about how you could optimise the hyper-parameters of the autoencoder as well as some more general questions – please use citations to the relevant literature when appropriate.

Some of the questions asked are deliberately left slightly vague in their formulation, and it's left up to you to interpret them as you think best.

In total, this task should take you around 2-3 hours to complete.

You should hand in a markdown text file containing your written answers, and a copy of the source code that can be reproduced on another machine so that your answers can be checked by running the test code within it.

Autoencoder task

For the autoencoder task you will find most of the information in the docstrings of the file, complete the code and when you run it you should get a message saying that you succeeded! Do study the test function, it will help you complete the task.

Questions related to the autoencoder task

  1. In the coding task you were asked to write some code for the autoencoder. Generally, we can try many combinations of reconstruction loss, regularisation strength, number of layers, (etc) and figure out which set of parameters lead to the most natural images generated by the auto-encoder. Tell us how you could automate this hyper-parameter selection process? What are the downsides of the proposed method?
  2. In a remote sensing application, give one or two examples where an autoencoder like this could be a helpful tool.
  3. How would you propose to implement the autoencoder (including your choice of neural network architecture, loss function, regularisation, training and validation strategy etc.) in order to better suit the remote sensing setting?

Other Questions

  1. Computer vision is a very active field, and many of the techniques being developed are highly transferrable from classifying cats and dogs all the way to self-driving cars. But specific domains of application often bring specific concerns that make the generic algorithms inappropriate, or at least require some additional thought. In your experience, what is special about remote sensing data that makes it different from classifying cats and dogs?
  2. What is the most exciting computer vision paper that you have read recently? Why did you find it interesting? Did you have any criticisms of the work? Could the ideas in the paper be applied in a remote sensing setting?

Note on confidentiality

There are no trade secrets in this technical task, but please do not publish your results publicly (for example through a public github repo). If future candidates for similar roles can search and find answers to these questions, it will bias results and make it harder for the best candidates to be successful.