개인적으로 읽고 쓰는 공부용 리뷰입니다.
틀린 점이 있을 수도 있으니 감안하고 읽어주세요. 피드백은 댓글로 부탁드립니다.
paper overview
- 논문링크 : paper link
- ICLR 2022
- model ensemble
Abstract
- model ensemble이나 cascade를 committee라고 한다.
- 우리는 기초로 돌아가서 committee base models의 효율성을 입증한다.
- 간단한 committee는 NAS 등의 방법을 뛰어넘는다.
- 우리의 결과는 efficientnet, vit등에서 이를 입증한다.
1. Introduction
- We use the term “committee” to refer to model ensembles or cascades, which indicates that they are built using multiple independent models.
- independently pre-trained models to build ensembles or cascades.
- Ensemble multiple pre-trained models via a simple average over their predictions.
- Cascades, we sequentially apply each model and use a simple heuristic to determine when to exit from the cascade.
- We summarize our findings as follows:
- Ensembles are more cost-effective than a single model in the large computation regime.
- Cascades outperform single models in all computation regimes.
- Committee based models" can be applied to various tasks, including not only image classification but also video classification and semantic segmentation.
2. Related Works
별 내용 없어서 pass
3. ENSEMBLES ARE ACCURATE, EFFICIENT, AND FAST TO TRAIN
- 총 계산량이 제한되어 있을 때, 가장 높은 성능을 내는 것은 단일 모델인가 앙상블인가?
실제 리얼 월드에서는 굉장히 중요하지만 이것을 다루는 연구는 거의 없다. - 그래서 우리가 한다. imagenet에서 efficientnet, resnet, mobilenetv2를 사용한다.
- Figure 2에 단일 모델과 앙상블 및 cascade 성능을 보여준다. 조합이 많이 나올 수 있기 때문에 Pareto optimal ensembles만 보여준다.
- 검정 네모 박스가 단일 모델 빨강 파랑 초록 네모박스가 앙상블 별이 cascade.
- 앙상블은 작은 모델에선 조금 뒤쳐지지만 큰 모델에서는 단일 대비 좋은 성능을 보인다.
- cascade는 전체적으로 단일 모델 대비 성능 연산속도에서 더 좋은 경향을 보인다. 여기서 cascade는 각 앙상블을 다이렉트로 변환한 것.
- 대체로 앙상블이 작은 모델(or 적은 연산량)에서는 효율적이지 못한 모습을 보이는데 논문에서는 이를 두고 큰 모델은 작은 바이어스 및 큰 분산을 갖게 되는데 test err은 보통 분산의 영향이 크기 때문이라고 주장. 그렇기때문에 앙상블은 분산을 줄여주어 큰 연산에서 효율적이다라고 주장.
이 부분은 잘 이해가 안감
4. FROM ENSEMBLES TO CASCADES
- 모델 cascade 방법 그냥 n개의 모델을 순차적으로 처리. 출력은 모두 평균내면서.
- 만약 threshold보다 넘어가면 ealry exit 진행 -> 이로 인해 앙상블보다 평균 flops가 낮아짐
- 만약 모든 모델을 통과했다면 앙상블과 같아짐.
4.1 CONFIDENCE FUNCTION
- The higher g(α) is, the more likely the prediction α is correct.
- max, the gap between the top-2 logits or prob, negative entropy 등등 해보고 결과 출력한게 figure 3.
- All the metrics demonstrate reasonably good performance.
- We adopt the maximum probability metric.
- Threshold 별 연산량 및 정확도를 나타낸 cascade. t=1 일때 앙상블이랑 같으므로 연산량이 제일 많음
- 그렇기 때문에 t가 커질수록 연산량도 많아짐.
- 연산량 대비 정확도는 t가 커질수록 수렴하기 때문에 적당한 위치에서 고르면 됨.
4.2. CONVERTING ENSEMBLES TO CASCADES
- 이제 뭐 바로 이해 될텐데, family 내 한단계 낮은 모델의 cascade와 단일 모델을 비교한 것. 정확도를 비슷하게 유지하면 속도가 빨라지고, 반대로 flops를 비슷하게 유지하면 정확도가 향상 된다. ( 모든 케이스에서 그러하다는 것에 주목)
5.MODEL SELECTION FOR BUILDING CASCADES
- 모델 선정은 별거 없음 그냥 가능한 조합 중 Accuracy랑 flops 계산하여 적절하게 선정
- 아래 테이블은 worst case를 고려해서 연산량이 기준치 안으로 오게 선정한 것.
- self cascade. Test time augmentation을 cascade에 적용해본 것.
- semantic segmentation with cascade.
- cityscapes 같은 경우 찾기 쉬운 road class도 있고 찾기 어려운 신호등도 있는데 연산량을 위해 grid 단위로 설정 512 일 경우는 1024/512 * 2046/512 = 8개의 grid로 설정
'Deep Learning > 논문 정리' 카테고리의 다른 글
[논문 리뷰] A ConvNet for the 2020s (2) | 2024.06.12 |
---|---|
[논문 리뷰] When Ensembling Smaller Models is More Efficient than Single Large Models (0) | 2024.05.20 |
[논문리뷰] FCN, Fully convolutional networks for semantic segmentation (0) | 2021.04.25 |
[논문리뷰] DLA, Deep layer aggregation (0) | 2020.12.29 |
[논문리뷰] ZFnet, Visualizing and Understanding Convolutional Networks (0) | 2020.12.22 |