Designing and constructing neural network topologies using nature-inspired algorithms
Project description
Designing and constructing neural network topologies using nature-inspired algorithms
Description 📝
The proposed method NiaNet attempts to pick hyperparameters and AE architecture that will result in a successful encoding and decoding (minimal difference between input and output). NiaNet uses the collection of algorithms available in the library NiaPy to navigate efficiently in waste search-space.
What it can do? 👀
- Construct novel AE's architecture using nature-inspired algorithms.
- It can be utilized for any kind of dataset, which has numerical values.
Installation ✅
Installing NiaNet with pip3:
pip3 install nianet
Documentation 📘
The paper referring to this source code is currently being published. The link will be posted here once it is available.
Examples
Usage examples can be found here.
Getting started 🔨
Create your own example:
In examples folder create the Python file based on the existing evolve_for_diabetes_dataset.py.
Change dataset:
Change the dataset import function as follows:
from sklearn.datasets import load_diabetes
dataset = load_diabetes()
Specify the search space:
Set the boundaries of your search space with autoencoder.py.
The following dimensions can be modified:
- Topology shape (symmetrical, asymmetrical)
- Size of input, hidden and output layers
- Number of hidden layers
- Number of neurons in hidden layers
- Activation functions
- Number of epochs
- Learning rate
- Optimizer
You can run the NiaNet script once your setup is complete.
Running NiaNet script:
python evolve_for_diabetes_dataset.py
HELP ⚠️
Acknowledgments 🎓
-
NiaNet was developed under the supervision of doc. dr Iztok Fister ml. at University of Maribor.
-
This code is a fork of NiaPy. I am grateful that the authors chose to open-source their work for future use.
License
This package is distributed under the MIT License. This license can be found online at http://www.opensource.org/licenses/MIT.
Disclaimer
This framework is provided as-is, and there are no guarantees that it fits your purposes or that it is bug-free. Use it at your own risk!
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.