Skip to content

amir-jafari/Deep-Learning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🧠 Deep Learning Repository

Deep Learning PyTorch TensorFlow Python

A comprehensive collection of deep learning implementations, tutorials, and advanced architectures

πŸš€ Getting Started β€’ πŸ“š Documentation β€’ πŸ—οΈ Architecture β€’ 🀝 Contributing


πŸ“‹ Table of Contents

🎯 Overview

This repository contains a comprehensive collection of deep learning implementations spanning multiple frameworks and architectures. From fundamental concepts to cutting-edge research implementations, this repository serves as both an educational resource and a practical toolkit for deep learning practitioners.

✨ Key Features

  • πŸ”¬ Research-Grade Implementations: State-of-the-art architectures with detailed explanations
  • πŸ“š Educational Content: Step-by-step tutorials and lecture materials
  • πŸ› οΈ Multiple Frameworks: PyTorch and TensorFlow implementations
  • 🎯 Practical Examples: Real-world applications and use cases
  • πŸ“Š Comprehensive Coverage: From basic MLPs to advanced transformers

πŸš€ Getting Started

Prerequisites

  • Python 3.7+
  • CUDA-compatible GPU (recommended)
  • 8GB+ RAM

Quick Start

# Clone the repository
git clone https://github.com/yourusername/deep-learning-repo.git
cd deep-learning-repo

# Install dependencies
pip install -r requirements.txt

# Run a quick example
cd Pytorch/MLP/1_Simple_f_approx
python simple_function_approximation.py

πŸ“ Repository Structure

Complete PyTorch ecosystem with implementations ranging from basics to advanced concepts.

Comprehensive PyTorch tutorials and educational content:

πŸ—οΈ Special Architectures

Advanced and cutting-edge deep learning architectures with detailed implementations.

πŸ‘οΈ Vision Transformers

🏒 ResNet

Residual Networks with comprehensive documentation and multiple variants

Implementation of the novel KAN architecture

Combined architectures for complex pattern recognition

Neural Machine Translation and other seq2seq applications

Advanced TensorFlow implementations with production-ready code.

πŸ“Š Advanced CNNs

🧠 Advanced MLPs

πŸ”„ Advanced RNNs

Foundational TensorFlow implementations perfect for beginners.

πŸ“Š Basic CNNs

🧠 Basic MLPs

πŸ”„ Basic RNNs

πŸŽ“ Lecture Codes

Educational materials and tutorial implementations

πŸ’» Installation

Option 1: Conda Environment (Recommended)

# Create conda environment
conda create -n deeplearning python=3.8
conda activate deeplearning

# Install PyTorch
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia

# Install TensorFlow
pip install tensorflow

# Install additional dependencies
pip install numpy pandas matplotlib seaborn scikit-learn jupyter sacred

Option 2: Virtual Environment

# Create virtual environment
python -m venv deeplearning_env
source deeplearning_env/bin/activate  # On Windows: deeplearning_env\Scripts\activate

# Install requirements
pip install torch torchvision torchaudio
pip install tensorflow
pip install numpy pandas matplotlib seaborn scikit-learn jupyter sacred

Option 3: Docker

# Pull the official TensorFlow GPU image
docker pull tensorflow/tensorflow:latest-gpu-jupyter

# Run with GPU support
docker run --gpus all -p 8888:8888 -v $(pwd):/tf/notebooks tensorflow/tensorflow:latest-gpu-jupyter

πŸŽ“ Usage Examples

Quick Start with PyTorch

# Simple MLP for MNIST
cd Pytorch/MLP/3_ImageClassification
python mnist_mlp.py

# CNN for image classification
cd Pytorch/CNN/1_ImageClassification
python cifar10_cnn.py

# RNN for text classification
cd Pytorch/RNN/2_TextClassification
python sentiment_analysis.py

Advanced Architectures

# Vision Transformer
cd Special_Architecture/Vision_Transformers/Scratch
python vision_transformer.py

# ResNet implementation
cd Special_Architecture/Resnet
python sample_resnet.py

# GAN training
cd Special_Architecture/GAN/Simple
python simple_gan.py

TensorFlow Examples

# Basic neural network
cd Tensorflow_Basic/MLP/1_Simple_f_approx
python function_approximation.py

# Advanced CNN
cd Tenflow_Advance/CNN/1_ImageClassification
python advanced_cnn.py

πŸ“– Learning Path

🌱 Beginner Path

  1. Start with basics: Tensorflow_Basic/MLP/1_Simple_f_approx
  2. Learn CNNs: Tensorflow_Basic/CNN/1_ImageClassification
  3. Explore RNNs: Tensorflow_Basic/RNN/1_ChirpApprox
  4. PyTorch transition: Pytorch/Lecture/1-pytoch_basics

πŸš€ Intermediate Path

  1. Advanced MLPs: Pytorch/MLP/3_ImageClassification
  2. CNN architectures: Pytorch/CNN/1_ImageClassification
  3. RNN applications: Pytorch/RNN/2_TextClassification
  4. Experiment tracking: Pytorch/MLP/5_SacredExperiments

🎯 Advanced Path

  1. Vision Transformers: Special_Architecture/Vision_Transformers
  2. GANs: Special_Architecture/GAN
  3. ResNet: Special_Architecture/Resnet
  4. Novel architectures: Special_Architecture/KAN

🀝 Contributing

We welcome contributions! Please see our Contributing Guidelines for details.

How to Contribute

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Commit your changes: git commit -m 'Add amazing feature'
  4. Push to the branch: git push origin feature/amazing-feature
  5. Open a Pull Request

Contribution Areas

  • πŸ› Bug fixes
  • πŸ“š Documentation improvements
  • ✨ New architecture implementations
  • πŸ§ͺ Additional examples and tutorials
  • πŸ”§ Performance optimizations

πŸ“Š Repository Statistics

  • Total Implementations: 50+ neural network architectures
  • Frameworks Covered: PyTorch, TensorFlow
  • Application Domains: Computer Vision, NLP, Time Series, Generative Models
  • Educational Content: 10+ comprehensive tutorials
  • Code Quality: Documented, tested, and production-ready

πŸ† Featured Implementations

  • πŸ—οΈ Vision Transformer: Complete from-scratch implementation with detailed explanations
  • πŸ€– ResNet: Comprehensive residual network with multiple variants
  • 🎨 GANs: Simple to advanced generative models
  • πŸ”— KAN: Novel Kolmogorov-Arnold Networks
  • 🌐 Seq2Seq: Neural machine translation systems

πŸ“ž Support

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


⭐ Star this repository if you find it helpful!

Made with ❀️ by the Deep Learning Community

About

This is repository has all files and instruction needed for deep learning class.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages