• Stars
    star
    196
  • Rank 197,353 (Top 4 %)
  • Language
    Jupyter Notebook
  • Created over 5 years ago
  • Updated almost 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Course "Theories of Deep Learning"

TDL logo

This is a GitHub page of Theoretical Deep Learning course held by Neural Networks and Deep Learning Lab., MIPT. The working language of this course is Russian.

The second part: there is a second part of this course devoted to generalization ability. The first part of this course is NOT a prerequisite for the second part.

Location: Moscow Institute of Physics and Technology, Phystech.Bio building, room 512 ФИЗТЕХ.ЦИФРА building, room 5-6 room 5-19 room 5-22.

Time: Friday, 10:45, starting from 15th of February, 2019.

Videos are available here.

Lecture slides, homework assignments and videos will appear in this repo and will be available for everyone. However, we can guarantee that we will check your homework only if you are a MIPT student.

For MIPT students: in the case you want to take this course into your personal syllabus, the real name of the course is: "Теоретический анализ подходов глубокого обучения".

Further announcements will be in our Telegram chat: https://t.me/joinchat/D_ljjxJHIrD8IuFvfqVLPw

Syllabus:

This syllabus is not final and may change. The order of topics will change with high probability.

  1. 15.02.2019 Introduction. Loss landscape of linear networks.

  2. 22.02.2019 Loss landscape of linear networks.

  3. 1.03.2019 Loss landscape of linear res-nets. Loss landscape of wide, but shallow sigmoid nets.

  4. 8.03.2019 No class.

  5. 15.03.2019 Loss landscape of deep and wide sigmoid nets.

  6. 22.03.2019 Spin-glass model. Elimination of local minima.

  7. 29.03.2019 GD almost surely converges to local minima. Noisy GD converges to local minima for any initialization. Cancelled.

  8. 5.04.2019 General convergence guarantees for GD and its variants.

  9. 12.04.2019 GD dynamics on wide shallow ReLU nets.

  10. 19.04.2019 (Ivan Skorokodov) The information bottleneck method. Part 1.

  11. 26.04.2019 (Ivan Skorokodov) The information bottleneck method. Part 2.

  12. 3.05.2019 No class.

  13. 10.05.2019 No class.

  14. 17.05.2019 Neural nets in the limit of infinite width. Homework solution demonstration.

