Code Monkey home page Code Monkey logo

deep_learning's Introduction

Deep Learning

Contents:

  1. Description
  2. Learning Outcomes
  3. Logistics
    1. Course Contacts
    2. Course Materials
    3. Technology Requirements
    4. Classes
    5. Tutorial
  4. Class Schedule
  5. Grading Scheme
    1. Assignments
    2. Notebook Completion
    3. Participation
  6. Acknowledgements

Description

This Deep Learning course offers both fundamental understanding and practical skills necessary to develop, implement, test, and validate various deep learning models. The curriculum delves into the core concepts of Deep Learning, emphasizing its application across diverse domains. Students will explore the intricacies of neural networks, backpropagation, and the advanced architectures used in image processing, natural language processing, and more.

Learning Outcomes

By the end of this Deep Learning course, students will:

  1. Understand and apply principles of neural networks, including architectures like CNNs and RNNs.
  2. Implement deep learning models for tasks in image processing, NLP, and recommendation systems.
  3. Utilize advanced techniques such as sequence-to-sequence models and attention mechanisms.
  4. Address challenges in model training, imbalanced classification, and metric learning.
  5. Gain proficiency in Keras and TensorFlow, emphasizing reproducible research.
  6. Acknowledge ethical implications of deep learning models and communicate these effectively to diverse audiences.

Logistics

Course Contacts

Course Materials

This course's materials are adapted from the Deep Learning course taught at Master Year 2 Data Science IP-Paris. The course includes comprehensive lectures and lab notebooks covering fundamental and advanced topics in Deep Learning. While there is no designated textbook for this course, the adapted materials provide a thorough exploration of the subject, incorporating a blend of theoretical knowledge and practical applications.

Technology Requirements

Our course uses Zoom for synchronous lectures and tutorials. For practical components, we focus on Python and Jupyter Notebooks. We recommend using Google Colab for these sections, which will be the main platform for support and troubleshooting. However, students have the flexibility to run notebooks on alternative services or their own computers.

Classes

The course spans three weeks with a total of ten classes, each from 6 PM to 8:30 PM EST. Below is the class schedule formatted as a table:

Week Dates Days of the Week
1 Starting 29th Jan Monday, Tuesday, Wednesday, Thursday
2 Starting 5th Feb Monday, Tuesday, Wednesday
3 Starting 12th Feb Tuesday, Wednesday, Thursday

Classes will include lectures using prepared slides and live coding sessions. All slides will be accessible online prior to lectures. Students should actively participate in coding alongside the instructor in real-time and are encouraged to ask questions.

Tutorial

Tutorial sessions are on the same date as each class. Tutorials will take place 30 minutes before and after each session. Tutorial attendance is optional, and organization is unstructured. The tutorial is the best place for questions/issues pertaining to software, homework, and assignments.

Class Schedule

Class Topics

Class Date Topic Slides Workbooks Suggested Additional Material
1 Monday, 29th Jan Introduction to Deep Learning Lecture 1 Slides Lab 1 Workbook
2 Tuesday, 30th Jan Neural Networks and Backpropagation Lecture 2 Slides Lab 2 Workbook 3Blue1Brown Neural Networks - Approx 1 hour
3 Wednesday, 31st Jan Embeddings and Recommender Systems Lecture 3 Slides Lab 3 Workbook
4 Thursday, 1st Feb Convolutional Neural Networks for Image Classification Lecture 4 Slides Lab 4 Workbook
5 Monday, 5th Feb Deep Learning for Object Detection and Image Segmentation Lecture 5 Slides
6 Tuesday, 6th Feb Recurrent Neural Networks and NLP Lecture 6 Slides
7 Wednesday, 7th Feb Guest Lecture - Eddie Kim, Cohere AI
8 Tuesday, 13th Feb Sequence to sequence, attention and memory Lecture 8 Slides
9 Wednesday, 14th Feb Imbalanced classification and metric learning Lecture 9 Slides
10 Thursday, 15th Feb Unsupervised Deep Learning and Generative models Lecture 10 Slides

Grading Scheme

The grading for this course is based on two components: assignments and class participation, including the completion of Jupyter notebooks. The grading scheme is as follows:

Assessment Number Individual Weight Cumulative Weight
Assignments 2 35% 70%
Jupyter Notebooks 10 2% 20%
Participation NA NA 10%
  • Assignments consist of two major tasks completed at the end of the first two weeks.
  • Jupyter Notebooks are to be completed throughout the course. Completion of these notebooks is pass/fail.
  • Participation includes engagement in class discussions, activities, and overall contribution to the course environment.

Assignments

Assignments are a vital part of this course, focusing on the application of deep learning concepts. Two main assignments are scheduled, one at the end of each of the first two weeks. These assignments will be introduced in class and can be discussed with the instructor or TA during office hours or via email. They should be completed independently and submitted through the designated Google Forms links, following the naming convention firstname_lastname_a#. Please request extensions well in advance.

Assessment Link Due Date Submission Link
Assignment 1 Open in Colab Sunday, 4th February, by 11:59:59 PM EST Submit Here
Assignment 2 Week 2 Topics Monday, 12th February, by 11:59:59 PM EST [Link to be added]

You may submit assignments multiple times before the deadline. The last submission will be graded.

Notebook Completion

Students are expected to complete the Jupyter notebooks associated with each class. Completion includes actively coding along with the instructor and answering any questions in the notebooks. These notebooks are due by the end of the course, but it is highly recommended to complete them as you progress through the material to stay on top of the content. Notebooks are to be submitted for pass/fail grading.

Submitting Notebooks

Notebooks are to be submitted together at the end of the course. To submit, please follow these steps:

  1. Create a folder named firstname_lastname_notebooks and place all completed notebooks inside.
  2. Compress the folder into a .zip file.
  3. Upload the .zip file to [Link to be added].

You may submit notebooks multiple times before the deadline. The last submission will be graded.

Note: If any content in the assignments or notebooks is related to topics not covered in class due to schedule changes, those parts will be excluded from grading. Such exclusions will be clearly communicated before the assignment due date.

Participation

We hope all members in the course regularly participate. We define participation broadly, and include attendance, asking questions, answering others' questions, participating in discussions, etc.

Acknowledgements

This course was developed by Alex Olson, under supervision from Rohan Alexander and Curtis Norman. The original content and structure of the course are adapted from the Deep Learning course taught at Master Year 2 Data Science IP-Paris, built and maintained by Olivier Grisel and Charles Ollion.

deep_learning's People

Contributors

bradfora avatar rohanalexander avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.