A hands-on, notebook-based course covering PyTorch from tensor fundamentals to transfer learning. All notebooks run on standard benchmarks and are developed in Kaggle before syncing to this repository. Target audience: computational biologists and bioinformatics students who want a practical deep learning foundation.
The same patterns apply directly to biological data:
- Regression: Predicting drug IC50 from molecular fingerprints.
- Classification: Cell-type identification from flow cytometry or single-cell profiles.
- CNN: Automated analysis of microscopy and histopathology images.
- RNN/LSTM/GRU: Modeling DNA, RNA, and protein sequences.
- Transfer Learning: Adapting foundation vision models to bioimaging, or protein language models to downstream structure prediction.
PyTorch101/
├── README.md
├── requirements.txt
├── .gitignore
├── utils.py
├── 01_fundamentals.ipynb
├── 02_regression.ipynb
├── 03_classification.ipynb
├── 04_cnn.ipynb
├── 05_rnn_lstm_gru.ipynb
└── 06_transfer_learning.ipynb
git clone https://github.com/Suhaila-Samir-El-behairy/PyTorch101.git
cd PyTorch101
pip install -r requirements.txt
jupyter labEach notebook is synced from Kaggle. To run directly:
- Click the Open in Kaggle badge at the top of this file.
- In Kaggle, enable GPU under Settings → Accelerator.
- Enable Internet under Settings if you need to download MNIST or CIFAR-10.
- Run all cells.
Core dependencies are listed below. Seerequirements.txt for the full list.
- torch
- torchvision
- scikit-learn
- matplotlib
- numpy
These notebooks are authored in Kaggle and pushed to GitHub via Kaggle's native GitHub integration. Notebook outputs (plots, prints, and cell metadata) are often committed automatically. If you clone locally, you should clear outputs before making manual commits to keep the repository size small:
jupyter nbconvert --clear-output --inplace *.ipynbMIT