LeonM789 / 3-Layer-Perceptron-Neural-Network

Neural network that uses three layers of interconnected neurons to learn and make predictions on complex data

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool


Markdownify
3 Layer Perceptron

A simple version of a neural network.


📝 Introduction

This repository contains Matlab code, test data, and input data for a 3-layer perceptron, a type of artificial neural network that consists of an input layer, a hidden layer, and an output layer. The network is trained using the backpropagation algorithm to approximate linear and non linear relationships of the input data. It also shows the progress in a live plot during the calculations.


🛠️ Requirements

The code in this repository is written in Matlab, and requires the following toolboxes:

  • Symbolic Math Toolbox

💡 Usage

To train and test the 3-layer perceptron, simply run the Perceptron.m script and then choose the following hyperparameters:

testing data: just select the already existing testing data file or select your own
training data: same as above
activation function = x^2
neurons: 90
learning rate: 0.05 (should be smaller than 0.1)
epochs: 1000

This will train and test the network on the specified datasets, with the specified number of neurons, learning rate, number of epochs, and activation function. You will see the progress of the error and the results in a live plot during the calculations. At the end you get 3 plots as an overview and the results in the terminal.


🗂️ Example Datasets

The repository includes 2 example datasets. The dataset for training TrainData.csv consists of 45 training examples and the testing data TestData.csv 13 validation examples, each with 3 input features and a single output label. The goal of the network is to predict the output label based on the input features.


⚖️ License

This project is licensed under the MIT License - see the LICENSE file for details.



leonmarx.de  ·  GitHub @LeonM789

About

Neural network that uses three layers of interconnected neurons to learn and make predictions on complex data


Languages

Language:MATLAB 100.0%