Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ludwigandreas/simplemlp
Implementation of a basic multilayer perceptron using C++ without any external libraries. Qt framework is used for GUI, project is written according to MVC design pattern. The project is a part of the School 21 curriculum.
https://github.com/ludwigandreas/simplemlp
Last synced: 4 days ago
JSON representation
Implementation of a basic multilayer perceptron using C++ without any external libraries. Qt framework is used for GUI, project is written according to MVC design pattern. The project is a part of the School 21 curriculum.
- Host: GitHub
- URL: https://github.com/ludwigandreas/simplemlp
- Owner: LudwigAndreas
- License: other
- Created: 2023-01-26T11:39:20.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2024-06-18T12:32:46.000Z (7 months ago)
- Last Synced: 2024-11-07T12:47:42.970Z (about 2 months ago)
- Language: C++
- Homepage:
- Size: 3.96 MB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Multi Layer Perceptron
Implementation of a basic multilayer perceptron using C++ without any external libraries. Qt framework is used for GUI, project is written according to MVC design pattern. The project is a part of the School 21 curriculum.
## Table of Contents
- [About](#about)
- [Features](#features)
- [Getting Started](#getting-started)
- [Prerequisites](#prerequisites)
- [Installing](#installing)
- [Running the tests](#running-the-tests)
- [Usage](#usage)
- [Built Using](#built-using)
- [Authors](#authors)
- [Acknowledgements](#acknowledgements)
- [License](#license)## About
This project is a basic implementation of a multilayer perceptron. It allows to train and test the model on a given dataset. The project is written in C++ without any external libraries. The GUI is implemented using the Qt framework. The project is written according to the MVC design pattern.
### Features
- Learning on given training dataset using cross-validation
- Testing trained model with built-in drawing field or by importing pre-drawn image
- Configure model properties for training such as:
- Perceptron implementation type
- Matrix
- Graph
- Matrix
- Number of hidden layers
- Number of neurons (units) per hidden layer
- Learning rate
- Activation Function
- Sigmoid
- Leaky ReLU
- Linear
- Bipolar Sigmoid
- Sigmoid
- Perceptron implementation type
- Import pretrained model
- Testing trained model on testing dataset
## Getting Started
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
### Prerequisites
What things you need to install the software and how to install them.
```text
cmake >= 3.10
gcc >= 7.5.0
Qt >= 6.5.0
```
```bash
sudo apt-get install cmake
sudo apt-get install gcc
sudo apt-get install qt6-base-dev
```
### Installing
A step by step series of examples that tell you how to get a development env running.
Clone the repository.
```bash
git clone
cd MonitoringSystem
```
Run the Makefile with the following command:
```bash
make install
```
## Running the tests
Explain how to run the automated tests for this system.
```bash
make test
```
## Usage
To run the project, execute the following command:
```bash
./SimpleMLP
```
## Built Using
- [C++](https://en.cppreference.com/w/) - Programming language
- [CMake](https://cmake.org/) - Build system
- [Qt](https://doc.qt.io/qt-5/qtwidgets-index.html) - GUI framework
- [Google Test](https://google.github.io/googletest/) - Testing framework
## Authors
This project was developed by:
| |[LudwigAndreas](https://github.com/LudwigAndreas)|
| --- | --- |
| | [AndrefHub](https://github.com/AndrefHub) |
## Acknowledgements
- [School 21](https://21-school.ru/) - Educational institution.
- [Dmitriy Korobchenko](https://youtu.be/bW4dKxtUFpg) for video explaining maths behind back propagation algorithm.
## License
This project is licensed under the School 21 License - see the [LICENSE](LICENSE) file for details.