automl / NASLib

NASLib is a Neural Architecture Search (NAS) library for facilitating NAS research for the community by providing interfaces to several state-of-the-art NAS search spaces and optimizers.
Apache License 2.0
511 stars 117 forks source link

Simplify package dependencies by removing unnecessary imports #94

Open NeoChaos12 opened 2 years ago

NeoChaos12 commented 2 years ago

I currently use NASLib as a backend for defining my own search space for a benchmark. I noticed while sharing my code that the following imports introduce a number of dependencies that are not strictly necessary in use cases where only a subset of all the search spaces defined by NASLib are to be used. Auto-importing these search spaces enforces the constraint that the dependencies of each and every search space must be satisfied in order to use any single one of the search spaces. Is this truly necessary? For reference, I am currently using only the NASBench-201 search space.

https://github.com/automl/NASLib/blob/afa98c3ffa623aabe8d38bfe243e51b93a845de4/naslib/search_spaces/__init__.py#L1-L10

georgiachanning commented 2 years ago

Great issue. Have you had any success removing the packages and running without excess dependencies?