Fall Semester 2018
Deep learning is an area within machine learning that deals with algorithms and models that automatically induce multi-level data representations.
In recent years, deep learning and deep networks have significantly improved the state-of-the-art in many application domains such as computer vision, speech recognition, and natural language processing. This class will cover the fundamentals of deep learning and provide a rich set of hands-on tasks and practical projects to familiarize students with this emerging technology.Course Catalogue Info
|06.10.2018||Project description updated.|
|17.09.2018||Happy Semester Start. No class today! Lectures start on 24th.|
|13.07.2018||The webpage for this year's course is online.|
|1||24.09.2018||Introduction & Compositional Models||slides1||Meta-introduction to Tensorflow||slides-ex1.pdf exercise-1.pdf code solution|
|2||01.10.2018||Approximation theory, Rectification & Sigmoid networks||slides2||NO EXERCISE SESSION|
|3||08.10.2018||Feedforward Networks||slides3||Approximation theory, Rectification & Sigmoid networks||exercise-2.pdf solution-2.pdf|
|4||15.10.2018||Backpropagation||slides4||Feedforward Networks||exercise-3.pdf solution-3.pdf|
|6||29.10.2018||Optimization||slides6||CNNs||exercise-5.pdf solution-5.pdf TwoLayerCNN.py train_and_test_MNIST.py TwoLayerCNN_solution.py train_and_test_MNIST_solution.py|
|7||05.11.2018||Optimization 2||slides7||Optimization||exercise-6.pdf solution-6.pdf Optimization.ipynb Optimization-solution.ipynb|
|8||12.11.2018||NLP||slides8||Optimization 2||exercise-7.pdf solution-7.pdf|
|9||19.11.2018||Memory & Attention||slides9||NLP||exercise-8.pdf solution-8.pdf exercise-8.zip glove_model.zip twitter-datasets.zip text_cnn_solution.py word_embedding_solution.ipynb|
|10||26.11.2018||Autoencoders||slides10||Memory & Attention||exercise-9.pdf exercise-9.zip rnn_by_hand.ipynb recurrent_network.ipynb|
|--||03.12.2018||NO CLASS||NO EXERCISE SESSION|
|11||10.12.2018||Density Estimation & Generative Adversarial Models||slides10||Autoencoders||exercise-10.pdf solution-10.pdf mnist-autoencoder-temp.py mnist-autoencoder-temp.ipynb mnist-autoencoder.py mnist-autoencoder.ipynb|
30% of your final grade will be determined by a group project. Form groups of 3-4 students (use piazza if you can't find any teammates). The topic of the project can be freely chosen as long as it has a practical component (code) in the space of deep learning and is of scientific nature (i.e. answering a scientific question rather than pure engineering).
The project grade is composed by 10% of your project proposal grade and by 90% of your final hand-in grade.
Send a project proposal until December 24th 2018 to email@example.com using the subject line [Project Proposal] <your project title> and the following template as body:
Names: <comma separated list of author names>
Nethz: <comma separated list of nethz accounts>
Email: <comma separated list of email addresses>
IDs: <comma separated list of student ID numbers>
attach your proposal as a 1-page PDF (excluding references) to the email.
Proposal Grading. The proposal will be graded in equal weight by the following two criteria: 1.) Clarity of idea, clear description of methods, datasets, procedure, baselines, etc. 2.) Presentation of a literature overview over your chosen task.
Hand in your report as a PDF with a maximum of 5 pages (additional pages can be used for listing references) and hand in your source code and other supplementary material along with a README file explaining the material and explaining how to run your code to reproduce your experiments to https://cmt3.research.microsoft.com/ETHZDL2018 until January 19th, 3PM Pacific Time.
The structure should be:
Describe your problem and state your contributions.
2) Models and Methods
Describe your idea and how it was implemented to solve the problem. Survey the related work, giving credit where credit is due.
Show evidence to support your claims made in the introduction. Compare to baselines / existing work.
Discuss the strengths and weaknesses of your approach, based on the results. Point out the implications of your novel idea on the application concerned.
Summarize your contributions in light of the new results.
Your paper will be graded in equal weights according to the following three criteria:
1) Quality of paper
6.0: Good enough for submission to an international conference.
5.5: Background, method, and experiment are clear. May have minor
issues in one or two sections. Language is good. Scores and baselines are well documented.
5.0: Explanation of work is clear, and the reader is able to identify the novelty of the work. Minor issues in one or two sections. Minor problems with language. Has all the recommended sections in howto-paper.
4.5: Able to identify contribution. Major problems in presentation of results and or ideas and or reproducibility/baselines.
4.0: Hard to identify contribution, but still there. One or two good sections should get students a pass.
3.5: Unable to see novelty. No comparison with any baselines.
2) Execution of idea
6.0: Idea is executed well, everything in the proposal has either been followed or changed according to feedback or a reason is provided why it was altered. The project can go beyond the proposal, guided by results obtained as a consequence of executing it. The experiments done make sense in order to answer the proposed research questions. There are no obvious experiments not done that could greatly increase clarity. The submitted code and other supplementary material is understandable, commented, complete, clean and there is a README file that explains it and describes how to reproduce your results.
Subtractions from this grade will be made if:
- the submitted code is unclear, does not run or experiments cannot be reproduced or there is no description of it
- plans made in the proposal have been severely altered or ignored without provided reason
- experiments done are useless to gain understanding or of unclear nature or obviously useful experiments have been left undone
- comparison to baselines are not done
3) Creativity of solution
6.0: Elegant proposal, either making a useful assumption, studying a particular class of data, or using a novel mathematical fact.
5.5: A non-obvious combination of ideas presented in the course or published in a paper (Depending on the difficulty of that idea).
5.0: A novel idea or combination not explicitly presented in the course.
4.5: An idea mentioned in a published paper with small extensions / changes, but not so trivial to implement.
<=4.0: A trivial idea taken from a published paper.
Compute ResourcesOnce you get feedback on your proposal, you will have access to ETH's Leonhard cluster
To ask a questions, please do not send emails but ask on our forum at piazza. The lecture is 263-3210-00L, you can sign up here. Please post questions there, so others can see them and share in the discussion.
|Head TA||Yannic Kilcher|
Deep Learning, An MIT Press book, Ian Goodfellow, Yoshua Bengio and Aaron Courville