[3줄 AutoML] 솔직히 까놓고 말해서 기존 NAS 비효율적이지 않냐?

2021. 7. 9. 23:24AI Paper Review/AutoML Papers

<ECCV 2018> https://openaccess.thecvf.com/content_ECCV_2018/papers/Chenxi_Liu_Progressive_Neural_Architecture_ECCV_2018_paper.pdf

1. 기존 NAS는 무거운 RNN 셀과 RL을 사용하여 모델을 매번 처음부터 만들고 재학습시켜야 해서 되게 무겁고 비효율적이었다.

2. 그럼 재학습을 안 시키기 위해서 그냥 모델의 퍼포먼스를 프리딕션하는 모델을 만들고, 매번 만들지 말고 붙였다 뗐다 발전시켜나가는 방향의 NAS 시스템을 만들면 어떨까?

Progressive NAS


3. 기존 Zoph et al의 NAS보다 5배정도 빠른데다가, 아키텍쳐 성능도 정말 좋다!

만들어진 아키텍쳐
학습 결과
  • 프로필사진
    광장의꽃향기2021.08.03 15:53 신고

    Weight Sharing 으로 candidate 를 처음부터 끝까지 training 하는 수고를 던게 아니라 Predictor 를 만들어서 candidate 를 바로 평가해 수고를 던 것 아닌었던가요?!

    그냥 스쳤던 논문이었는데 작성자님 덕분에 논문을 새로운 시각에서 흥미있게 읽을 수 있을 것 같습니다 ㅋㅋㅋ

    • 프로필사진
      Bellman Bellman2021.08.03 15:54 신고

      둘 다입니다 ㅎㅎㅎ

    • 프로필사진
      광장의꽃향기2021.08.03 16:33 신고

      오 답글이 정말 빠르네요!

      Fig. 2. Illustration of the PNAS search
      procedure when the maximum number of
      blocks is B = 3. Here Sb represents the set
      of candidate cells with b blocks. We start by
      considering all cells with 1 block, S1 = B1;
      we train and evaluate all of these cells, and
      update the predictor. At iteration 2, we expand each of the cells in S1 to get all cells
      with 2 blocks, S

      2 = B1:2; we predict their
      scores, pick the top K to get S2, train and
      evaluate them, and update the predictor.
      At iteration 3, we expand each of the cells
      in S2, to get a subset of cells with 3 blocks,
      S

      3 ⊆ B1:3; we predict their scores, pick the
      top K to get S3, train and evaluate them,
      and return the winner. Bb = |Bb| is the
      number of possible blocks at level b and K
      is the beam size (number of models we train
      and evaluate per level of the search tree)

      제가 이것만 읽어서 그런가 weight share 로 검색해도 잘 안보이는데 혹시 어디 부분인지 알 수 있을까요?