{"id":21050660,"url":"https://github.com/adolbyb/deep-learning-python","last_synced_at":"2026-04-17T01:03:07.619Z","repository":{"id":159077911,"uuid":"594123726","full_name":"ADolbyB/deep-learning-python","owner":"ADolbyB","description":"A collection of code for CAP 4613: Intro to Deep Learning","archived":false,"fork":false,"pushed_at":"2023-04-30T04:07:42.000Z","size":81933,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-20T18:34:44.662Z","etag":null,"topics":["convolutional-neural-networks","deep-learning","gradient-descent","jupyter-notebook","keras","machine-learning","neural-networks","perceptron-algorithm","python","tensorflow"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ADolbyB.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-01-27T16:50:54.000Z","updated_at":"2024-07-22T19:35:07.000Z","dependencies_parsed_at":"2023-07-27T18:03:56.502Z","dependency_job_id":null,"html_url":"https://github.com/ADolbyB/deep-learning-python","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ADolbyB%2Fdeep-learning-python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ADolbyB%2Fdeep-learning-python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ADolbyB%2Fdeep-learning-python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ADolbyB%2Fdeep-learning-python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ADolbyB","download_url":"https://codeload.github.com/ADolbyB/deep-learning-python/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243495495,"owners_count":20299923,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["convolutional-neural-networks","deep-learning","gradient-descent","jupyter-notebook","keras","machine-learning","neural-networks","perceptron-algorithm","python","tensorflow"],"created_at":"2024-11-19T15:46:46.325Z","updated_at":"2026-04-17T01:03:07.605Z","avatar_url":"https://github.com/ADolbyB.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n# Deep Learning with Python\n### Introduction to Neural Networks \u0026 Machine Learning\n\n[![Stars](https://img.shields.io/github/stars/ADolbyB/deep-learning-python?style=for-the-badge\u0026logo=github)](https://github.com/ADolbyB/deep-learning-python/stargazers)\n[![Forks](https://img.shields.io/github/forks/ADolbyB/deep-learning-python?style=for-the-badge\u0026logo=github)](https://github.com/ADolbyB/deep-learning-python/network/members)\n[![Repo Size](https://img.shields.io/github/repo-size/ADolbyB/deep-learning-python?label=Repo%20Size\u0026logo=Github\u0026style=for-the-badge)](https://github.com/ADolbyB/deep-learning-python)\n[![Last Commit](https://img.shields.io/github/last-commit/ADolbyB/deep-learning-python?style=for-the-badge\u0026logo=github)](https://github.com/ADolbyB/deep-learning-python/commits/main)\n\n[![Python](https://img.shields.io/badge/Python-3776AB?style=for-the-badge\u0026logo=python\u0026logoColor=white)](https://www.python.org/)\n[![TensorFlow](https://img.shields.io/badge/TensorFlow-FF6F00?style=for-the-badge\u0026logo=tensorflow\u0026logoColor=white)](https://www.tensorflow.org/)\n[![Keras](https://img.shields.io/badge/Keras-D00000?style=for-the-badge\u0026logo=keras\u0026logoColor=white)](https://keras.io/)\n[![Jupyter](https://img.shields.io/badge/Jupyter-F37626?style=for-the-badge\u0026logo=jupyter\u0026logoColor=white)](https://jupyter.org/)\n\n**Developed by:** [![ADolbyB](https://img.shields.io/badge/ADolbyB-Profile-blue?style=for-the-badge\u0026logo=github)](https://github.com/ADolbyB)\n\n\u003c/div\u003e\n\n---\n\n## 📚 Course Overview\n\n**Course:** Introduction to Deep Learning\n**Focus:** Practical implementation of neural networks and deep learning algorithms using Python\n\nThis repository contains a comprehensive collection of Jupyter notebooks, assignments, and practice implementations covering fundamental to advanced deep learning concepts. All code is written in Python using industry-standard frameworks including TensorFlow and Keras.\n\n---\n\n## 🎯 Learning Objectives\n\nThis repository demonstrates mastery of:\n\n✅ **Neural Network Fundamentals** - Perceptrons, activation functions, backpropagation  \n✅ **Deep Learning Architectures** - CNNs, RNNs, and specialized networks  \n✅ **Gradient Descent Optimization** - SGD, Adam, RMSprop, learning rate scheduling  \n✅ **TensorFlow \u0026 Keras** - Model building, training, and deployment  \n✅ **Computer Vision** - Image classification, feature extraction, transfer learning  \n✅ **Model Evaluation** - Training/validation splits, performance metrics, overfitting prevention  \n\n---\n\n## 📂 Repository Structure\n\n```\ndeep-learning-python/\n├── assets/                         # Handwritten solutions for assignments and lectures\n│   ├── HW1/                        # Assets for assignment1.ipynb\n│   ├── HW2/                        # Assets for assignment2.ipynb\n│   ├── ...\n│   ├── HW6/                        # Assets for assignment6.ipynb\n│   ├── Lecture2/                   # Assets for lecture2.ipynb\n│   └── Lecture6/                   # Assets for lecture6a/b/c/d.ipynb\n├── Assignments/                    # Python code for Deep Learning\n│   ├── assignment1-test.ipynb      # Test script for Assignment 1\n│   ├── assignment1.ipynb           # Code for Assignment 1\n│   ├── assignment2-test.ipynb      # Test script for Assignment 2\n│   ├── assignment2.ipynb           # Code for Assignment 2\n│   ├── ...\n│   └── assignment6.ipynb           # Code for Assignment 6\n├── Lectures/                       # Lecture notebooks and examples\n│   ├── lecture1.ipynb              # Code from 1st week of lectures\n│   ├── lecture1.ipynb              # Code from 2nd week of lectures\n│   ├── ...\n│   └── lecture7e.ipynb             # Code from 7th week of lectures\n├── PracticeExams/                  # Exam prep materials\n│   ├── 3dplotTest.ipynb/           # 3D rendering script for GPU testing\n│   ├── practiceExam1-11.ipynb      # Midterm practice problems\n│   ├── practiceExam1-12.ipynb      # Midterm practice problems\n│   ├── practiceExam1-13.ipynb      # Midterm practice problems\n│   ├── practiceExam1-14.ipynb      # Midterm practice problems\n│   ├── practiceExam1-15.ipynb      # Midterm practice problems\n│   └── quiz5.ipynb                 # Practice quiz question\n├── assets/                         # Images, diagrams, and resources\n└── README.md                       # This document\n```\n\n---\n\n## 🧠 Topics Covered\n\n### Fundamental Concepts\n\n**1. Perceptron Algorithm**\n- Single-layer perceptrons\n- Linear separability\n- Decision boundaries\n- Weight updates and bias\n\n**2. Neural Networks**\n- Multi-layer perceptrons (MLPs)\n- Activation functions (ReLU, sigmoid, tanh, softmax)\n- Forward propagation\n- Backpropagation algorithm\n\n**3. Gradient Descent**\n- Batch gradient descent\n- Stochastic gradient descent (SGD)\n- Mini-batch gradient descent\n- Momentum and adaptive learning rates\n\n### Advanced Architectures\n\n**4. Convolutional Neural Networks (CNNs)**\n- Convolution layers and kernels\n- Pooling operations (max, average)\n- Feature maps and filters\n- Image classification tasks\n\n**5. Deep Learning Techniques**\n- Dropout regularization\n- Batch normalization\n- Transfer learning\n- Data augmentation\n\n**6. Model Optimization**\n- Loss functions (MSE, cross-entropy)\n- Optimizers (Adam, RMSprop, Adagrad)\n- Learning rate scheduling\n- Early stopping\n\n---\n\n## 🛠️ Technology Stack\n\n| Technology | Purpose | Documentation |\n|------------|---------|---------------|\n| **Python 3.x** | Core programming language | [Python Docs](https://docs.python.org/3/) |\n| **TensorFlow** | Deep learning framework | [TensorFlow](https://www.tensorflow.org/) |\n| **Keras** | High-level neural network API | [Keras Docs](https://keras.io/) |\n| **Jupyter Notebook** | Interactive development environment | [Jupyter](https://jupyter.org/) |\n| **NumPy** | Numerical computations | [NumPy Docs](https://numpy.org/) |\n| **Matplotlib** | Data visualization | [Matplotlib](https://matplotlib.org/) |\n| **scikit-learn** | Machine learning utilities | [scikit-learn](https://scikit-learn.org/) |\n\n---\n\n## 🚀 Getting Started\n\n### Prerequisites\n\n**Python Environment:**\n- Python 3.8 or higher\n- Mambaforge package manager (recommended)\n- Conda/Mamba environments\n\n**Hardware Setup:**\n- **Development Machine:** Dell Precision 5540 Laptop\n  - Intel Core i9 processor\n  - **NVIDIA Quadro T2000 (4GB VRAM)** - GPU acceleration for model training\n  - CUDA-enabled TensorFlow for local GPU training\n  - 16GB+ system RAM recommended\n  - SSD storage for faster data loading\n\n\u003e 💡 **GPU Advantage:** All models in this repository were trained using the NVIDIA Quadro T2000, significantly reducing training time compared to CPU-only execution. TensorFlow automatically detects and utilizes the GPU when properly configured.\n\n### Installation\n\n**Using Mambaforge (Recommended):**\n\n```bash\n# Clone the repository\ngit clone https://github.com/ADolbyB/deep-learning-python.git\ncd deep-learning-python\n\n# Create conda environment with Python 3.10\nmamba create -n deep-learning python=3.10\nmamba activate deep-learning\n\n# Install TensorFlow with GPU support\nmamba install -c conda-forge tensorflow-gpu cudatoolkit cudnn\n\n# Install additional packages\nmamba install -c conda-forge keras numpy matplotlib jupyter scikit-learn pandas\n\n# Verify GPU detection\npython -c \"import tensorflow as tf; print('GPU Available:', tf.config.list_physical_devices('GPU'))\"\n\n# Launch Jupyter Notebook or VS Code\njupyter notebook\n# Or use VS Code with Jupyter extension\n```\n\n**Environment Location:**\n- Conda environments stored at: `~/mambaforge/envs/deep-learning/`\n- Package cache: `~/mambaforge/pkgs/`\n\n**VS Code Setup (GPU-Accelerated Development):**\n\n1. Install VS Code extensions:\n   - Python\n   - Jupyter\n   - Pylance\n\n2. Select the conda environment:\n   - Press `Ctrl+Shift+P`\n   - Type \"Python: Select Interpreter\"\n   - Choose `~/mambaforge/envs/deep-learning/bin/python`\n\n3. Open any `.ipynb` notebook and run cells with GPU acceleration\n\n\u003e 🎯 **Pro Tip:** Use `watch -n 1 nvidia-smi` in a separate terminal to monitor GPU utilization during training.\n\n### Quick Start\n\n1. **Navigate to Lectures** - Start with `Lectures/` for fundamentals\n2. **Work through Assignments** - `Assignments/` are structured in order to follow assignments\n3. **Review Practice Exams** - Test and modify to understand concepts\n4. **Experiment** - Modify code and explore different approaches\n\n---\n\n## 📊 Sample Projects\n\n### Assignment Highlights\n\n**Perceptron Implementation**\n- From-scratch perceptron algorithm\n- Visualization of decision boundaries\n- Binary classification problems\n\n**Neural Network Training**\n- Multi-layer network construction\n- Custom training loops\n- Performance evaluation and metrics\n\n**CNN Image Classification**\n- Image preprocessing pipelines\n- Convolutional layer design\n- Transfer learning with pre-trained models\n\n---\n\n## 🎓 Academic Context\n\n**Course:** Introduction to Deep Learning  \n**Level:** Upper-division Computer Science Elective  \n**Format:** Jupyter Notebooks with embedded explanations and visualizations\n\n**Learning Approach:**\n- Theory combined with practical implementation\n- Progressive difficulty from fundamentals to advanced topics\n- Real-world datasets and problems\n- Emphasis on understanding *why* algorithms work, not just *how*\n\n---\n\n## 📖 Key Learning Resources\n\n### Official Documentation\n- [TensorFlow Tutorials](https://www.tensorflow.org/tutorials)\n- [Keras Getting Started Guide](https://keras.io/getting_started/)\n- [Deep Learning Specialization](https://www.coursera.org/specializations/deep-learning) - Coursera\n\n### Recommended Reading\n- \"Deep Learning\" by Ian Goodfellow, Yoshua Bengio, Aaron Courville\n- \"Hands-On Machine Learning\" by Aurélien Géron\n- \"Neural Networks and Deep Learning\" by Michael Nielsen (free online)\n\n### Video Resources\n- [3Blue1Brown: Neural Networks](https://www.youtube.com/playlist?list=PLZHQObOWTQDNU6R1_67000Dx_ZCJB-3pi)\n- [Sentdex: Deep Learning with Python](https://www.youtube.com/playlist?list=PLQVvvaa0QuDfhTox0AjmQ6tvTgMBZBEXN)\n- [Stanford CS231n: CNNs for Visual Recognition](http://cs231n.stanford.edu/)\n\n---\n\n## 💡 Best Practices Demonstrated\n\n**Code Organization:**\n- ✅ Modular, reusable functions\n- ✅ Clear variable naming and documentation\n- ✅ Proper train/validation/test splits\n- ✅ Reproducible results with random seeds\n\n**Model Development:**\n- ✅ Baseline model establishment\n- ✅ Iterative improvement and experimentation\n- ✅ Hyperparameter tuning\n- ✅ Performance visualization and analysis\n\n**Documentation:**\n- ✅ Markdown cells explaining concepts\n- ✅ Inline comments for complex operations\n- ✅ Visualizations of results and metrics\n- ✅ Lessons learned and insights\n\n---\n\n## 🤝 Contributing\n\nWhile this is primarily a coursework repository, improvements are welcome:\n\n- 📝 Documentation enhancements\n- 🐛 Bug fixes in implementations\n- 💡 Additional examples or explanations\n- 🎨 Visualization improvements\n\nPlease open an issue or submit a pull request!\n\n---\n\n## 📄 License\n\nThis project is licensed under the GNU GPL v3 License - see the [LICENSE.md](https://github.com/ADolbyB/deep-learning-python/blob/main/LICENSE.md) file for details.\n\n**Academic Integrity Notice**: This repository represents completed coursework. If you're currently enrolled in a similar course, please use this as reference material only and adhere to your institution's academic honesty policies.\n\n---\n\n## 📧 Contact\n\n**GitHub:** [Joel Brigida](https://github.com/ADolbyB)  \n**LinkedIn:** [Joel Brigida](https://www.linkedin.com/in/joelmbrigida/)\n\nQuestions about implementations or concepts? Feel free to open an issue!\n\n---\n\n## 📊 Repository Stats\n\n\u003cdiv align=\"center\"\u003e\n\n![Repo Size](https://img.shields.io/github/repo-size/ADolbyB/deep-learning-python?style=for-the-badge\u0026logo=github)\n![Languages Count](https://img.shields.io/github/languages/count/ADolbyB/deep-learning-python?style=for-the-badge\u0026logo=python)\n![Top Language](https://img.shields.io/github/languages/top/ADolbyB/deep-learning-python?style=for-the-badge\u0026logo=jupyter)\n![Commits](https://img.shields.io/github/commit-activity/t/ADolbyB/deep-learning-python?style=for-the-badge\u0026logo=github)\n\n\u003c/div\u003e\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\n**Master Deep Learning. Build Intelligent Systems. Transform Data into Insights.**\n\n*From perceptrons to production-ready neural networks* 🧠\n\n[![GitHub](https://img.shields.io/badge/Follow-ADolbyB-blue?style=for-the-badge\u0026logo=github)](https://github.com/ADolbyB)\n\n\u003c/div\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadolbyb%2Fdeep-learning-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadolbyb%2Fdeep-learning-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadolbyb%2Fdeep-learning-python/lists"}