yuhuixu1993 / PC-DARTS

PC-DARTS:Partial Channel Connections for Memory-Efficient Differentiable Architecture Search
436 stars 108 forks source link

search on ImageNet #40

Closed wuzhi19931128 closed 4 years ago

wuzhi19931128 commented 4 years ago

When search on ImageNet,at seed 0,the network has 1 skip_connect and flops is 645M. At seed 1, the network has 0 skip_connect and flops is 712M. I also test PC_DARTS_image ,the flops is 595M.

I test on different dataset ,it seems the flops can be approximate by 700-50*skip_connect, am I right?Sometimes max_pool and ave_pool show in norm cell, they also reduce 50M. If that's right, all work based on DARTS report their flops below 600M,so most of thier work has 2 or more skip_connect.

But when I search, often get 0 or 1 skip_connect, I wonder if "args.epochs" should be expanded?what epochs is suitable?

yuhuixu1993 commented 4 years ago

Hi, this does sometimes happen when you search on imagenet(less skip-connect). We did not incorporate computation complexity constraint but it is very simple. We offer sever solutions for this problem.

  1. reduce the channels of the searched architectures(<48) to meet the mobile setting(<600).
  2. skip-connect regularization like PDARTS, please refer to this issue https://github.com/yuhuixu1993/PC-DARTS/issues/29
  3. computation complexity constraint like flops or latency.
  4. just like you mentioned, add search epochs may also add the number of skip-connect
wuzhi19931128 commented 4 years ago

thanks