This repository provides examples for those who want to start working in deep learning (DL), a subfield of machine learning (ML).
The following CNNs are available:
- PyTorch_MNIST: Google Colab's notebook for the handwritten digit classification problem based on the classical Modified National Institute of Standards and Technology (MNIST) database. It uses three neural networks to address this problem: SNN500 by Aviv Shamsian, CNN3L by Nutan, and LeNet-5 by Bolla Karthikeya;
- PyTorch_MNIST_Profiler: Google Colab's notebook related to the handwritten digit classification problem based on the classical MNIST database. Hovewer, its goal is to address performance bottlenecks of the network/model via the TensorBoard Plugin with PyTorch Profiler. Hence, it will not cover the classification task completely. It uses the same three neural networks of the PyTorch_MNIST notebook;
- PyTorch_CIFAR-10: Google Colab's notebook for the image classification problem based on the classical CIFAR-10 database. It is a modification of the Training a Classifier PyTorch tutorial. It uses two neural networks to address this problem: CNN3L by Nutan and LeNet-5 presented in the Training a Classifier tutorial;
- PyTorch_CIFAR-10_Profiler: Google Colab's notebook related to the image classification problem based on the classical CIFAR-10 database. Hovewer, its goal is to address performance bottlenecks of the network/model via the TensorBoard Plugin with PyTorch Profiler. Hence, it will not cover the classification task completely. It uses same two neural networks of the PyTorch_CIFAR-10 notebook;
- PyTorch_VGG_ResNet_VGGout: It shows how easy is to create "new" deep neural networks (DNNs) by changing a few lines of code of previously proposed models. New networks: VGG12BN, ResNet-14. The output is due to the execution of VGG12BN;
- PyTorch_VGG_ResNet_ResNetout: Same previous notebook but with the output of ResNet-14;
- PyTorch_DenseNet: It shows how easy is to create "new" deep neural networks (DNNs) by changing a few lines of code of previously proposed models. New network: DenseNet-83;
- PyTorch_TransferLayer: This notebook shows how to use transfer learning (TL) within a supervised context. The TL technique is fine-tuning the deep convolutional neural network (CNN). We considered six pretrained models: ResNet-18, ResNet-34, DenseNet-121, DenseNet-161, GoogLeNet, and Inception-v3;
- PyTorch_U-Net: This notebook is about semantic segmentation via U-Net. Important. This notebook was developed by the Albumentations Team and a few modifications have been done by Valdivino Alexandre de Santiago Júnior. If you want to use Albumentations in your study, please cite their article;
- PyTorch_Mask R-CNN: This notebook is about instance segmentation via Mask R-CNN. Important. This notebook was developed by Erdene-Ochir Tuguldur and a few modifications have been done by Valdivino Alexandre de Santiago Júnior.
The following GANs are available:
- PyTorch_DCGAN: This notebook addresses the deep convolutional generative adversarial network (DCGAN);
- PyTorch_PROGAN: This notebook is about the progressive growing of GANs (PROGAN);
- PyTorch_CGAN: This notebook is about the conditional generative adversarial network (CGAN).
The following notebook is available:
- XAI-Final_ModelComparisonWithSaliency: This notebook is part of the Explainable AI Toolkit (XAITK) developed under the Defense Advanced Research Projects Agency (DARPA) Explainable Artificial Intelligence (XAI) program. However, a few modifications and bug fixes have been done by Valdivino Alexandre de Santiago Júnior. But if you want to cite this notebook, please do cite DARPA's XAITK because this is basically their notebook with few modifications.
The following datasets are required to download into Google Drive so that some notebooks can work properly:
Valdivino Alexandre de Santiago Júnior
This project is licensed under the GNU GENERAL PUBLIC LICENSE, Version 3 (GPLv3) - see the LICENSE.md file for details.
Please cite this repository if you use it as:
V. A. Santiago Júnior. Deep Leaning Made Easy, 2021. Acessed on: date of access. Available: https://github.com/vsantjr/DeepLearningMadeEasy.