MustafaMarwat / DeepNetBuilder

This repository hosts a comprehensive project for building deep neural networks from the scratch. Dive into the world of deep learning by exploring step-by-step implementations of neural networks, from basic two-layer models to advanced architectures, all coded from scratch

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DeepNetBuilder: Building Deep Neural Networks from Scratch for Image Classification

Welcome to DeepNetBuilder, an in-depth project that will guide you through the process of building deep neural networks from scratch, specifically tailored for image classification tasks. If you're eager to delve into the exciting world of deep learning and want to understand the inner workings of neural networks, you've come to the right place.

Deep learning has revolutionized the field of artificial intelligence and image classification. Understanding how deep neural networks work, from basic two-layer models to more advanced architectures, is essential for harnessing the power of AI.

Project Overview

  • Part 1: Neural Networks and Deep Learning

    • In this part, we build a solid foundation by understanding the basic building blocks of neural networks.
    • We implement a logistic regression model for binary classification and a basic neural network with one hidden layer.
    • Learn about forward and backward propagation, activation functions, and vectorized implementations.
    • Gain insights into the mechanics of gradient descent and backpropagation.
    • Part 1 code: Building DNN from Scratch
  • Part 2: Building Deep Neural Networks

    • In Part 2, we take a deep dive into constructing deep neural networks.
    • We build two different models: a 2-layer neural network and an L-layer deep neural network.
    • Explore the architectures and methodologies for training deep networks.
    • Gain hands-on experience by training models on a "Cat vs. Non-Cat" dataset.
    • Understand the principles and best practices for optimizing deep neural networks.
    • Part 2 code: Cat Classification Via DNN

Prerequisites

  • Basic knowledge of Python and NumPy.
  • Familiarity with machine learning and neural networks is helpful but not required.

Installation

  1. Clone this repository: git clone https://github.com/yourusername/deep-net-builder.git
  2. Navigate to the project directory: cd deep-net-builder
  3. Install the required dependencies: pip install -r requirements.txt

Usage

  • Open the Jupyter notebooks provided in each part to learn about the fundamentals of deep neural networks.
  • Execute the code cells to see the models in action, and experiment with your own configurations.
  • Feel free to test the models on your own datasets or images.

License

This project is open-source

Acknowledgments

This project is inspired by the Deep Learning Specialization on Coursera by Andrew Ng. Many thanks to the creators and contributors of the Python libraries and packages that make this project possible.

Contact

For questions or suggestions, please feel free to reach out to the project maintainer

  • Muhammad Mustafa Khan

About

This repository hosts a comprehensive project for building deep neural networks from the scratch. Dive into the world of deep learning by exploring step-by-step implementations of neural networks, from basic two-layer models to advanced architectures, all coded from scratch


Languages

Language:Jupyter Notebook 71.8%Language:Python 28.2%