This repository archives my solutions for the programming assignments in the Deep Learning Specialization by Andrew Ng, offered through Coursera. The five-course program provides a comprehensive foundation in deep learning, covering concepts from foundational neural networks to advanced applications in computer vision and natural language processing.
This repository contains my implementations of the various models and techniques taught throughout the specialization.
The specialization is composed of five courses, each with hands-on programming assignments. My solutions, implemented in Python using TensorFlow and Keras, are organized by course.
| Course | Key Topics Covered | Status |
|---|---|---|
| 1. Neural Networks and Deep Learning | Foundational concepts, building shallow and deep neural networks, forward & backpropagation, and vectorization. | Complete |
| 2. Improving Deep Neural Networks | Hyperparameter tuning, regularization (L2, Dropout), optimization algorithms (Adam, RMSprop), and batch normalization. | Complete |
| 3. Structuring Machine Learning Projects | ML strategy, bias/variance trade-offs, error analysis, and transfer learning. (No programming assignments) | Complete |
| 4. Convolutional Neural Networks | CNN architecture, classic networks (ResNet), object detection (YOLO), face recognition, and neural style transfer. | Pending |
| 5. Sequence Models | RNNs, LSTMs, GRUs, word embeddings, attention mechanisms, and the Transformer architecture for NLP. | Pending |
The assignments are implemented in Python 3. The primary libraries and frameworks used are:
- NumPy: For numerical and array operations.
- Matplotlib: For data visualization.
- TensorFlow & Keras: For building, training, and optimizing deep neural networks.
- Scikit-learn: For utility functions and data processing.
- Pandas: For data manipulation and analysis.
I would like to express my gratitude to Andrew Ng and the entire team at DeepLearning.AI for creating this exceptional and highly educational specialization.