Various deep-learning code examples, (Tutorial-style) Jupyter notebooks, and projects.
Many of the Jupyter notebooks are built on Google Colab and may employ special functions exclusive to Google Colab.
Authored and maintained by Dr. Tirthajyoti Sarkar, Fremont, CA.
(Please feel free to add me on LinkedIn here)
- Python 3.6+
- NumPy (
pip install numpy
) - Pandas (
pip install pandas
) - MatplotLib (
pip install matplotlib
) - Tensorflow (
pip install tensorflow
orpip install tensorflow-gpu
)
Of course, to use a local GPU correctly, you need to do lot more work setting up proper GPU driver and CUDA installation.
If you are using Ubuntu 18.04, here is a guide.
If you are on Windows 10, here is a guide
It is also highly recommended to install GPU version in a separate virtual environment, so as to not mess up the default system install.
- Keras (
pip install keras
)
NOTE: Most of the Jupyter notebooks in this repo are built on Google Colaboratory using Google GPU cluster and a virtual machine. Therefore, you may not need to install these packages on your local machine if you also want to use Google colab. You can directly launch the notebooks in your Google colab environment by clicking on the links provided in the notebooks (of course, that makes a copy of my notebook on to your Google drive).
For more information about using Google Colab for your deep learning work, check their FAQ here.
-
Fashion MNIST image classification using densely connected network and 1/2/3 layer CNNs (Here is the Notebook).
-
Horse or human image classification using Keras
ImageGenerator
and Google colaboratory platform (Here is the Notebook) -
Simple illustration of transfer learning using CIFAR-10 dataset (Here is the Notebook)
-
Adding simple Object-oriented Programming (OOP) principle to your deep learning workflow (Here is the Notebook).
-
ResNet on CIFAR-10 dataset, showing how to use Keras Callbacks classes like
ModelCheckpoint
,LearningRateScheduler
, andReduceLROnPlateau
. You can also change a single parameter to generate ResNet of various depths. (Here is the Notebook). -
Automatic text generation (based on simple character vectors) using LSTM network. Play with character sequence length, LSTM architecture, and hyperparameters to generate synthetic texts based on a particular author's style! (Here is the Notebook).
-
Bi-directional LSTM with embedding applied to the IMDB sentiment classification task (Here is the Notebook)
-
Keras Scikit-learn wrapper example with 10-fold cross-validation and exhaustive grid search (Here is the Notebook)