Skip to content

This repository contains code for our Natural Computing final project, called Structure-Based Evolution of Convolutional Neural Network Architectures.

License

Notifications You must be signed in to change notification settings

TimovNiedek/CNN-Evolution

Repository files navigation

CNN-Evolution

This repository contains code for our Natural Computing final project, called Structure-Based Evolution of Convolutional Neural Network Architectures.

We created a system that uses a genetic algorithm to generate convolutional neural networks. These networks are tested on the CIFAR-10 benchmark dataset. Our best network achieved a validation accuracy of 80%.

Modify and run main.py to generate and train networks using the given settings.

Dependencies

  • Keras
  • TensorFlow
  • Matplotlib
  • Numpy
  • Pandas

Files

  • initialization.py: module for creating random network representations (as dictionaries) that are accepted by the genetic algorithm.
  • main.py: main file of this project.
  • run_benchmark_model.py: module for creating a benchmark CNN based on VGGNET and training it on CIFAR-10.
  • run_dict_model.py: module for creating a CNN model in Keras based on a network representation as generated by the genetic algorithm.
  • utils.py: module containing utility functions for saving and loading objects using cPickle.
  • validate.py: module for validating a given network representation.

Authors

  • Lars Kuijpers
  • Jeroen Manders
  • Timo van Niedek

About

This repository contains code for our Natural Computing final project, called Structure-Based Evolution of Convolutional Neural Network Architectures.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages