Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/zhaohui-yang/CARS
[CVPR2020] CARS: Continuous Evolution for Efficient Neural Architecture Search
https://github.com/zhaohui-yang/CARS
Last synced: 3 months ago
JSON representation
[CVPR2020] CARS: Continuous Evolution for Efficient Neural Architecture Search
- Host: GitHub
- URL: https://github.com/zhaohui-yang/CARS
- Owner: zhaohui-yang
- Created: 2019-09-12T02:02:33.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2020-06-30T05:39:42.000Z (over 4 years ago)
- Last Synced: 2024-07-29T05:22:46.325Z (3 months ago)
- Homepage:
- Size: 1.14 MB
- Stars: 103
- Watchers: 10
- Forks: 20
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- StarryDivineSky - huawei-noah/CARS
README
# CARS
[1] Zhaohui Yang, Yunhe Wang, Xinghao Chen, Boxin Shi, Chao Xu, Chunjing Xu, Qi Tian, and Chang Xu. [CARS: Continuous Evolution for Efficient Neural Architecture Search](https://openaccess.thecvf.com/content_CVPR_2020/papers/Yang_CARS_Continuous_Evolution_for_Efficient_Neural_Architecture_Search_CVPR_2020_paper.pdf). CVPR 2020. [[paper](https://openaccess.thecvf.com/content_CVPR_2020/papers/Yang_CARS_Continuous_Evolution_for_Efficient_Neural_Architecture_Search_CVPR_2020_paper.pdf)] [[code](https://github.com/huawei-noah/vega)]
## Introduction
This repository contains the supplementary material of CARS. All the searching and training codes have been embedded in Huawei AutoML pipeline and will be released together.
## Results and Architectures
CARS searches on the CIFAR-10 dataset, and evaluate on CIFAR-10 and ImageNet datasets. Multi-objectives are taken into consideration during searching.
### Objectives: Acc + Params
Results on the CIFAR-10 dataset.
Results on the ImageNet dataset.
```python
CARS_A = Genotype(normal=[('skip_connect', 0), ('sep_conv_5x5', 1), ('max_pool_3x3', 0), ('avg_pool_3x3', 1), ('max_pool_3x3', 0), ('max_pool_3x3', 1), ('sep_conv_3x3', 0), ('dil_conv_5x5', 2)], normal_concat=range(2, 6), reduce=[('avg_pool_3x3', 0), ('max_pool_3x3', 1), ('max_pool_3x3', 0), ('skip_connect', 1), ('max_pool_3x3', 0), ('dil_conv_5x5', 1), ('dil_conv_5x5', 0), ('skip_connect', 2)], reduce_concat=range(2, 6))
CARS_B = Genotype(normal=[('sep_conv_5x5', 0), ('dil_conv_3x3', 1), ('sep_conv_3x3', 0), ('avg_pool_3x3', 2), ('dil_conv_3x3', 0), ('max_pool_3x3', 1), ('avg_pool_3x3', 0), ('skip_connect', 1)], normal_concat=range(2, 6), reduce=[('sep_conv_5x5', 0), ('skip_connect', 1), ('sep_conv_3x3', 0), ('max_pool_3x3', 1), ('avg_pool_3x3', 0), ('avg_pool_3x3', 1), ('dil_conv_3x3', 3), ('max_pool_3x3', 0)], reduce_concat=range(2, 6))
CARS_C = Genotype(normal=[('sep_conv_5x5', 0), ('skip_connect', 1), ('skip_connect', 0), ('skip_connect', 1), ('skip_connect', 0), ('max_pool_3x3', 1), ('sep_conv_5x5', 0), ('sep_conv_3x3', 1)], normal_concat=range(2, 6), reduce=[('max_pool_3x3', 1), ('max_pool_3x3', 0), ('sep_conv_5x5', 0), ('sep_conv_5x5', 1), ('dil_conv_5x5', 0), ('max_pool_3x3', 1), ('sep_conv_5x5', 0), ('dil_conv_3x3', 1)], reduce_concat=range(2, 6))
CARS_D = Genotype(normal=[('sep_conv_5x5', 0), ('dil_conv_3x3', 1), ('skip_connect', 0), ('avg_pool_3x3', 1), ('skip_connect', 0), ('max_pool_3x3', 1), ('sep_conv_5x5', 0), ('sep_conv_3x3', 1)], normal_concat=range(2, 6), reduce=[('max_pool_3x3', 1), ('max_pool_3x3', 0), ('max_pool_3x3', 0), ('sep_conv_3x3', 1), ('dil_conv_5x5', 0), ('max_pool_3x3', 1), ('sep_conv_5x5', 0), ('dil_conv_3x3', 1)], reduce_concat=range(2, 6))
CARS_E = Genotype(normal=[('sep_conv_3x3', 0), ('sep_conv_3x3', 1), ('skip_connect', 0), ('sep_conv_3x3', 2), ('avg_pool_3x3', 1), ('sep_conv_3x3', 2), ('skip_connect', 3), ('skip_connect', 4)], normal_concat=range(2, 6), reduce=[('skip_connect', 0), ('dil_conv_3x3', 1), ('avg_pool_3x3', 0), ('skip_connect', 2), ('sep_conv_3x3', 2), ('max_pool_3x3', 0), ('avg_pool_3x3', 0), ('sep_conv_3x3', 4)], reduce_concat=range(2, 6))
CARS_F = Genotype(normal=[('skip_connect', 0), ('sep_conv_5x5', 1), ('sep_conv_5x5', 0), ('skip_connect', 2), ('sep_conv_5x5', 3), ('max_pool_3x3', 0), ('skip_connect', 0), ('sep_conv_3x3', 1)], normal_concat=range(2, 6), reduce=[('avg_pool_3x3', 0), ('sep_conv_5x5', 1), ('dil_conv_3x3', 0), ('dil_conv_5x5', 1), ('sep_conv_5x5', 1), ('skip_connect', 2), ('max_pool_3x3', 0), ('max_pool_3x3', 1)], reduce_concat=range(2, 6))
CARS_G = Genotype(normal=[('max_pool_3x3', 0), ('dil_conv_5x5', 1), ('sep_conv_3x3', 0), ('skip_connect', 1), ('dil_conv_5x5', 0), ('sep_conv_5x5', 1), ('avg_pool_3x3', 0), ('sep_conv_3x3', 1)], normal_concat=range(2, 6), reduce=[('max_pool_3x3', 0), ('sep_conv_3x3', 1), ('sep_conv_3x3', 0), ('sep_conv_5x5', 1), ('sep_conv_3x3', 0), ('skip_connect', 1), ('avg_pool_3x3', 0), ('dil_conv_3x3', 1)], reduce_concat=range(2, 6))
CARS_H = Genotype(normal=[('sep_conv_5x5', 0), ('sep_conv_3x3', 1), ('sep_conv_3x3', 0), ('dil_conv_5x5', 2), ('avg_pool_3x3', 0), ('skip_connect', 1), ('sep_conv_5x5', 2), ('max_pool_3x3', 0)], normal_concat=range(2, 6), reduce=[('sep_conv_5x5', 0), ('max_pool_3x3', 1), ('sep_conv_3x3', 0), ('skip_connect', 1), ('dil_conv_3x3', 2), ('max_pool_3x3', 0), ('sep_conv_5x5', 0), ('avg_pool_3x3', 3)], reduce_concat=range(2, 6))
CARS_I = Genotype(normal=[('sep_conv_3x3', 0), ('sep_conv_3x3', 1), ('skip_connect', 0), ('sep_conv_5x5', 1), ('skip_connect', 2), ('sep_conv_3x3', 3), ('sep_conv_3x3', 0), ('dil_conv_5x5', 4)], normal_concat=range(2, 6), reduce=[('dil_conv_3x3', 0), ('skip_connect', 1), ('max_pool_3x3', 0), ('max_pool_3x3', 2), ('skip_connect', 1), ('sep_conv_5x5', 3), ('dil_conv_3x3', 1), ('max_pool_3x3', 4)], reduce_concat=range(2, 6))
```
### Objectives: Acc + Latency
```python
CARS_Lat_A = Genotype(normal=[('skip_connect',0),('max_pool_3x3',1),('avg_pool_3x3',0),('max_pool_3x3',1),('skip_connect',2),('skip_connect',3),('skip_connect',2),('skip_connect',3)],normal_concat=range(2,6),reduce=[('skip_connect',0),('sep_conv_5x5',1),('dil_conv_5x5',0),('max_pool_3x3',2),('skip_connect',0),('max_pool_3x3',1),('skip_connect',1),('avg_pool_3x3',4)],reduce_concat=range(2,6))
CARS_Lat_B = Genotype(normal=[('skip_connect',0),('skip_connect',1),('skip_connect',1),('dil_conv_3x3',2),('skip_connect',2),('skip_connect',3),('max_pool_3x3',0),('max_pool_3x3',2)],normal_concat=range(2,6),reduce=[('max_pool_3x3',0),('max_pool_3x3',1),('skip_connect',1),('max_pool_3x3',0),('sep_conv_3x3',0),('max_pool_3x3',1),('dil_conv_5x5',0),('avg_pool_3x3',2)],reduce_concat=range(2,6))
CARS_Lat_C = Genotype(normal=[('skip_connect',0),('avg_pool_3x3',1),('skip_connect',0),('skip_connect',1),('max_pool_3x3',1),('skip_connect',3),('dil_conv_3x3',2),('skip_connect',4)],normal_concat=range(2,6),reduce=[('skip_connect',0),('sep_conv_5x5',1),('avg_pool_3x3',1),('sep_conv_5x5',2),('max_pool_3x3',0),('max_pool_3x3',1),('dil_conv_5x5',2),('skip_connect',4)],reduce_concat=range(2,6))
CARS_Lat_D = Genotype(normal=[('sep_conv_3x3',0),('skip_connect',1),('skip_connect',0),('skip_connect',1),('skip_connect',1),('avg_pool_3x3',3),('dil_conv_3x3',2),('skip_connect',4)],normal_concat=range(2,6),reduce=[('dil_conv_5x5',0),('sep_conv_5x5',1),('avg_pool_3x3',1),('sep_conv_5x5',2),('max_pool_3x3',0),('max_pool_3x3',1),('dil_conv_5x5',2),('skip_connect',4)],reduce_concat=range(2,6))
CARS_Lat_E = Genotype(normal=[('dil_conv_5x5',0),('skip_connect',1),('skip_connect',1),('avg_pool_3x3',2),('skip_connect',1),('avg_pool_3x3',2),('skip_connect',0),('max_pool_3x3',1)],normal_concat=range(2,6),reduce=[('skip_connect',0),('dil_conv_3x3',1),('sep_conv_3x3',0),('sep_conv_3x3',2),('dil_conv_3x3',0),('avg_pool_3x3',3),('sep_conv_3x3',1),('sep_conv_5x5',2)],reduce_concat=range(2,6))
CARS_Lat_F = Genotype(normal=[('sep_conv_5x5',0),('skip_connect',1),('skip_connect',0),('avg_pool_3x3',1),('dil_conv_3x3',1),('max_pool_3x3',0),('skip_connect',0),('skip_connect',1)],normal_concat=range(2,6),reduce=[('sep_conv_5x5',0),('max_pool_3x3',1),('sep_conv_5x5',1),('skip_connect',2),('sep_conv_5x5',0),('sep_conv_5x5',1),('sep_conv_5x5',3),('dil_conv_3x3',4)],reduce_concat=range(2,6))
CARS_Lat_G = Genotype(normal=[('sep_conv_5x5',0),('skip_connect',1),('sep_conv_3x3',0),('sep_conv_5x5',2),('dil_conv_3x3',1),('max_pool_3x3',0),('skip_connect',0),('skip_connect',1)],normal_concat=range(2,6),reduce=[('sep_conv_5x5',0),('max_pool_3x3',1),('sep_conv_3x3',0),('avg_pool_3x3',2),('sep_conv_5x5',0),('sep_conv_5x5',1),('sep_conv_5x5',3),('dil_conv_3x3',4)],reduce_concat=range(2,6))
```