Neural Architecture Search as Multiobjective Optimization Benchmarks: Problem Formulation and Performance Assessment arXiv
EvoXBench is a platfrom offering instant benchmarking of evolutionary multi-objective optimization (EMO) algorithms in neural architecture search (NAS), with ready to use test suites. It facilitates efficient performance assessments with NO requirement of GPUs or PyTorch/TensorFlow, enhancing accessibility for a broader range of research applications. It encompasses extensive test suites that cover a variety of datasets (CIFAR10, ImageNet, Cityscapes, etc.), search spaces (NASBench101, NASBench201, NATS, DARTS, ResNet50, Transformer, MNV3, MoSegNAS, etc.), and hardware devices (Eyeriss, GPUs, Samsung Note10, etc.). It provides a versatile interface compatible with multiple programming languages (Java, Matlab, Python, etc.).
📢 Latest News & Updates
-
EvoXBench has been updated to version 1.0.5! This latest release addresses bugs in CitySeg/MOP10 and HV calculation in the CitySeg/MOP test suite.
If you're already onboard with EvoXBench, give this command a spin:
pip install evoxbench==1.0.5.
⭐️ Key Features
📐 General NAS Problem Formulation
- Formulating NAS tasks into general multi-objective optimization problems.
- Exploring NAS's nuanced traits through the prism of evolutionary optimization.
🛠️ Efficient Benchmarking Pipeline
- Presenting an end-to-end worflow for instant benchmark assessments of EMO algorithms.
- Providing instant fitness evaluations as numerical optimization.
📊 Comprehensive Test Suites
- Encompassing a wide spectrum of datasets, search spaces, and hardware devices.
- Ready-to-use test multi-objective optimization suites with up to eight objectives.
Get Started
Tap the image to embark on the introductory video voyage.
Setup & Installation
-
Download requisite files:
-
database.zipvia Google Drive or Baidu云盘(提取码:mhgs) -
data.zipvia Google Drive or Baidu云盘(提取码:9z45)
-
-
Run
pip install evoxbenchto get the benchmark. -
Configure the benchmark:
from evoxbench.database.init import config
config("Path to database", "Path to data")
# For instance:
# With this structure:
# /home/Downloads/
# └─ database/
# | | __init__.py
# | | db.sqlite3
# | | ...
# |
# └─ data/
# └─ darts/
# └─ mnv3/
# └─ ...
# Then, execute:
# config("/home/Downloads/database", "/home/Downloads/data")
About the Database
Explore our comprehensive database and understand its structure and content. Check it out here.
Community & Support
- Use the issue tracker for bugs or questions.
- Submit your enhancements through a pull request (PR).
- We have an active QQ group (ID: 297969717).
- Official Website: https://evox.group/
Sister Projects
- EvoX: A computing framework for distributed GPU-aceleration of evolutionary computation, supporting a wide spectrum of evolutionary algorithms and test problems. Check out here.
Citing EvoXBench
If you use EvoXBench in your research and want to cite it in your work, please use:
@article{EvoXBench,
title={Neural Architecture Search as Multiobjective Optimization Benchmarks: Problem Formulation and Performance Assessment},
author={Lu, Zhichao and Cheng, Ran and Jin, Yaochu and Tan, Kay Chen and Deb, Kalyanmoy},
journal={IEEE Transactions on Evolutionary Computation},
year={2023},
publisher={IEEE}
}
Acknowledgements
A big shoutout to the following projects that have made EvoXBench possible:
NAS-Bench-101, NAS-Bench-201, NAS-Bench-301, NATS-Bench, Once for All, AutoFormer, Django, pymoo.
Metadata
Release files for evoxbench 1.0.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| evoxbench-1.0.5.tar.gz | 102.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| evoxbench-1.0.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 286.0 kB
Release files / evoxbench-1.0.5.tar.gz
| Download URL | evoxbench-1.0.5.tar.gz |
|---|---|
| Size | 102.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d770e8ed44cb2656843a312a42f2f12e00113de62ee24255c3516308eb4c8d80
|
|
BLAKE2b-256 checksum How to use checksums |
510f408cc48558b94b770c430f7beee3699df6ba75109d8d9b366d96b5678ef3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.10.13
|
Release files / evoxbench-1.0.5-py3-none-any.whl
| Download URL | evoxbench-1.0.5-py3-none-any.whl |
|---|---|
| Size | 183.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8e46a5351fffa021e38b6200740bc4a4c5c47737f7cc4ac77f9c430934ded341
|
|
BLAKE2b-256 checksum How to use checksums |
744c8fa6e697060f9b9ba7c7827983f541ffdda7df560f0f75fbf98dc9685427
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.10.13
|