Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/abhinavsharma07/neural-network-using_numpy

Introduction to Neural Networks (Create a neural network using Numpy)
https://github.com/abhinavsharma07/neural-network-using_numpy

accuracy feed-forward model neural-networks numpy prediction

Last synced: 16 days ago
JSON representation

Introduction to Neural Networks (Create a neural network using Numpy)

Awesome Lists containing this project

README

        

# Neural Network Using Numpy

![MNIST Logo](https://upload.wikimedia.org/wikipedia/commons/2/27/MnistExamples.png)

## Introduction

Welcome to the **Neural Network Using Numpy** project! 🎉 In this assignment, you'll dive into the fascinating world of neural networks by building one from scratch using just **Numpy**. Your goal is to create a network that can classify handwritten digits (0-9) from the MNIST dataset.

## Table of Contents
- [Introduction](#introduction)
- [Project Overview](#project-overview)
- [Sections Covered](#sections-covered)
- [Requirements](#requirements)
- [Getting Started](#getting-started)
- [Model Training and Predictions](#model-training-and-predictions)
- [Resources](#resources)
- [Jupyter Notebook Viewer](#jupyter-notebook-viewer)

## Project Overview

In this project, you will:
- Implement the essential steps to build a neural network.
- Perform feedforward operations.
- Compute loss functions.
- Execute backpropagation for optimization.
- Update parameters (weights and biases).
- Train your model to classify handwritten digits.

## Sections Covered

1. **Data Preparation**: Load and preprocess the MNIST dataset.
2. **Feedforward**: Implement the forward pass of the network.
3. **Loss Computation**: Calculate the loss to measure the accuracy of the network.
4. **Backpropagation**: Compute gradients to optimize the network.
5. **Parameter Updates**: Adjust the weights and biases to improve model performance.
6. **Model Training and Predictions**: Train the neural network and make predictions on new data.

## Requirements

Before you begin, ensure you have the following installed:

- Python 3.x
- Numpy
- Matplotlib (optional, for visualization)

## Getting Started

To get started with the project:

1. Clone the repository:
```bash
git clone https://github.com/AbhinavSharma07/Neural-Network-Using_NUMPY.git
```
2. Navigate to the project directory:
```bash
cd Neural-Network-using-Numpy
```
3. Install the required dependencies:
```bash
pip install -r requirements.txt
```
4. Load the dataset:
- You can refer to the `mnist.pkl.gz` file for the dataset.
- The file will be automatically loaded in the Jupyter notebook.

5. Open the Jupyter Notebook to start coding:
```bash
jupyter notebook Neural-Network-using-Numpy.ipynb
```

## Model Training and Predictions

The notebook is designed to guide you through the entire process of building and training a neural network. By the end of this project, you'll have a fully functional model capable of recognizing handwritten digits with high accuracy.

## Resources

- **MNIST Dataset**: The classic dataset for handwritten digit recognition.
- **Numpy Documentation**: [Numpy Official Documentation](https://numpy.org/doc/).
- **Neural Networks**: Understanding how neural networks work and their applications.