Git Product home page Git Product logo

saoodcs / backpropagation-algorithm Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 147 KB

This is a project I did as part of my Computer Science degree. It involves designing a MLP backpropagation algorithm, which taking a dataset of 8 predictors and 1 predictant, splitting the dataset and evaluating its performance in predicting the predicant on the test sub-dataset.

License: Apache License 2.0

Python 100.00%
artificial-neural-networks artificial-intelligence backpropagation predictive-modeling

backpropagation-algorithm's Introduction


Logo

Error-Correcting MLP Backpropagation Algorithm

This is a project I did as part of my Computer Science degree. It involves designing a MLP backpropagation algorithm, which taking a dataset of 8 predictors and 1 predictant, splitting the dataset and evaluating its performance in predicting the predicant on the test sub-dataset.

Table of Contents
  1. About The Project
  2. Getting Started
  3. User Guide
  4. Contributing
  5. License
  6. Contact

About The Project

The purpose of this project was implement an artificial neural network, more specifically and multi layered perceptron, trained using the error backpropagation algorithm. The process included data pre-processing (splitting the data into training, validation and test subsets and standardising the data) and creating, training, and implementing the neural network to predict index floods from the given data set.

The performance of the neural network is measured using a variety of different performance evaluations, including: RMS (Root Mean Squared), RSME (Root Mean Squared Deviation), and MSRE (Mean Squared Relative Error) to name a few.

A graph is also plotted to show the actual outputs from the test dataset (x axis) against the predictions that the network made from the test dataset predictors. An example screenshot of this graph is shows below:
Logo

Built With

This section lists all major frameworks, programming languages, packages and libraries used throughout the project.

Getting Started

To set up this project, get a local copy up and running by either cloning this repository to your IDE, or downloading the ZIP file of the repository and opening it in your IDE.

Prerequisites

You will need to install the following software in order to run this project.

Installation

  1. Download the latest version of Python. The download link and installation guide can be found on the following link: https://www.python.org/downloads/
  2. Download Jupyter Notebook for an enhanced experience when running the project (optional): https://jupyter.org/
  3. Download all the python libraries listed above in the prerequisites section: Prerequisites
  4. Clone the repository to your IDE through the command line using the "git" function or through your IDE. Copy the following repository URL:
    https://github.com/SaoodCS/Backpropagation-Algorithm
  5. Run the python file "Backprop Alg with Bold Driver" in your IDE.

User Guide

  1. Run the python file "Backprop Alg with Bold Driver" in your IDE.
  2. Enter 8 as the number of inputs, 1 as the number of outputs (as this is the predictors and predictant of this specific dataset in dataset.txt.)NOTE: You can run the algorithm on your own dataset too by formatting it into a txt file and saving it to the same folder as the algorithm (the first x columns on the LHS should be the inputs and the last x columns on the RHS shoulf be the outputs).
  3. Enter any number between 4 and 14 as the number of nodes in the hidden layer.
  4. The output of this algorithm will illustrate the performance of this algorithm based on the predictors in the test dataset. These performance analyses include: RMS (Root Mean Squared), RSME (Root Mean Squared Deviation), and MSRE (Mean Squared Relative Error) to name a few.
  5. The scatter graph plotted in the output shows the actual outputs from the test dataset (x axis) against the predictions that the network made from the test dataset predictors.

Contributing

As of now, this project isn't open to contributions. The only contributer is myself, though this may change in the future.

License

Distributed under the MIT License.

Contact

Saood - [email protected]

Project Link: https://github.com/SaoodCS/Backpropagation-Algorithm

backpropagation-algorithm's People

Contributors

saoodcs avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.