PaddlePaddle / PaddleSlim

PaddleSlim is an open-source library for deep model compression and architecture search.
https://paddleslim.readthedocs.io/zh_CN/latest/
Apache License 2.0
1.56k stars 345 forks source link

网络结构搜索tutorial疑问 #1662

Closed Michael-Fuu closed 1 year ago

Michael-Fuu commented 1 year ago

https://github.com/PaddlePaddle/PaddleSlim/blob/release/2.0.0/docs/zh_cn/quick_start/static/nas_tutorial.md 在8.完整示例中 archs = sanas.next_archs()[0] 我理解的是一组archs代表唯一生成对结构,为什么生成的一组archs列表只取第一个[0]做后续的训练和评估?其他部分怎么办

wanghaoshuang commented 1 year ago

sanas.next_archs()返回的list的大小,取决于构造sanas实例时的配置。 在当前教程中,构造sanas实例方法如下:

sanas = slim.nas.SANAS(configs=[('MobileNetV2Space')], server_addr=("", 8337), save_checkpoint=None)

configs指定了一个搜索空间,则sanas每次只会产出一个arch。

另外,虽然在设计上支持多个arch同时搜索,比如同时搜索检测模型的backbone和head,但是这种场景并没有做充分的验证。 还是建议一次搜一个arch.