Prerequisites:

  • Basic calculus / probability / linear algebra (matrix differentiation, SVD, eigenvalues, eigenvectors, Hessian, Markov's inequality)
  • Labs are given as jupyter notebooks
  • We use python3; need familiriaty with numpy, pytorch, matplotlib
  • Some experience in DL (not the first time of learning MNIST, familiarity with such words as BatchNorm, ResNet, Dropout)
  • Labs are possible to do on CPU, but it can take quite a long time to train (~1-2 days).

Grading:

This course will contain one lab and four theoretical assignments. There also will be an oral exam (in the form of interview) at the end of the course.

Let p_{hw} = "your points for homeworks" / "total possible points for homeworks (excluding extra points)". Define p_{exam} analogously.

Your final grade will be computed as follows: grade = min(10, p_{hw} * k_{hw} + p_{exam} * k_{exam}), where the coefficents are:

  • k_{hw} = 8
  • k_{exam} = 4

This numbers are not final and can change slightly.

The deadlines for all assignments are computed as follows: "the day, when the assignments appear at this page, 23:59 Moscow time" + 3 weeks. All deadlines are strict.

All homework assignments will appear not more often than once a week.

Send your homeworks to [email protected]

E-mails should be named as "Lab or theory" + "number" + "-" + "Your Name and Surname"

Current grades live here.

Exam (actually, zachet with grade) will take place at zachet week. Exam syllabus live here.

Homeworks:

The first theoretical assignment is out! Deadline: 16.03.2019 23:59 Moscow time.

The first lab assignment is out! Deadline: 30.03.2019 23:59 Moscow time.

The second theoretical assignment is out! Deadline: 16.04.2019 23:59 Moscow time.

The third theoretical assignment is out! Deadline: 13.05.2019 23:59 Moscow time.

The fourth theoretical assignment is out! Deadline: 21.05.2019 23:59 Moscow time.

Theoretical assignments live here. Labs live here.

Course staff:

  • Eugene Golikov - course admin, lectures, homeworks
  • Ivan Skorokhodov - homework review and beta-test, lecture about information bottleneck, off-screen comments

We also thank Mikhail Arkhipov for gingerbread operating.

This course is dedicated to the memory of Maksim Kretov | 30.12.1986 - 13.02.2019, without whom this course would have never been created.

More Repositories

1

DeepPavlov

An open source library for deep learning end-to-end dialog systems and chatbots.
Python
6,646
star
2

ner

Named Entity Recognition
Python
328
star
3

question_generation

It is a question-generator model. It takes text and an answer as input and outputs a question.
Python
173
star
4

dream

DeepPavlov Dream is a free, open-source Multiskill AI Assistant Platform built using DeepPavlov Conversational AI Stack. It is built on top of DeepPavlov Agent running as container in Docker. It runs on x86_64 machines, and prefers having NVIDIA GPUs on the machine.
Python
168
star
5

deep-nlp-seminars

Materials for deep NLP course
Jupyter Notebook
118
star
6

dlschl

Jupyter Notebook
109
star
7

intent_classifier

Python
83
star
8

Slavic-BERT-NER

Shared BERT model for 4 languages of Bulgarian, Czech, Polish and Russian. Slavic NER model.
Python
72
star
9

dp_notebooks

Jupyter Notebook
63
star
10

dp-agent

DeepPavlov Agent
Python
63
star
11

ru_sentence_tokenizer

A simple and fast rule-based sentence segmentation. Tested on OpenCorpora and SynTagRus datasets.
Python
52
star
12

ConvAI-baseline

ConvAI baseline solution
Python
51
star
13

tdl2

Theoretical Deep Learning: generalization ability
Jupyter Notebook
46
star
14

dp_tutorials

Jupyter Notebook
31
star
15

chatsky

Chatsky is a free and open-source software stack for creating chatbots, released under the terms of Apache License 2.0.
Python
31
star
16

deep-rl-seminars

Materials for Deep RL seminars.
Jupyter Notebook
29
star
17

kpi2017

Open Source framework for developing Dialog Agents
Python
20
star
18

dialog_flow_engine

Dialog Flow Engine (DFE) allows you to write conversational services. The service is written by defining a special dialog graph that describes the behavior of the dialog service. The dialog graph contains the dialog script. DFE offers a specialized language (DSL) for quickly writing dialog graphs. You can use it in such services for writing skills for Amazon Alexa and etc, chat-bots for social networks, websites call-centers and etc.
Python
18
star
19

dialog_flow_framework_info

This repository can help to navigate DeepPavlov Dialog Flow Framework projects. Dialog Flow Framework is a free and open-source software stack for creating chatbots, released under the terms of Apache License 2.0.
15
star
20

dp-dream-demos

Most basic AI Assistant demo derived from the DeepPavlov Dream AI Assistant.
Python
13
star
21

dl-frameworks-course

Jupyter Notebook
13
star
22

expected_bleu

Differentiable lower bound for BLEU score.
Jupyter Notebook
12
star
23

NLPCourseBot

Telegram-bot for NLP/RL courses
Python
12
star
24

hcn-dialogue-manager

Hybrid Code Network dialogue manager
Python
11
star
25

RDLS_NLP_2022

Jupyter Notebook
10
star
26

demo-cisco

HTML
8
star
27

research

Ongoing and published research, papers and code.
Jupyter Notebook
8
star
28

deepPavlovEval

Sentence embeddings evaluation for russian tasks
Jupyter Notebook
8
star
29

turing-data

Data from Turing.DeepHack
Jupyter Notebook
8
star
30

Allen_HCN

An open source library for building end-to-end dialog systems and training chatbots.
Python
7
star
31

demo

JavaScript
6
star
32

babel-baseline

Baseline solution for DeepHack.Babel
Shell
6
star
33

tagging_tool_js

Lightweight tool for sentence tagging (i.e. NER markup) on JavaScript
JavaScript
6
star
34

raai_summer_school_nlp_2021

6
star
35

stand_kubernetes_cluster

Dockerfile
5
star
36

demo2

iPavlov demo site for DeepPavlov lib.
TypeScript
5
star
37

diff_beam_search

Python
5
star
38

seq2seq_scg

Optimization seq2seq model.
Python
5
star
39

char-language-model

A collection of sources implementing encoding of user's messages.
Jupyter Notebook
5
star
40

dialog_flow_sdk

Dialog Flow SDK
Python
5
star
41

fewshot_NER

Jupyter Notebook
5
star
42

learning-to-learn

Python
4
star
43

lm

Bi-directional Language Model
Python
4
star
44

dd-idde

DD-IDDE - Discourse-Driven Integrated Dialog Development Environment.
TypeScript
4
star
45

infinite-width_nets

Jupyter Notebook
4
star
46

deeppavlov-gsoc-ideas

HTML
4
star
47

explainable_qa

Services for explainable QA
Python
4
star
48

neural-state-machines

Python
4
star
49

ipavlov.ai

JavaScript
3
star
50

chatsky-ui

Dialog Flow Designer is GUI for Dialog Flow Framework, that is a free and open-source software stack for creating chatbots, released under the terms of Apache License 2.0.
TypeScript
3
star
51

h-elmo

Python
3
star
52

deeppavlov_annotation_tools

Data annotation tools for NLP tasks
Python
3
star
53

dialog_flow_demo

Python
3
star
54

dialog_flow_designer_prototype

DF Designer
TypeScript
3
star
55

convai_router_bot

ConvAI Router Bot
Python
3
star
56

dp_aiml_speller_chat_bot

Simple AIML Chat Bot with Spell Corrector on DeepPavlov
Jupyter Notebook
2
star
57

sberdemo

Python
2
star
58

convai_sample_bot

Python
2
star
59

ner-meta

Python
2
star
60

dream-builder

Python
2
star
61

convai-testing-system

Scala
2
star
62

EasyIntentCacther

Administrative tool for managing datasets of IntentCacther
Python
2
star
63

deeppavlov_dreamtools

Development Tools for DeepPavlov Dream
Python
2
star
64

audio-captioning-dcase

Python
1
star
65

stand_squad_en

Python
1
star
66

stand_squad_ru

Python
1
star
67

dream-landing

Landing and demo page for Dream social bot
TypeScript
1
star
68

dff_sphinx_theme

Sphinx theme for dialog flow framework distributed website
SCSS
1
star
69

Deepy1000

dp-dream-deepy
C#
1
star
70

convai_router_bot_poller

Python
1
star
71

sbrf_bot

Python
1
star
72

kb

Knowledge Bases
1
star
73

stand_ner_en_ontonotes

Python
1
star
74

stand_ranking_en

Shell
1
star
75

p_srv

Paraphraser microservice
Python
1
star
76

dialog_flow_tutorials

Jupyter Notebook
1
star
77

qa_metrics

Python
1
star
78

rus_ner_dataset

Jupyter Notebook
1
star
79

stand_docker_base

Dockerfile
1
star
80

deepreply

Python
1
star
81

entity_extraction_svc

Entity Extraction Service
Jupyter Notebook
1
star
82

custom_kg_svc

API to work with knowledge bases at runtime
Python
1
star
83

survey-bot

Jupyter Notebook
1
star
84

kgbot

Bot for kudago.com
C#
1
star
85

translation-enru

Python
1
star
86

dialog_flow_db_connector

Dialog Flow DB Connector is an addon for the Dialog Flow Framework and allows you to to save and retrieve user dialogue states (in the form of a `Context` object) using various database backends.
Python
1
star
87

dream-messenger

Dream Messenger
TypeScript
1
star
88

neuron-correlation

Experiments for measurement of neurons mutual correlation
Jupyter Notebook
1
star
89

chatsky-template

A template repository for DFF projects.
Python
1
star