논문 및 개념 정리

[2015] Deep Residual Learning for Image Recognition (ResNet 논문)

2023. 1. 14. 20:00
목차
  1. 1. Introduction
  2. 2. Deep Residual Learning
  3. 3. Experiments
  4. 4. 왜 잘될까?

여러 이미지 관련 논문에서 baseline 모델로 사용되고 있는 ResNet 논문에 대해 정리하고자 한다(논문링크).

핵심 내용은 다음과 같다.

  • Layer를 매우 많이 쌓을 때 특정 block 마다 입력을 layer 출력에 더해서 학습하면 더 잘된다

[그림1] ResNet block 구조

 

1. Introduction

CNN의 layer 수를 증가시켜 deep하게 쌓으면 성능이 좋아질 것이라 예상됐지만 실제로는 위 그림처럼 train, test error 모두 증가하고 vanishing/exploding gradient 문제가 발생한다. 또한 deep 해지면 모델이 수렴은 했지만 성능이 나빠지는 degradation 문제가 발생한다.

본 연구에서는 이러한 문제들을 해결하는 deep residual learning에 대해 소개한다. Residual network는 layer을 단순하게 많이 쌓는 방식에 비해 optimize가 잘되고 성능이 좋은 장점이 있다.

 

2. Deep Residual Learning

먼저 논문에서 사용된 용어에 대해서 정리하면 아래와 같다.

  • x: 각 block 단위에서의 입력
  • H(x): 각 block 단위에서 기대되는 개념적 결과(underlying mapping)
  • F(x): 각 block 단위에서의 실제 출력

ResNet 논문에서는 block 단위에서 입력 x를 출력 F(x)에 더해줌으로써 stacked nonlinear layers가 F(x):=H(x)−x를 학습하는 방법을 제시하였다. 저자들은 이러한 residual mapping(H(x)−x)이 원래의 mapping(H(x))을 학습한 것 보다 더 쉬운 문제라는 가정을 한다.

각 building block은 아래 수식에서 (1)과 같이 정의할 수 있으며, dimension이 다를 시 linear projection을 추가하여 (2)와 같이도 사용할 수 있다.

y=F(x,{Wi})+x⋯(1)y=F(x,{Wi})+Wsx⋯(2)

 

ResNet 모델은 아래 그림에서 맨 오른쪽 모델이며, 특정 layer 마다 입력을 출력에 더하는 형태로 구성된다.

 

3. Experiments

ResNet 방법을 사용하면 위 그래프에서처럼 layer를 증가시켜도 train error가 감소하는 것을 확인할 수 있다.

 

또한 다른 방법들에 비해 error rate이 낮다.

 

모델을 매우 키워서 1200 layer로도 실험한 결과 optimize가 매우 잘 되고 있는 것을 볼 수 있다. 다만 classification 성능이 안좋은 이유는 overfitting이 발생했기 때문이다.

 

4. 왜 잘될까?

ResNet이 잘 되는 이유는 명확하게 밝혀진 것 같지는 않다. 다만 많은 사람들이 주장하는 내용은 ensemble 효과가 있다는 것이다. 

 

이 블로그글에 따르면 위 그림(unraveled view)처럼 입력을 더하면 layer가 깊어지면서 같은 입력을 여러번 학습한다고 한다. 수식적으로도 다음과 같이 표현할 수 있다.

x3=H(x2)+x2=H[G(x1)+x1]+G(x1)+x1=H[G[F(x0)+x0]+F(x0)+x0]+G[F(x0)+x0]+F(x0)+x0

 

 

 

728x90
저작자표시 비영리 변경금지 (새창열림)

'논문 및 개념 정리' 카테고리의 다른 글

Propensity Score  (0) 2023.06.28
[2021] (FLAN)FINETUNED LANGUAGE MODELS ARE ZERO-SHOT LEARNERS (Instruction-Tuning 논문)  (2) 2023.03.13
[2021] Learning Transferable Visual Models From Natural Language Supervision(CLIP 논문)  (0) 2023.01.10
[2022] Controlling the Focus of Pretrained Language Generation Models  (0) 2022.11.03
[2019] How Contextual are Contextualized Word Representations?  (0) 2022.10.27
  1. 1. Introduction
  2. 2. Deep Residual Learning
  3. 3. Experiments
  4. 4. 왜 잘될까?
'논문 및 개념 정리' 카테고리의 다른 글
  • Propensity Score
  • [2021] (FLAN)FINETUNED LANGUAGE MODELS ARE ZERO-SHOT LEARNERS (Instruction-Tuning 논문)
  • [2021] Learning Transferable Visual Models From Natural Language Supervision(CLIP 논문)
  • [2022] Controlling the Focus of Pretrained Language Generation Models
Fine애플
Fine애플
이것저것
끄적끄적이것저것
Fine애플
끄적끄적
Fine애플
전체
오늘
어제
  • 분류 전체보기 (167)
    • 논문 및 개념 정리 (27)
    • Pattern Recognition (8)
    • 개발 (57)
    • python 메모 (45)
    • pytorch, tensorflow (5)
    • 알고리즘 (9)
    • Toy Projects (4)
    • 통계이론 (2)
    • Reinforcement Learning (10)

블로그 메뉴

  • 홈

공지사항

인기 글

태그

  • reinforcement learning
  • 딥러닝
  • transformer
  • Docker
  • python
  • ubuntu
  • 알고리즘
  • container
  • Probability
  • pandas
  • tensorflow
  • miniconda
  • BigBird
  • Bert
  • GPU
  • 언어모델
  • PyTorch
  • 개발환경
  • 자연어
  • nlp

최근 댓글

최근 글

hELLO · Designed By 정상우.
Fine애플
[2015] Deep Residual Learning for Image Recognition (ResNet 논문)
상단으로

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.