├── 2018-2022_Handouts_QuesSols ├── BITSF312_201819_1_C.pdf ├── BITSF312_201819_1_H.pdf ├── BITSF312_201920_1_C.pdf ├── BITSF312_201920_1_H.pdf ├── CSF425_202122_1_C.pdf ├── CSF425_202122_1_H.pdf ├── CSF425_202122_2_C.pdf ├── CSF425_202122_2_H.pdf └── README.txt ├── DL_Lectures.zip ├── DL_handout.pdf ├── Demos └── vectorisation │ ├── matmul.py │ ├── matmul_gpu.py │ └── vec.py ├── Extras ├── Lecture3_hw.pdf ├── YisSampled.pdf ├── perceptron.pdf └── vectorisation.pdf ├── LICENSE ├── Lectures ├── AISymp22_GNNs.pdf ├── Lecture0.pdf ├── Lecture1.pdf ├── Lecture10.pdf ├── Lecture11.pdf ├── Lecture12.pdf ├── Lecture13.pdf ├── Lecture16.pdf ├── Lecture17.pdf ├── Lecture18.pdf ├── Lecture19.pdf ├── Lecture2.pdf ├── Lecture20.pdf ├── Lecture21.pdf ├── Lecture22.pdf ├── Lecture23.pdf ├── Lecture24.pdf ├── Lecture25.pdf ├── Lecture26.pdf ├── Lecture3.pdf ├── Lecture4.pdf ├── Lecture5.pdf ├── Lecture6.pdf ├── Lecture7.pdf ├── Lecture8.pdf └── Lecture9.pdf ├── Projects ├── CS_F425_DL_Assignment_1.pdf └── CS_F425_DL__Major_Project.pdf ├── README.md └── Tutorials ├── GNN.ipynb ├── NN_basics_Tut1.pdf ├── NN_basics_Tut2.pdf └── Opt_Tut1.pdf /2018-2022_Handouts_QuesSols/BITSF312_201819_1_C.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/2018-2022_Handouts_QuesSols/BITSF312_201819_1_C.pdf -------------------------------------------------------------------------------- /2018-2022_Handouts_QuesSols/BITSF312_201819_1_H.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/2018-2022_Handouts_QuesSols/BITSF312_201819_1_H.pdf -------------------------------------------------------------------------------- /2018-2022_Handouts_QuesSols/BITSF312_201920_1_C.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/2018-2022_Handouts_QuesSols/BITSF312_201920_1_C.pdf -------------------------------------------------------------------------------- /2018-2022_Handouts_QuesSols/BITSF312_201920_1_H.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/2018-2022_Handouts_QuesSols/BITSF312_201920_1_H.pdf -------------------------------------------------------------------------------- /2018-2022_Handouts_QuesSols/CSF425_202122_1_C.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/2018-2022_Handouts_QuesSols/CSF425_202122_1_C.pdf -------------------------------------------------------------------------------- /2018-2022_Handouts_QuesSols/CSF425_202122_1_H.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/2018-2022_Handouts_QuesSols/CSF425_202122_1_H.pdf -------------------------------------------------------------------------------- /2018-2022_Handouts_QuesSols/CSF425_202122_2_C.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/2018-2022_Handouts_QuesSols/CSF425_202122_2_C.pdf -------------------------------------------------------------------------------- /2018-2022_Handouts_QuesSols/CSF425_202122_2_H.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/2018-2022_Handouts_QuesSols/CSF425_202122_2_H.pdf -------------------------------------------------------------------------------- /2018-2022_Handouts_QuesSols/README.txt: -------------------------------------------------------------------------------- 1 | This directory contains course files (mainly, Handouts and Question papers) for the courses taken by AS and TD. 2 | The courses are: Machine Learning, Deep Learning (or Neural Networks) and AI. 3 | 4 | --------------- 5 | Missing files: 6 | --------------- 7 | 2019-20 S1 ML (BITS F464) Compre (probably with Prof. Ashwin) 8 | 2021-22 S2 DL (CS F425) Handout (probably with Tanmay) 9 | 10 | 2022-23 S1, S2 Courses: I am not involved. 11 | 2023-24 S1, S2 Courses: I am not involved. 12 | -------------------------------------------------------------------------------- /DL_Lectures.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/DL_Lectures.zip -------------------------------------------------------------------------------- /DL_handout.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/DL_handout.pdf -------------------------------------------------------------------------------- /Demos/vectorisation/matmul.py: -------------------------------------------------------------------------------- 1 | import torch 2 | import time 3 | 4 | n = 100000 5 | 6 | A = torch.rand(n, n) 7 | B = torch.rand(n, n) 8 | 9 | tic = time.time() 10 | Z = torch.matmul(A, B) 11 | toc = time.time() 12 | 13 | print('Time:',(toc-tic),'s.') 14 | -------------------------------------------------------------------------------- /Demos/vectorisation/matmul_gpu.py: -------------------------------------------------------------------------------- 1 | import torch 2 | import time 3 | 4 | device = torch.cuda.current_device() 5 | 6 | n = 10000 7 | 8 | A = torch.rand(n, n).to(device) 9 | B = torch.rand(n, n).to(device) 10 | 11 | tic = time.time() 12 | Z = torch.matmul(A, B) 13 | toc = time.time() 14 | 15 | print('Time:',(toc-tic),'s.') 16 | 17 | -------------------------------------------------------------------------------- /Demos/vectorisation/vec.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | import time 3 | 4 | n = 1000000000 5 | 6 | A = np.random.rand(n) 7 | B = np.random.rand(n) 8 | 9 | tic = time.time() 10 | C = np.dot(A, B) 11 | toc = time.time() 12 | 13 | print(C) 14 | print('Duration: ',(toc-tic),'s') 15 | 16 | 17 | tic = time.time() 18 | C = 0 19 | for i in range(n): 20 | C += A[i]*B[i] 21 | toc = time.time() 22 | 23 | print(C) 24 | print('Duration: ',(toc-tic),'s') 25 | -------------------------------------------------------------------------------- /Extras/Lecture3_hw.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Extras/Lecture3_hw.pdf -------------------------------------------------------------------------------- /Extras/YisSampled.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Extras/YisSampled.pdf -------------------------------------------------------------------------------- /Extras/perceptron.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Extras/perceptron.pdf -------------------------------------------------------------------------------- /Extras/vectorisation.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Extras/vectorisation.pdf -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 Tirtharaj Dash 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Lectures/AISymp22_GNNs.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/AISymp22_GNNs.pdf -------------------------------------------------------------------------------- /Lectures/Lecture0.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture0.pdf -------------------------------------------------------------------------------- /Lectures/Lecture1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture1.pdf -------------------------------------------------------------------------------- /Lectures/Lecture10.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture10.pdf -------------------------------------------------------------------------------- /Lectures/Lecture11.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture11.pdf -------------------------------------------------------------------------------- /Lectures/Lecture12.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture12.pdf -------------------------------------------------------------------------------- /Lectures/Lecture13.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture13.pdf -------------------------------------------------------------------------------- /Lectures/Lecture16.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture16.pdf -------------------------------------------------------------------------------- /Lectures/Lecture17.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture17.pdf -------------------------------------------------------------------------------- /Lectures/Lecture18.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture18.pdf -------------------------------------------------------------------------------- /Lectures/Lecture19.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture19.pdf -------------------------------------------------------------------------------- /Lectures/Lecture2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture2.pdf -------------------------------------------------------------------------------- /Lectures/Lecture20.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture20.pdf -------------------------------------------------------------------------------- /Lectures/Lecture21.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture21.pdf -------------------------------------------------------------------------------- /Lectures/Lecture22.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture22.pdf -------------------------------------------------------------------------------- /Lectures/Lecture23.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture23.pdf -------------------------------------------------------------------------------- /Lectures/Lecture24.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture24.pdf -------------------------------------------------------------------------------- /Lectures/Lecture25.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture25.pdf -------------------------------------------------------------------------------- /Lectures/Lecture26.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture26.pdf -------------------------------------------------------------------------------- /Lectures/Lecture3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture3.pdf -------------------------------------------------------------------------------- /Lectures/Lecture4.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture4.pdf -------------------------------------------------------------------------------- /Lectures/Lecture5.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture5.pdf -------------------------------------------------------------------------------- /Lectures/Lecture6.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture6.pdf -------------------------------------------------------------------------------- /Lectures/Lecture7.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture7.pdf -------------------------------------------------------------------------------- /Lectures/Lecture8.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture8.pdf -------------------------------------------------------------------------------- /Lectures/Lecture9.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Lectures/Lecture9.pdf -------------------------------------------------------------------------------- /Projects/CS_F425_DL_Assignment_1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Projects/CS_F425_DL_Assignment_1.pdf -------------------------------------------------------------------------------- /Projects/CS_F425_DL__Major_Project.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Projects/CS_F425_DL__Major_Project.pdf -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ## Welcome to CS F425 at BITS Pilani, Goa Campus! 2 | 3 | | Primary Instructor (IC) | [Tirtharaj Dash](https://www.bits-pilani.ac.in/goa/tirtharaj/profile) | 4 | |---------------------------|---| 5 | | Teaching Assistants (TAs) | [Atharv Sonwane](https://threewisemonkeys-as.github.io/)     [Anmol Agarwal](https://www.linkedin.com/in/anmol-agarwal-041098/)     [Ameya Laad](http://ameyalaad.github.io/)     [Akhilesh Adithya](https://akhileshadithya.github.io/)| 6 | 7 | Course handout can be found [here](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/DL_handout.pdf). 8 | 9 | 10 | ## Scope and Objective of the course 11 | 12 | Neural Networks has had a long and rich history, and the reincarnated 13 | viewpoint has shifted towards "Deep Neural Networks\" or "Deep 14 | Learning\", primarily due to, (a) availability of the large amount of 15 | data, (b) extensive use of powerful graphics processors, (c) 16 | availability of software libraries to facilitate deep network 17 | implementations, and (d) significant involvement of industrial research 18 | labs in deep learning research. 19 | 20 | This course on "Deep Learning" would focus on the conceptual and 21 | mathematical foundation and computational investigations of recent deep 22 | models as part of a series of laboratory experiments and projects. For 23 | instance, we will focus on newer convolutional neural networks such as 24 | VGG Net, ResNet; various sequence models including attention-based 25 | models such as transformers; and also we will touch upon graph 26 | representation learning using graph neural networks. 27 | 28 | At the end of this course, students should be able to (0) pose 29 | real-world problems in deep learning, (1) source and prepare datasets, 30 | (2) design suitable deep network architecture, (3) prepare input-output 31 | representation (and encodings), (4) decide and design a suitable loss 32 | function for training a deep network, (5) training and deploying deep 33 | models. 34 | 35 | ## Book(s) 36 | 37 | Primary textbooks: 38 | 39 | 1. A. Zhang, Z.C. Lipton, M. Li, A.J. Smola, [Dive into Deep 40 | Learning](https://d2l.ai/index.html). 41 | 2. Ian Goodfellow, Yoshua Bengio, Aaron Courville, [Deep 42 | Learning](http://www.deeplearningbook.org/front_matter.pdf), MIT 43 | Press. 44 | 3. Aggarwal, C. C. (2018). Neural networks and deep learning, Springer. 45 | 4. W.L. Hamilton, [Graph Representation Learning 46 | Book](https://www.cs.mcgill.ca/~wlh/grl_book/). 47 | 48 | Other good reference books include: 49 | 50 | 1. Graves, A. (2012). [Supervised sequence labelling with recurrent 51 | neural networks](https://www.cs.toronto.edu/~graves/preprint.pdf). 52 | 2. Francois Chollet, [Deep Learning with 53 | Python](http://faculty.neu.edu.cn/yury/AAI/Textbook/Deep%20Learning%20with%20Python.pdf), 54 | Manning Publishers. 55 | 3. E. Stevens, L. Antiga, T. Viehmann, [Deep Learning with 56 | PyTorch](https://pytorch.org/assets/deep-learning/Deep-Learning-with-PyTorch.pdf), 57 | Manning Publishers. 58 | 59 | Textbook-3 is available in our library. Other books are available as 60 | e-books as href-ed.\ 61 | Additioanlly, we may also look at relevant papers from 62 | [NeurIPS](https://nips.cc/), [ICLR](https://iclr.cc/), 63 | [ICML](https://icml.cc/), [IJCAI](https://www.ijcai.org/), 64 | [AAAI](https://aaai.org/Conferences/AAAI/aaai.php). These will be 65 | primarily used during major and minor projects design. 66 | 67 | 68 | ## Theory Materials 69 | 70 | References to the relevent study materials are provided in the lecture slides and in some cases, 71 | these are made available separately. 72 | Duration of each lecture is 50 min, which may get extended by 10-15 min. I am thankful to 73 | my students for tolerating this aspect of my teaching. 74 | The recoded videos of live lectures are accessible to the registered students only. 75 | The slides and videos may not be in sync in some cases; that is, any slide may span 76 | over multiple lecture slots. 77 | 78 | 79 | | Lecture | In-class Lecture | Extra Materials | 80 | |-----------|------------------|-----------------| 81 | | Lecture 0: Introducing the course | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture0.pdf), [video](https://drive.google.com/file/d/1QXLGrSHwjWdS4gvDWeYjh9zj5Dihd3it/view?usp=sharing) | | 82 | | Tutorial 1: NN Basics | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Tutorials/NN_basics_Tut1.pdf), [video](https://drive.google.com/file/d/1s7uPfKM53_5PN30IbrK2chLIPqUvp4of/view?usp=sharing) | | 83 | | Tutorial 2: NN Basics | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Tutorials/NN_basics_Tut2.pdf), [video1](https://drive.google.com/file/d/1HXjtGyx_dSlF_XSmxj3xlZBliNeLYmQm/view?usp=sharing), [video2](https://drive.google.com/file/d/1zq0jROhsIK51DQhCP4m3x0x2Uiqn8QJJ/view?usp=sharing) | [A note on Perceptron](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Extras/perceptron.pdf) | 84 | | Tutorial 3: Optimisation Basics | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Tutorials/Opt_Tut1.pdf) | 85 | | Lecture 1: DL Components and a Bayesian view | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture1.pdf), [video](https://drive.google.com/file/d/1lYs0VouCJ-e2BPlDPV8r2O6v-aGTJh1u/view?usp=sharing) | | 86 | | Lecture 2: Deep Feedforward Nets (MLPs) | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture2.pdf), [video](https://drive.google.com/file/d/10eJe8EjPyaNCYiLHmFFEjQPlT1D9JOby/view?usp=sharing) | | 87 | | Lecture 3: Backpropagation in MLP(1) | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture3.pdf), [video](https://drive.google.com/file/d/1-Eh_2lAW3m_WICtf4hOrZdiCU3f7KtOK/view?usp=sharing) | [Homework](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Extras/Lecture3_hw.pdf) | 88 | | Lecture 4: Backpropagation in MLP(2) | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture4.pdf), [video](https://drive.google.com/file/d/1HCZ8ir6p_KqsMVePknsmWhFhwkDKPF4l/view?usp=sharing) | [Vectorisation](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Extras/vectorisation.pdf), [codes](https://github.com/tirtharajdash/CS-F425_Deep-Learning/tree/main/Demos/vectorisation) | 89 | | Lecture 5: Generalisation(1) | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture5.pdf), [video](https://drive.google.com/file/d/1yR_s6YjoeFVe8SUQDjJDJmGyM1qnSwqt/view?usp=sharing) | [What is a dataset?](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Extras/YisSampled.pdf) | 90 | | Lecture 6: Generalisation(2) | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture6.pdf), [video](https://drive.google.com/file/d/1VTaFv1TgZeriO9569Iffe-9huKCDFfSN/view?usp=sharing) | | 91 | | Lecture 7: Dropout, Early Stopping | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture7.pdf), [video](https://drive.google.com/file/d/1RzVKVfSRbPThViZxFBpwQHdkXlTtFpTU/view?usp=sharing) | [Dropout Paper](https://jmlr.org/papers/volume15/srivastava14a/srivastava14a.pdf) | 92 | | Lecture 8: Optimisation and Parameter Initialisation | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture8.pdf), [video](https://drive.google.com/file/d/1xbwu334-iVoIGiy11YXXOyD-ndrfjwWU/view?usp=sharing) | | 93 | | Lecture 9: Adaptive Optimisation Methods | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture9.pdf), [video](https://drive.google.com/file/d/1jAyfnim6WiHJM0kzsNnFS9S-Lxr1H72d/view?usp=sharing) | [Adam Paper](https://arxiv.org/pdf/1412.6980.pdf) | 94 | | Lecture 10: Template Matching and CNNs | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture10.pdf), [video](https://drive.google.com/file/d/1odQ-rnu1pTJ_wmw-6Me2GYVmQCF7UxV_/view?usp=sharing) | [Yann LeCun's CNN Paper](http://yann.lecun.com/exdb/publis/pdf/lecun-99.pdf) | 95 | | Lecture 11: Fully-Connected Layers to Convolutions | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture11.pdf), [video](https://drive.google.com/file/d/1rKlFf-TLDccHEXSxySr-_fDiJReq6HOd/view?usp=sharing) | | 96 | | Lecture 12: CNN Operators (Convolution, Pooling) | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture12.pdf), [video](https://drive.google.com/file/d/1LzKvF1B8XiuFJ7C9kcgM8ZoAAqP5A6_4/view?usp=sharing) | | 97 | | Lecture 13: Gradient Computation in CNNs | [Notes](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture13.pdf), [video](https://drive.google.com/file/d/1ZDRPzNG70scT6pOV5VTa-XMK_gIaLeUP/view?usp=sharing) | | 98 | | Lecture 14: Modern Convolutional Neural Networks | [materials](https://d2l.ai/chapter_convolutional-modern/index.html), [video](https://drive.google.com/file/d/1xTd-igaWdmmdJ5YvSIp9VdOJblWkY2Nr/view?usp=drivesdk) | [AlexNet](https://colab.research.google.com/github/d2l-ai/d2l-pytorch-colab/blob/master/chapter_convolutional-modern/alexnet.ipynb), [VGG](https://colab.research.google.com/github/d2l-ai/d2l-pytorch-colab/blob/master/chapter_convolutional-modern/vgg.ipynb), [NiN](https://colab.research.google.com/github/d2l-ai/d2l-pytorch-colab/blob/master/chapter_convolutional-modern/nin.ipynb), [GoogLeNet](https://colab.research.google.com/github/d2l-ai/d2l-pytorch-colab/blob/master/chapter_convolutional-modern/googlenet.ipynb), [ResNet](https://colab.research.google.com/github/d2l-ai/d2l-pytorch-colab/blob/master/chapter_convolutional-modern/resnet.ipynb) 99 | | Lecture 15: Transfer Learning | [video](https://drive.google.com/file/d/1NfjxSbLdMHGFBC9-din6DBLPB3Phn97K/view?usp=sharing)|[Notebook](https://colab.research.google.com/drive/1D-8H41zXHnsmjeaoOaqcZqIJH08aSbtY?usp=sharing)| 100 | | Lecture 16: Sequence Learning | [materials:8.1-8.3](https://d2l.ai/chapter_recurrent-neural-networks/index.html), [video](https://drive.google.com/file/d/1jgUZhOKi4rV3kAfM47VhGHjPUZoaaoF_/view?usp=sharing) | [board](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture16.pdf) | 101 | | Lecture 17: Recurrent Neural Nets | [video](https://drive.google.com/file/d/1gz4SMrueMBxg-ccP63qi9wN1pV9YBiIg/view?usp=sharing) | [board]() | 102 | | Lecture 18: Backprop Through Time (BPTT) | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture17.pdf), [video](https://drive.google.com/file/d/1uettbMlL2Q9KoS0LmyO6dK4ubiQPtM_1/view?usp=sharing) | | 103 | | Midsem solution discussion | [video](https://drive.google.com/file/d/14m0TA0YVqFAD5DyP5BqleFmoMIr18c47/view?usp=sharing) | | 104 | | Lecture 19: Dealing with Vanishing Gradients in RNN | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture18.pdf), [video](https://drive.google.com/file/d/1Bht-fF8Od2YFBBYwAGzablnONg-p72G5/view?usp=sharing) | | 105 | | Lecture 20: Seq-to-Seq Learning, Attention Mechanism | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture19.pdf), [video](https://drive.google.com/file/d/1rgtQA_7efylMz0ysqGQPk-MDQNusXyp6/view?usp=sharing) | | 106 | | Lecture 21: Attention and Self-attention | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture20.pdf), [video](https://drive.google.com/file/d/1elHRINYDPe3lRH818wL0bPDaGJtdxXSO/view?usp=sharing) | [Attention is all you need.](https://arxiv.org/abs/1706.03762) | 107 | | Lecture 22: Multi-head Attention and Transformer | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture21.pdf), [video](https://drive.google.com/file/d/1K--MH8oxbL4yj7OgjjlIMC-C8S1Wh08f/view?usp=sharing) | [Layer Normalisation](https://arxiv.org/abs/1607.06450) | 108 | | Lecture 23: Representation Learning | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture22.pdf), [video](https://drive.google.com/file/d/1W9EkIwCgGTWrIu2_wV7ffpm9ep58ryaa/view?usp=sharing) | | 109 | | Lecture 24: Representation Learning | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture23.pdf), [video](https://drive.google.com/file/d/1lgtMVD-jRiG7TbAWgNSsZSfHEym5q3Yb/view?usp=sharing) | | 110 | | Lecture 25: Generative Modelling (Intro. to VAE) | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture24.pdf), [video](https://drive.google.com/file/d/1pjDez6Sk2rF5MK2fekuIJipI4e_lnajr/view?usp=sharing) | | 111 | | Lecture 26: Variational AE | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture25.pdf), [video](https://drive.google.com/file/d/1mqO0l54JsqqZYnIyOgb--6VYu5jDN-KA/view?usp=sharing) | | 112 | | Lecture 27: Generative Adversarial Network (GAN) | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/Lecture26.pdf), [video](https://drive.google.com/file/d/1hY8JTKpTPIEIYhlujrEXcVTQN6E2_tDi/view?usp=sharing) | | 113 | | Lecture 28: Energy-based Generative Modelling (RBM) | [materials](https://www.deeplearningbook.org/contents/generative_models.html) | | 114 | | AI Symp 22: [Tutorial Talk on GNNs](https://sites.google.com/goa.bits-pilani.ac.in/aisymposium2022/home?authuser=0) | [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/AISymp22_GNNs.pdf), [video](https://youtu.be/rnM6WwJbkF8)| | 115 | 116 | 117 | 118 | These slides and videos are not really optimised for general public; so, please email me directly if you find 119 | any error or mistake in my lecture slides or videos. This will help me correct these the next time. I sincerely 120 | thank the [MathCha Editor](https://www.mathcha.io/editor) which I use extensively to draw most of the diagrams. 121 | 122 | 123 | ## Lab Materials 124 | 125 | All our labs will be based on PyTorch. See the official [PyTorch Tutorials](https://pytorch.org/tutorials/). 126 | We will also have 1 lab on basic Python and PyTorch. 127 | 128 | Update: According to students' votes, we are fixing the lab timing to be: **Wednesday 6-8 PM**. Please make sure to go through the reading materials (given below) before the lab. 129 | 130 | To run/edit the colab notebooks, please create a copy in your drive and work on that copy. 131 | 132 | | Lab | Reading Material | Recording | Exercise Material | 133 | |-------|------------------|-----------|-------------------| 134 | | Lab 0: Basics of Python and PyTorch | [Python Tutorial Series](https://pythonprogramming.net/introduction-learn-python-3-tutorials/) by Sentdex
[Python Intro](https://cs231n.github.io/python-numpy-tutorial) by Justin Johnson
Section 2.1-2.3 of [d2l.ai](http://d2l.ai/) | [video](https://drive.google.com/file/d/1Be1aqGczs2d8pLkyvPESxyGjYSNonnZK/view?usp=sharing) | [Notebook1](https://colab.research.google.com/drive/1HvAnGuGy6PaZyBtPNtYGUmvH-6CVDn5H?usp=sharing)
[Notebook2](https://colab.research.google.com/drive/1UQYTwZ6_y3ifZBfgIbn0INC87EmjPPtD?usp=sharing) | 135 | | Lab 1: Autograd and MLP | Section 2.4 - 2.5 of [d2l.ai](http://d2l.ai/)
[Intro to Autograd](https://pytorch.org/tutorials/beginner/blitz/autograd_tutorial.html#sphx-glr-beginner-blitz-autograd-tutorial-py) | [video](https://drive.google.com/file/d/19YQLqth--2q7xdBER-632GW-kNmT9ayG/view?usp=sharing) | [Notebook](https://colab.research.google.com/drive/15L51sdwIeylKQV-BZm2wCEfR9dJT7-Zi?usp=sharing) | 136 | | Lab 2: Regularisation | Section 4.5.2 - 4.5.3 of [d2l.ai](http://d2l.ai/) | [video](https://drive.google.com/file/d/1F8XRs73Tqsat2rtUyNye6ZY9s6EMpNOt/view?usp=sharing) | [Notebook](https://colab.research.google.com/drive/1X4kl7nGtj_q1rumvZHEsUeSzX1BJ9kJ6?usp=sharing) | 137 | | Lab 3: Hyperparameter Tuning | Section 4.4, 4.6 and 7.5 from [d2l.ai](http://d2l.ai/)
[Hyperparameter tuning](https://www.oreilly.com/library/view/evaluating-machine-learning/9781492048756/ch04.html) | [video](https://drive.google.com/file/d/1fIfybjRUXG4btOvBM9E_90Cpx7YLlvjN/view?usp=sharing) | [Notebook 1](https://colab.research.google.com/drive/1S0Y8xiaBaI6p1Y74MiNnCio6IuOE4Eto?usp=sharing)
[Notebook 2](https://colab.research.google.com/drive/1UHsM00OTT19FexEHwSkrydo13pfvUKXO?usp=sharing) | 138 | | Lab 4: Intro to CNNs | Section 6 from [d2l.ai](http://d2l.ai/) | [video](https://drive.google.com/file/d/1ScRQRsN3zt_Ye6mMD0uC1SHouQCkJyZJ/view?usp=sharing) |[Notebook](https://colab.research.google.com/drive/10afSD0wjQinhHug8RPlPSvooK8ZGfVgc?usp=sharing) | 139 | | Lab 5: Intro to CNNs (Continued) | Section 6 from [d2l.ai](http://d2l.ai/) | [video](https://drive.google.com/file/d/1xNE06_1z7p1POk7BkG9QhJYMM_H1r9gd/view?usp=sharing) |[Notebook](https://colab.research.google.com/drive/10afSD0wjQinhHug8RPlPSvooK8ZGfVgc?usp=sharing) | 140 | | Lab 6: Intro to RNNs | Section 8 from [d2l.ai](http://d2l.ai/) | [part 1](https://drive.google.com/file/d/1ckNOAf1_GfDcQzI-wwqfu6YLIJjttMN4/view?usp=sharing) |[Intro](https://colab.research.google.com/drive/1r4zC-g578oCFTzu8MNmRUQ6aKKrM56mZ?usp=sharing), [Exercises](https://colab.research.google.com/drive/1r4zC-g578oCFTzu8MNmRUQ6aKKrM56mZ?usp=sharing) | 141 | | Lab 7: Intro to Transformers and BERT | NeurIPS Paper: [Attention is all you need](https://proceedings.neurips.cc/paper/2017/file/3f5ee243547dee91fbd053c1c4a845aa-Paper.pdf) | [video](https://drive.google.com/file/d/1eZg5a9SPZVN5wwOW63nidjCLKOJdP7b2/view?usp=sharing) |[Official Pytorch Notebook](https://colab.research.google.com/github/pytorch/pytorch.github.io/blob/master/assets/hub/huggingface_pytorch-transformers.ipynb) | 142 | | Extra 1: AI Symposium 2022 Talk-GNNs |Presentation: [slides](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Lectures/AISymp22_GNNs.pdf)| [video](https://youtu.be/rnM6WwJbkF8) |[Official Pytorch Notebook](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Tutorials/GNN.ipynb) | 143 | 144 | 145 | ## Lab Projects 146 | 147 | | Lab Project | Details | Submission Date | Submission Link | 148 | |-------------|---------|-----------------|-----------------| 149 | | Project 1: Residual MLPs | [Assignment 1](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Projects/CS_F425_DL_Assignment_1.pdf) | **Sep 25, 11:59 PM IST** | [Google Classroom](https://classroom.google.com/c/MzgzNTE2MTc5NzE5/a/Mzk4ODI1MzU2MTAw/details) | 150 | | Project 2: Major Project | [Assignment 2](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/Projects/CS_F425_DL__Major_Project.pdf) | **Dec 7, 11:59 PM IST** | [Google Classroom](https://classroom.google.com/u/1/c/MzgzNTE2MTc5NzE5/a/NDM2NTM4NjQ4MDE4/details) | 151 | 152 | ## Previous year Questions and Solutions 153 | 154 | Handouts, Questions and Solutions from previous years (2018-2022) are available [here](https://github.com/tirtharajdash/CS-F425_Deep-Learning/blob/main/2018-2022_Handouts_QuesSols/). 155 | 156 | 157 | ## Using our course materials 158 | 159 | Non-profitable usage of the materials from this course is absolutely free. However, 160 | if you are tech-blogger or a course instructor or a student outside BITS Pilani (Goa Campus) 161 | and you are using our course materials for any non-profitable purposes, 162 | please credit this course page by providing a proper reference to this page. 163 | Any profitable usage of these materials needs permission from the owner ([Tirtharaj Dash](https://tirtharajdash.github.io/)). 164 | Refer the license for more details. 165 | -------------------------------------------------------------------------------- /Tutorials/GNN.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "nbformat": 4, 3 | "nbformat_minor": 0, 4 | "metadata": { 5 | "colab": { 6 | "provenance": [], 7 | "collapsed_sections": [] 8 | }, 9 | "kernelspec": { 10 | "name": "python3", 11 | "display_name": "Python 3" 12 | }, 13 | "language_info": { 14 | "name": "python" 15 | } 16 | }, 17 | "cells": [ 18 | { 19 | "cell_type": "markdown", 20 | "source": [ 21 | "# Installing Pytorch Geometric" 22 | ], 23 | "metadata": { 24 | "id": "wif3_5wnQsfL" 25 | } 26 | }, 27 | { 28 | "cell_type": "code", 29 | "source": [ 30 | "import os\n", 31 | "import torch\n", 32 | "os.environ['TORCH'] = torch.__version__\n", 33 | "print(torch.__version__)\n", 34 | "\n", 35 | "!pip install torch-scatter torch-sparse torch-cluster torch-spline-conv torch-geometric -f https://data.pyg.org/whl/torch-${TORCH}.html" 36 | ], 37 | "metadata": { 38 | "colab": { 39 | "base_uri": "https://localhost:8080/" 40 | }, 41 | "id": "Fcme4GOqEfU8", 42 | "outputId": "f85d4581-ecf4-45ac-ff36-9ea9646be5ec" 43 | }, 44 | "execution_count": null, 45 | "outputs": [ 46 | { 47 | "output_type": "stream", 48 | "name": "stdout", 49 | "text": [ 50 | "1.12.1+cu113\n", 51 | "Looking in indexes: https://pypi.org/simple, https://us-python.pkg.dev/colab-wheels/public/simple/\n", 52 | "Looking in links: https://data.pyg.org/whl/torch-1.12.1+cu113.html\n", 53 | "Collecting torch-scatter\n", 54 | " Downloading https://data.pyg.org/whl/torch-1.12.0%2Bcu113/torch_scatter-2.0.9-cp37-cp37m-linux_x86_64.whl (7.9 MB)\n", 55 | "\u001b[K |████████████████████████████████| 7.9 MB 1.7 MB/s \n", 56 | "\u001b[?25hCollecting torch-sparse\n", 57 | " Downloading https://data.pyg.org/whl/torch-1.12.0%2Bcu113/torch_sparse-0.6.15-cp37-cp37m-linux_x86_64.whl (3.5 MB)\n", 58 | "\u001b[K |████████████████████████████████| 3.5 MB 48.5 MB/s \n", 59 | "\u001b[?25hCollecting torch-cluster\n", 60 | " Downloading https://data.pyg.org/whl/torch-1.12.0%2Bcu113/torch_cluster-1.6.0-cp37-cp37m-linux_x86_64.whl (2.4 MB)\n", 61 | "\u001b[K |████████████████████████████████| 2.4 MB 59.8 MB/s \n", 62 | "\u001b[?25hCollecting torch-spline-conv\n", 63 | " Downloading https://data.pyg.org/whl/torch-1.12.0%2Bcu113/torch_spline_conv-1.2.1-cp37-cp37m-linux_x86_64.whl (709 kB)\n", 64 | "\u001b[K |████████████████████████████████| 709 kB 51.0 MB/s \n", 65 | "\u001b[?25hCollecting torch-geometric\n", 66 | " Downloading torch_geometric-2.1.0.post1.tar.gz (467 kB)\n", 67 | "\u001b[K |████████████████████████████████| 467 kB 6.5 MB/s \n", 68 | "\u001b[?25hRequirement already satisfied: scipy in /usr/local/lib/python3.7/dist-packages (from torch-sparse) (1.7.3)\n", 69 | "Requirement already satisfied: tqdm in /usr/local/lib/python3.7/dist-packages (from torch-geometric) (4.64.1)\n", 70 | "Requirement already satisfied: numpy in /usr/local/lib/python3.7/dist-packages (from torch-geometric) (1.21.6)\n", 71 | "Requirement already satisfied: jinja2 in /usr/local/lib/python3.7/dist-packages (from torch-geometric) (2.11.3)\n", 72 | "Requirement already satisfied: requests in /usr/local/lib/python3.7/dist-packages (from torch-geometric) (2.23.0)\n", 73 | "Requirement already satisfied: pyparsing in /usr/local/lib/python3.7/dist-packages (from torch-geometric) (3.0.9)\n", 74 | "Requirement already satisfied: scikit-learn in /usr/local/lib/python3.7/dist-packages (from torch-geometric) (1.0.2)\n", 75 | "Requirement already satisfied: MarkupSafe>=0.23 in /usr/local/lib/python3.7/dist-packages (from jinja2->torch-geometric) (2.0.1)\n", 76 | "Requirement already satisfied: chardet<4,>=3.0.2 in /usr/local/lib/python3.7/dist-packages (from requests->torch-geometric) (3.0.4)\n", 77 | "Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /usr/local/lib/python3.7/dist-packages (from requests->torch-geometric) (1.24.3)\n", 78 | "Requirement already satisfied: idna<3,>=2.5 in /usr/local/lib/python3.7/dist-packages (from requests->torch-geometric) (2.10)\n", 79 | "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.7/dist-packages (from requests->torch-geometric) (2022.9.24)\n", 80 | "Requirement already satisfied: joblib>=0.11 in /usr/local/lib/python3.7/dist-packages (from scikit-learn->torch-geometric) (1.2.0)\n", 81 | "Requirement already satisfied: threadpoolctl>=2.0.0 in /usr/local/lib/python3.7/dist-packages (from scikit-learn->torch-geometric) (3.1.0)\n", 82 | "Building wheels for collected packages: torch-geometric\n", 83 | " Building wheel for torch-geometric (setup.py) ... \u001b[?25l\u001b[?25hdone\n", 84 | " Created wheel for torch-geometric: filename=torch_geometric-2.1.0.post1-py3-none-any.whl size=689859 sha256=83b564b9b300929ddf05da8ffb37aafa7214bc2a976174a1fe70169298cd8c7f\n", 85 | " Stored in directory: /root/.cache/pip/wheels/d1/cb/43/f7f2e472de4d7cff31bceddadc36d634e1e545fbc17961c282\n", 86 | "Successfully built torch-geometric\n", 87 | "Installing collected packages: torch-spline-conv, torch-sparse, torch-scatter, torch-geometric, torch-cluster\n", 88 | "Successfully installed torch-cluster-1.6.0 torch-geometric-2.1.0.post1 torch-scatter-2.0.9 torch-sparse-0.6.15 torch-spline-conv-1.2.1\n" 89 | ] 90 | } 91 | ] 92 | }, 93 | { 94 | "cell_type": "markdown", 95 | "source": [ 96 | "# Data Handling" 97 | ], 98 | "metadata": { 99 | "id": "FaldyXENaiEG" 100 | } 101 | }, 102 | { 103 | "cell_type": "code", 104 | "source": [ 105 | "from torch_geometric.data import Data\n", 106 | "\n", 107 | "edge_index = torch.tensor([[0, 0, 0, 1, 2, 3, 4],\n", 108 | " [2, 1, 3, 2, 1, 3, 1]], dtype=torch.long)\n", 109 | "x = torch.tensor([[10], [0], [1],[6], [3]], dtype=torch.float)\n", 110 | "\n", 111 | "data = Data(x=x, edge_index=edge_index.contiguous())\n", 112 | "print(data)" 113 | ], 114 | "metadata": { 115 | "colab": { 116 | "base_uri": "https://localhost:8080/" 117 | }, 118 | "id": "oSSqMPplKfDV", 119 | "outputId": "ca23fc1a-9ef0-4c86-a1f8-747abae196ce" 120 | }, 121 | "execution_count": null, 122 | "outputs": [ 123 | { 124 | "output_type": "stream", 125 | "name": "stdout", 126 | "text": [ 127 | "Data(x=[5, 1], edge_index=[2, 7])\n" 128 | ] 129 | } 130 | ] 131 | }, 132 | { 133 | "cell_type": "code", 134 | "source": [ 135 | "import networkx as nx\n", 136 | "from torch_geometric.utils import to_networkx\n", 137 | "G = to_networkx(data,to_undirected=data.is_undirected())\n", 138 | "pos = nx.shell_layout(G)\n", 139 | "nx.draw(G, pos, with_labels=True, font_weight='bold') #self loop on 3; bidirectional " 140 | ], 141 | "metadata": { 142 | "colab": { 143 | "base_uri": "https://localhost:8080/", 144 | "height": 319 145 | }, 146 | "id": "gEUBljY76P0o", 147 | "outputId": "25aedb33-8f79-4164-8989-78788b5aa55e" 148 | }, 149 | "execution_count": null, 150 | "outputs": [ 151 | { 152 | "output_type": "display_data", 153 | "data": { 154 | "text/plain": [ 155 | "
" 156 | ], 157 | "image/png": "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coyZNh/r//EKjEYjsrOzkZ2dzYUpRA6CwUd2Rasz9NB19AAuPxJJrVZDrVb3yHWJyPaxwYjsio+iZ35X81G49Mh1iMj+cMRHdiUq0AduzlUW051NuV+jvfwkOqpPAQBaS47B0FgDj4gx8IgYKzpX4eyEqMHeVquZiGwLR3xkV5JVwV0eby8/iZYT+2HUXt66TF9zBi0n9qOj+rTFuQKA5MSur0NEfR/7+MjudNXHd606+/jeS+U9PSJHxREf2Z1HJ4VB4Sy/odcqnOVYPimshysiInvC4CO7Exfii9VJUXB3ub6v7+W9OqOgDO7dpzQQkW3j4hayS50bTUv1dAYisl+8x0d2La+iAe8eKsXBolrIAOi6eB7f7ZEBWD4pjCM9IgLA4KM+4mJzO7ZlVaCwsglanR4+ChdEDfZGcqK0T2AnItvD4CMiIofCxS1ERORQGHxERORQGHxERORQGHxERORQGHxERORQGHxERORQGHxERORQGHxERORQGHxERORQGHxERORQGHxERORQGHxERORQGHxERORQGHxERORQGHxERORQGHxERORQGHxERORQGHxERORQGHxERORQGHxERORQGHxERORQ/j/ueTUGvWlLUAAAAABJRU5ErkJggg==\n" 158 | }, 159 | "metadata": {} 160 | } 161 | ] 162 | }, 163 | { 164 | "cell_type": "code", 165 | "source": [ 166 | "print(f\"Keys: {data.keys}\")\n", 167 | "print(f\"Edge_attr: {'edge_attr' in data}\")\n", 168 | "print(f\"Number of Nodes: {data.num_nodes}\")\n", 169 | "print(f\"Number of Edges: {data.num_edges}\")\n", 170 | "print(f\"Number of Node features: {data.num_node_features}\")\n", 171 | "print(f\"Isolated Nodes: {data.has_isolated_nodes()}\")\n", 172 | "print(f\"Self Loops: {data.has_self_loops()}\")\n", 173 | "print(f\"Directed graph: {data.is_directed()}\")" 174 | ], 175 | "metadata": { 176 | "colab": { 177 | "base_uri": "https://localhost:8080/" 178 | }, 179 | "id": "QY0rcLAMNDUk", 180 | "outputId": "9295cc43-d504-4a13-de32-d06fd9149975" 181 | }, 182 | "execution_count": null, 183 | "outputs": [ 184 | { 185 | "output_type": "stream", 186 | "name": "stdout", 187 | "text": [ 188 | "Keys: ['x', 'edge_index']\n", 189 | "Edge_attr: False\n", 190 | "Number of Nodes: 3\n", 191 | "Number of Edges: 4\n", 192 | "Number of Node features: 1\n", 193 | "Isolated Nodes: False\n", 194 | "Self Loops: False\n", 195 | "Directed graph: False\n" 196 | ] 197 | } 198 | ] 199 | }, 200 | { 201 | "cell_type": "markdown", 202 | "source": [ 203 | "# Common Benchmark Datasets\n" 204 | ], 205 | "metadata": { 206 | "id": "Q2mocCG3Qeeo" 207 | } 208 | }, 209 | { 210 | "cell_type": "markdown", 211 | "source": [ 212 | "\n", 213 | "\n", 214 | "> torch_geometric also supports some common datasets. One of such dataset is `Enzymes`. `Enzyme` contains total 600 graphs with 6 classes. We will split this data into training set and test set. Training set contains 540 graphs (90%) and test set contains 60 graphs (10%). \n", 215 | "\n", 216 | "\n", 217 | "\n" 218 | ], 219 | "metadata": { 220 | "id": "SlRRI6d-16vQ" 221 | } 222 | }, 223 | { 224 | "cell_type": "code", 225 | "source": [ 226 | "from torch_geometric.datasets import TUDataset\n", 227 | "\n", 228 | "dataset = TUDataset(root='ENZYMES', name='ENZYMES')\n", 229 | "dataset = dataset.shuffle()\n", 230 | "train_dataset = dataset[:540]\n", 231 | "test_dataset = dataset[540:]" 232 | ], 233 | "metadata": { 234 | "colab": { 235 | "base_uri": "https://localhost:8080/" 236 | }, 237 | "id": "pzwGM7i6Ntsx", 238 | "outputId": "7e8626e8-4ad5-4cf1-d496-d1a6b9e381e8" 239 | }, 240 | "execution_count": null, 241 | "outputs": [ 242 | { 243 | "output_type": "stream", 244 | "name": "stderr", 245 | "text": [ 246 | "Downloading https://www.chrsmrrs.com/graphkerneldatasets/ENZYMES.zip\n", 247 | "Extracting ENZYMES/ENZYMES/ENZYMES.zip\n", 248 | "Processing...\n", 249 | "Done!\n" 250 | ] 251 | } 252 | ] 253 | }, 254 | { 255 | "cell_type": "markdown", 256 | "source": [ 257 | "# Mini-Batch & Dataloader" 258 | ], 259 | "metadata": { 260 | "id": "IbF-1cQ8bBft" 261 | } 262 | }, 263 | { 264 | "cell_type": "markdown", 265 | "source": [ 266 | " > We will use the dataloader to split the training and testing set into batches. This is exactly same as normal pytorch dataloader." 267 | ], 268 | "metadata": { 269 | "id": "0unTSrsG2xHN" 270 | } 271 | }, 272 | { 273 | "cell_type": "code", 274 | "source": [ 275 | "from torch_geometric.loader import DataLoader\n", 276 | "train_loader = DataLoader(dataset = train_dataset, batch_size = 128)\n", 277 | "test_loader = DataLoader(dataset = test_dataset, batch_size = 1)" 278 | ], 279 | "metadata": { 280 | "id": "l1zPTJrVN5yA" 281 | }, 282 | "execution_count": null, 283 | "outputs": [] 284 | }, 285 | { 286 | "cell_type": "markdown", 287 | "source": [ 288 | "# Training GNN" 289 | ], 290 | "metadata": { 291 | "id": "haAuh0BGO6qT" 292 | } 293 | }, 294 | { 295 | "cell_type": "markdown", 296 | "source": [ 297 | "> Now we will train a simple Graph Neural Network on Cora dataset, Cora dataset is supported by torch_geometric" 298 | ], 299 | "metadata": { 300 | "id": "MQkSnkL_6zfY" 301 | } 302 | }, 303 | { 304 | "cell_type": "code", 305 | "source": [ 306 | "from torch_geometric.datasets import Planetoid\n", 307 | "\n", 308 | "dataset = Planetoid(root='data', name='Cora')" 309 | ], 310 | "metadata": { 311 | "id": "l_8xaXnuJKnc", 312 | "colab": { 313 | "base_uri": "https://localhost:8080/" 314 | }, 315 | "outputId": "e94062c5-b950-49f4-88b2-71ff6091995a" 316 | }, 317 | "execution_count": null, 318 | "outputs": [ 319 | { 320 | "output_type": "stream", 321 | "name": "stderr", 322 | "text": [ 323 | "Downloading https://github.com/kimiyoung/planetoid/raw/master/data/ind.cora.x\n", 324 | "Downloading https://github.com/kimiyoung/planetoid/raw/master/data/ind.cora.tx\n", 325 | "Downloading https://github.com/kimiyoung/planetoid/raw/master/data/ind.cora.allx\n", 326 | "Downloading https://github.com/kimiyoung/planetoid/raw/master/data/ind.cora.y\n", 327 | "Downloading https://github.com/kimiyoung/planetoid/raw/master/data/ind.cora.ty\n", 328 | "Downloading https://github.com/kimiyoung/planetoid/raw/master/data/ind.cora.ally\n", 329 | "Downloading https://github.com/kimiyoung/planetoid/raw/master/data/ind.cora.graph\n", 330 | "Downloading https://github.com/kimiyoung/planetoid/raw/master/data/ind.cora.test.index\n", 331 | "Processing...\n", 332 | "Done!\n" 333 | ] 334 | } 335 | ] 336 | }, 337 | { 338 | "cell_type": "markdown", 339 | "source": [ 340 | " > What is Graph Convolution? and How is it different from Convolutions. \n", 341 | "\n", 342 | "\n", 343 | " ![gcn_vs_cnn.png](data:image/png;base64,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)\n", 344 | "\n" 345 | ], 346 | "metadata": { 347 | "id": "nsHIiW7h8ZrJ" 348 | } 349 | }, 350 | { 351 | "cell_type": "code", 352 | "source": [ 353 | "import torch\n", 354 | "import torch.nn.functional as F\n", 355 | "from torch_geometric.nn import GCNConv\n", 356 | "\n", 357 | "class GCN(torch.nn.Module):\n", 358 | " def __init__(self):\n", 359 | " super().__init__()\n", 360 | " self.conv1 = GCNConv(dataset.num_node_features, 16)\n", 361 | " self.conv2 = GCNConv(16, dataset.num_classes)\n", 362 | "\n", 363 | " def forward(self, data):\n", 364 | " x, edge_index = data.x, data.edge_index\n", 365 | "\n", 366 | " x = self.conv1(x, edge_index)\n", 367 | " x = F.relu(x)\n", 368 | " x = F.dropout(x, training=self.training)\n", 369 | " x = self.conv2(x, edge_index)\n", 370 | "\n", 371 | " return F.log_softmax(x, dim=1)\n" 372 | ], 373 | "metadata": { 374 | "id": "NtYP8WqlMgPD" 375 | }, 376 | "execution_count": null, 377 | "outputs": [] 378 | }, 379 | { 380 | "cell_type": "code", 381 | "source": [ 382 | "device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')\n", 383 | "model = GCN().to(device)\n", 384 | "data = dataset[0].to(device)\n", 385 | "optimizer = torch.optim.Adam(model.parameters(), lr=0.01, weight_decay=5e-4)\n", 386 | "\n", 387 | "for epoch in range(200):\n", 388 | " model.train()\n", 389 | " optimizer.zero_grad()\n", 390 | " out = model(data)\n", 391 | " loss = F.nll_loss(out[data.train_mask], data.y[data.train_mask])\n", 392 | " loss.backward()\n", 393 | " optimizer.step()\n", 394 | " model.eval()\n", 395 | " pred = model(data).argmax(dim=1)\n", 396 | " correct = (pred[data.test_mask] == data.y[data.test_mask]).sum()\n", 397 | " acc = int(correct) / int(data.test_mask.sum())\n", 398 | " if epoch%20==0:\n", 399 | " print(f'Epoch: {epoch} Accuracy: {acc:.4f}')\n" 400 | ], 401 | "metadata": { 402 | "colab": { 403 | "base_uri": "https://localhost:8080/" 404 | }, 405 | "id": "LtQDIhp1ReIU", 406 | "outputId": "bdd81d54-1847-4526-953f-d896da95b588" 407 | }, 408 | "execution_count": null, 409 | "outputs": [ 410 | { 411 | "output_type": "stream", 412 | "name": "stdout", 413 | "text": [ 414 | "Epoch: 0 Accuracy: 0.3140\n", 415 | "Epoch: 20 Accuracy: 0.8130\n", 416 | "Epoch: 40 Accuracy: 0.7950\n", 417 | "Epoch: 60 Accuracy: 0.7910\n", 418 | "Epoch: 80 Accuracy: 0.7970\n", 419 | "Epoch: 100 Accuracy: 0.8020\n", 420 | "Epoch: 120 Accuracy: 0.7990\n", 421 | "Epoch: 140 Accuracy: 0.8130\n", 422 | "Epoch: 160 Accuracy: 0.8040\n", 423 | "Epoch: 180 Accuracy: 0.8110\n" 424 | ] 425 | } 426 | ] 427 | }, 428 | { 429 | "cell_type": "markdown", 430 | "source": [ 431 | "Paper:\n", 432 | "* [DeepWalk: Online Learning of Social Representation](https://arxiv.org/pdf/1403.6652.pdf) \n", 433 | "* [node2vec: Scalable Feature Learning for Networks](https://arxiv.org/pdf/1607.00653.pdf) " 434 | ], 435 | "metadata": { 436 | "id": "N0TI1NFxn71f" 437 | } 438 | } 439 | ] 440 | } -------------------------------------------------------------------------------- /Tutorials/NN_basics_Tut1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Tutorials/NN_basics_Tut1.pdf -------------------------------------------------------------------------------- /Tutorials/NN_basics_Tut2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Tutorials/NN_basics_Tut2.pdf -------------------------------------------------------------------------------- /Tutorials/Opt_Tut1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tirtharajdash/CS-F425_Deep-Learning/39bf555a77f8624f00b9bfccaa79c881c56c8d63/Tutorials/Opt_Tut1.pdf --------------------------------------------------------------------------------