How seungyeopkang/eem-nas works
EEM-NAS is a research implementation for budgeted, fixed-proxy zero-shot neural architecture search over NAS-Bench-201. A researcher runs either the proposed memetic search or a comparison baseline; search candidates are scored under a fitness-function-call budget, and the returned architecture can optionally be checked against trained test accuracy. The online scoring path builds a network and computes a zero-cost proxy on cached data; precomputed scores are an alternative. The graph reflects documented capabilities, while some links for unsampled modules are supported by the README rather than inspected source.
Main entry points: evaluator.py FFC evaluator · eem_nas.py EEM-NAS · backends.py Online backend · baselines.py Search baselines
Components 16
Search methods
- EEM-NAS
eem_nas/eem_nas.py - Search baselines
eem_nas/baselines.py - GA operators
eem_nas/operators.py - Search primitives
eem_nas/primitives.py - Local search
eem_nas/local_search.py
Fitness evaluation
- Architecture encoding
eem_nas/encoding.py - FFC evaluator
eem_nas/evaluator.py - Precomputed backend
eem_nas/proxy/backends.py
Online proxy compute
- Online backend
eem_nas/proxy/backends.py - Batch sources
eem_nas/proxy/data.py - NAS-Bench-201 network
eem_nas/proxy/nb201.py - Zero-cost proxies
eem_nas/proxy/proxies.py
Accuracy reference
- Accuracy lookup
eem_nas/proxy/nb201_api.py
Other components
- Researcher
- Dataset providers
- NAS-Bench-201 archive
Connections 18
- Researcher → EEM-NAS: runs
- Researcher → Search baselines: runs
- EEM-NAS → FFC evaluator: evaluates candidates
- EEM-NAS → GA operators: selects and varies
- EEM-NAS → Search primitives: selects targets; replaces
- EEM-NAS → Local search: refines targets
- Local search → FFC evaluator: scores neighbors
- Search baselines → FFC evaluator: evaluates candidates
- Search baselines → GA operators: uses operators
- FFC evaluator → Architecture encoding: indexes candidates
- FFC evaluator → Online backend: delegates scoring
- FFC evaluator → Precomputed backend: can delegate scoring
- Online backend → Batch sources: gets batches
- Online backend → NAS-Bench-201 network: builds candidate network
- Online backend → Zero-cost proxies: computes score
- Online backend → Accuracy lookup: requests accuracy
- Batch sources → Dataset providers: loads batches
- Accuracy lookup → NAS-Bench-201 archive: looks up accuracy