Educational implementation of neuroevolutionary ESP-algorithm for training fully connected neural network.
Project was made within course of Neuroevolutionary Computing in Tomsk Polytechnic University.
Following packages were used in project: CommandLineParser, CsvHelper, Microsoft.Extensions.DependencyInjection, Microsoft.Extensions.DependencyInjection.Abstractions, Newtonsoft.Json ScottPlot.
- Training fully connected neural network using ESP-algorithm
- Visualisation of training results (metrics, model architecture, best model so far and etc.)
ESP can be used to evolve any type of neural network that consists of a single hidden
layer, such as feed-forward, simple recurrent (Elman), fully recurrent, and second-order
networks
Used algorithm can be found in this paper.
- Pull repository to your local machine
- Ensure that you have .NET 6 installed
- Open Solution in IDE (Visual Studio, Rider)
- Set up command line arguments, more info here (-p 3 -n 20 -f {path-to-repository}\esp\Datasets\cancer1.csv)
- Open StartUp.cs, set additional parameters (TargetFitness, GenerationsLimit, TrainingTimeLimit)
- Run Ga.Host project.
- Output files will be available in {path-to-repository}\esp\src\Ga.Host\bin\Debug\net6.0\yyyy-MM-dd/HH-mm-ss