2017, 28
(6)
,1217–1227
딥러닝 모형의 복잡도에 관한 연구
†
기
ᆷ동하
1
· 백규승2
· 김용대3
123서울대학교 통계학과
ᄌ ᅥ
ᆸᄉ ᅮ 2017ᄂ ᅧ ᆫ 10ᄋ ᅯ ᆯ 31ᄋ ᅵ ᆯ, ᄉ ᅮᄌ ᅥ ᆼ 2017ᄂ ᅧ ᆫ 11ᄋ ᅯ ᆯ 22ᄋ ᅵ ᆯ, ᄀ ᅦᄌ ᅢ ᄒ ᅪ ᆨᄌ ᅥ ᆼ 2017ᄂ ᅧ ᆫ 11ᄋ ᅯ ᆯ 23ᄋ ᅵ ᆯ
요 약
ᄃ ᅵ
ᆸᄅ ᅥᄂ ᅵ ᆼᄋ ᅳ ᆫ ᄋ ᅧ ᆼᄉ ᅡ ᆼ ᄋ ᅵ ᆫᄉ ᅵ ᆨ, ᄋ ᅳ ᆷᄉ ᅥ ᆼ ᄋ ᅵ ᆫᄉ ᅵ ᆨ ᄃ ᅳ ᆼ ᄀ ᅵᄌ ᅩ ᆫ ᄋ ᅴ ᄆ ᅥᄉ ᅵ ᆫ ᄅ ᅥᄂ ᅵ ᆼ ᄀ ᅵᄇ ᅥ ᆸᄃ ᅳ ᆯ ᄅ ᅩ ᄒ ᅢᄀ ᅧ ᆯᄋ ᅵ ᄋ ᅥᄅ ᅧᄋ ᅯ ᆻᄃ ᅥ ᆫ ᄇ ᅮ ᆫ ᄋ ᅣᄋ ᅦᄉ ᅥ ᄆ ᅢᄋ ᅮ ᄋ ᅮ ᄉ
ᅮᄒ ᅡ ᆫ ᄉ ᅥ ᆼᄂ ᅳ ᆼᄋ ᅳ ᆯ ᄇ ᅩᄋ ᅧ ᆻᄀ ᅩ, ᄀ ᅳᄅ ᅩ ᄋ ᅵ ᆫᄒ ᅢ ᄃ ᅵ ᆸᄅ ᅥᄂ ᅵ ᆼᄋ ᅴ ᄑ ᅩ ᆨ ᄇ ᅡ ᆯᄌ ᅥ ᆨᄋ ᅵ ᆫ ᄋ ᅧ ᆫᄀ ᅮᄋ ᅴ ᄌ ᅳ ᆼ ᄀ ᅡᄀ ᅡ ᄋ ᅵ ᆻᄋ ᅥ ᆻᄃ ᅡ. ᄌ ᅩ ᇂᄋ ᅳ ᆫ ᄉ ᅥ ᆼᄂ ᅳ ᆼᄋ ᅳ ᆯ ᄇ ᅩᄋ ᅵᄂ ᅳ ᆫ ᄆ ᅩᄒ ᅧ ᆼ ᄆ ᅵ
ᆾ ᄆ ᅩᄉ ᅮ ᄎ ᅮᄌ ᅥ ᆼ ᄇ ᅡ ᆼᄇ ᅥ ᆸᄋ ᅦ ᄃ ᅢᄒ ᅡ ᆫ ᄋ ᅧ ᆫᄀ ᅮᄃ ᅳ ᆯ ᄋ ᅵ ᄌ ᅮᄅ ᅳ ᆯ ᄋ ᅵᄅ ᅮᄀ ᅩ ᄋ ᅵ ᆻᄂ ᅳ ᆫ ᄒ ᅧ ᆫ ᄒ ᅳᄅ ᅳ ᆷ ᄉ ᅩ ᆨ ᄋ ᅦᄉ ᅥ ᄃ ᅵ ᆸᄅ ᅥᄂ ᅵ ᆼᄋ ᅴ ᄋ ᅵᄅ ᅩ ᆫᄌ ᅥ ᆨᄋ ᅵ ᆫ ᄋ ᅧ ᆫᄀ ᅮ ᄄ ᅩᄒ ᅡ ᆫ ᄌ
ᅩᄉ ᅵ ᆷᄉ ᅳᄅ ᅥ ᆸᄀ ᅦ ᄌ ᅵ ᆫᄒ ᅢ ᆼᄃ ᅬᄀ ᅩ ᄋ ᅵ ᆻᄃ ᅡ. ᄇ ᅩ ᆫ ᄂ ᅩ ᆫᄆ ᅮ ᆫ ᄋ ᅦᄉ ᅥᄂ ᅳ ᆫ ᄃ ᅵ ᆸᄅ ᅥᄂ ᅵ ᆼᄋ ᅴ ᄉ ᅥ ᆼᄀ ᅩ ᆼᄋ ᅳ ᆯ ᄃ ᅵ ᆸᄅ ᅥᄂ ᅵ ᆼ ᄒ ᅡ ᆷᄉ ᅮᄀ ᅡ ᄇ ᅩ ᆨ ᄌ ᅡ ᆸᄒ ᅡ ᆫ ᄒ ᅡ ᆷᄉ ᅮᄅ ᅳ ᆯ ᄒ ᅭᄋ ᅲ ᆯᄌ ᅥ ᆨᄋ ᅳᄅ ᅩ ᄌ
ᅡ
ᆯ ᄑ ᅭᄒ ᅧ ᆫᄒ ᅡ ᆯ ᄉ ᅮ ᄋ ᅵ ᆻᄋ ᅳ ᆷ ᄋ ᅦᄉ ᅥ ᄒ ᅢᄃ ᅡ ᆸᄋ ᅳ ᆯ ᄎ ᅡ ᆽᄀ ᅩ, ᄋ ᅵᄋ ᅦ ᄀ ᅪ ᆫᄅ ᅧ ᆫᄃ ᅬ ᆫ ᄋ ᅵᄅ ᅩ ᆫᄌ ᅥ ᆨᄋ ᅵ ᆫ ᄋ ᅧ ᆫᄀ ᅮᄃ ᅳ ᆯᄋ ᅳ ᆯ ᄌ ᅩᄉ ᅡᄒ ᅡᄋ ᅧ ᄇ ᅮ ᆫᄉ ᅥ ᆨᄒ ᅡᄀ ᅩᄌ ᅡ ᄒ ᅡ ᆫᄃ ᅡ.
ᄌ
ᅮᄋ ᅭᄋ ᅭ ᆼ ᄋ ᅥ: ᄃ ᅵ ᆸᄅ ᅥᄂ ᅵ ᆼ, ᄇ ᅩ ᆨ ᄌ ᅡ ᆸᄃ ᅩ, ᄉ ᅥ ᆫᄒ ᅧ ᆼ ᄋ ᅧ ᆼᄋ ᅧ ᆨ, ᄉ ᅵ ᆷᄎ ᅳ ᆼ ᄉ ᅵ ᆫᄀ ᅧ ᆼᄆ ᅡ ᆼ ᄒ ᅡ ᆷᄉ ᅮ, ᄒ ᅡ ᆷᄉ ᅮ ᄀ ᅰᄌ ᅥ ᆨ, ᄒ ᅡ ᆷᄉ ᅮ ᄌ ᅥ ᆫᄋ ᅵ.
1. 서론 디
ᆸ러닝은 동물과 인간의 뉴런 구조를 모사한 심층 인공 신경망 모형 (deep neural network model;
Larochelle 등, 2007)을 응용하여 만든모형 및 이를학습하기 위한 알고리즘을 총칭한다. 딥러닝은 특 ᄒ
ᅵ 예전까지 좋은 성능을 내지 못했던 분야들 (사진 인식, 음성 인식, 비디오 인식 및 자연어 처리)에 ᄉ
ᅥ 압도적인 성능을보이고 있다 (Hochreiter와 Schmidhuber, 1997; Krizhevsky 등, 2012; Sutskever ᄃ
ᅳᆼ, 2014; Chung 등, 2008; Ioffe와 Szegedy, 2015; He 등, 2016). 다양하고 복잡한 모형들(Krizhevsky ᄃ
ᅳᆼ, 2012)과 다양한 학습 알고리즘의 개발 (Kingma와 Ba, 2014), 데이터 규모의 증가, 그리고 다중 GPU (graphics processing units)의 사용 (Krizhevsky 등, 2012) 등으로 인해 딥러닝은 급격한 성장 으
ᆯ이루게 되었고, 그 결과 딥러닝을이용한 인공지능프로그램인 AlphaGo (Silver 등, 2016; Silver 등, 2017)는지금까지 인공지능에게금단의 구역이라 여겨지던 바둑에서 인간 프로기사를압도적으로 이기 느
ᆫ상황에 오게 되었다. 또한 의료 보건 서비스,금융시장 등사회 전반적인 분야에 딥러닝 모형을적용 ᄒ
ᅡ여 좋은성과를거두고 있다 (Lee 등, 2015; Lee와 Chun, 2016; Lee, 2017; Miotto 등, 2017).
ᄃ
ᅢ부분의 딥러닝에관한 연구들은뛰어난 성능을보이도록하는모형 또는기법, 그리고 좋은추정량 ᄋ
ᅳᆯ 제공해주는 학습 방법들에 대한 제안이 주를이루고 있다. 딥러닝 연구의 시발점은 2006년 G. E.
Hinton이 제한된 볼츠만 기계 (restricted Boltzmann machine; Smolensky, 1986)를이용하여 심층 신 겨
ᆼ망 모수의 초기값을설정해주는 pre-training방법이며, 이를 통해 과거에 비해 좋은추정량을얻을수 이
ᆻ게 되었다 (Hinton 등, 2006; Hinton과 Salakhutdinov, 2006). 딥러닝의 한 요소인활성 함수에 대 ᄒ
ᅡᆫ 연구도활발히 진행되었는데 2010년에 제안된ReLU (rectified linear unit; Nair와 Hinton, 2010)가
†
ᄋ ᅵ ᄂ ᅩ ᆫᄆ ᅮ ᆫᄋ ᅳ ᆫ ᄉ ᅡ ᆷᄉ ᅥ ᆼᄆ ᅵᄅ ᅢᄀ ᅵᄉ ᅮ ᆯᄋ ᅲ ᆨᄉ ᅥ ᆼᄌ ᅢᄃ ᅡ ᆫᄋ ᅴ ᄌ ᅵᄋ ᅯ ᆫᄋ ᅳ ᆯ ᄇ ᅡ ᆮᄋ ᅡ ᄉ ᅮᄒ ᅢ ᆼᄃ ᅬ ᆫ ᄋ ᅧ ᆫᄀ ᅮᄋ ᅵ ᆷ. (ᄀ ᅪᄌ ᅦᄇ ᅥ ᆫᄒ ᅩ SSTF-BA1601-02).
1
(08826) ᄉ ᅥᄋ ᅮ ᆯ ᄉ ᅵ ᄀ ᅪ ᆫ ᄋ ᅡ ᆨᄀ ᅮ ᄀ ᅪ ᆫ ᄋ ᅡ ᆨᄅ ᅩ 1, ᄉ ᅥᄋ ᅮ ᆯ ᄃ ᅢᄒ ᅡ ᆨᄀ ᅭ ᄐ ᅩ ᆼ ᄀ ᅨᄒ ᅡ ᆨᄀ ᅪ, ᄇ ᅡ ᆨᄉ ᅡᄀ ᅪᄌ ᅥ ᆼ.
2
(08826) ᄉ ᅥᄋ ᅮ ᆯ ᄉ ᅵ ᄀ ᅪ ᆫ ᄋ ᅡ ᆨᄀ ᅮ ᄀ ᅪ ᆫ ᄋ ᅡ ᆨᄅ ᅩ 1, ᄉ ᅥᄋ ᅮ ᆯ ᄃ ᅢᄒ ᅡ ᆨᄀ ᅭ ᄐ ᅩ ᆼ ᄀ ᅨᄒ ᅡ ᆨᄀ ᅪ, ᄇ ᅡ ᆨᄉ ᅡᄀ ᅪᄌ ᅥ ᆼ.
3
ᄀ ᅭᄉ ᅵ ᆫᄌ ᅥᄌ ᅡ: (08826) ᄉ ᅥᄋ ᅮ ᆯ ᄉ ᅵ ᄀ ᅪ ᆫ ᄋ ᅡ ᆨᄀ ᅮ ᄀ ᅪ ᆫ ᄋ ᅡ ᆨᄅ ᅩ 1, ᄉ ᅥᄋ ᅮ ᆯ ᄃ ᅢᄒ ᅡ ᆨᄀ ᅭ ᄐ ᅩ ᆼ ᄀ ᅨᄒ ᅡ ᆨᄀ ᅪ, ᄀ ᅭᄉ ᅮ.
E-mail: [email protected]
ᄃ
ᅢ표적이다. 이후에는 ReLU를 응용하여 LeakyReLU (Maas 등, 2013), PReLU (He 등, 2015), ELU (Clevert 등, 2015) 등많은활성 함수가 제안되었다.
디
ᆸ러닝은 많은모수를사용하기 때문에 과적합될가능성이 높다. 따라서 과적합을방지하기 위한 다 ᄋ
ᅣᆼ한 정규화 (regularization) 방법 또한 연구되었는데 2012년에 발표된 은닉 노드들의 상관관계를 줄여 ᄌ
ᅮ는 drop-out (Hinton 등, 2012)과 각 은닉 노드들의 분포를 일관성있게 바꾸어 좋은추정값을 얻을 ᄉ
ᅮ 있도록해주는 batch-normalization algorithm (Ioffe와 Szegedy, 2015)이 대표적이다. 또한 모수를 ᄒ
ᅭ율적으로 빠르게 추정하는그래디언트 기반의 알고리즘또한 다양하게 개발되었는데, 대표적인 알고 ᄅ
ᅵ즘으로는 RMSProp (Tieleman과 Hinton, 2012), Adadelta (Zeiler, 2012), Adam (Kingma와 Ba, 2014) 등이 있다. 위에서 언급한 여러 연구들을이용하여 GoogLeNet (Szegedy 등, 2015), ResNet (He ᄃ
ᅳᆼ, 2016), WaveNet (Oord 등, 2016) 등다양한 모형들이 개발되었고, 사진 인식, 음성 인식 등 인공지 ᄂ
ᅳ
ᆼ 분야에서 월등한 성능을보이고 있다.
ᄋ
ᅵ러한 딥러닝 모형의 성공과 더불어 딥러닝 모형이 어떻게 잘 작동하는지, 다른방법론들에 비해 왜 ᄄ
ᅱ어난 성능을가지는지에 대한 이론적 연구 또한 조심스럽게 진행되고 있다. 최초로 인공 신경망 모형 ᄋ
ᅴ 이론적인 특성을밝힌 논문은 Hornik 등 (1989)과 Cybenko (1989)의 연구로, 단층 인공 신경망 모 혀
ᆼ이 임의의 연속함수를 원하는정밀도로근사할 수 있음을수학적으로 증명하였다. 최근에 발표된대 ᄇ
ᅮ분의 연구들은한 개의 은닉층을갖는단층 인공 신경망 모형 (shallow neural network)과 여러개의 ᄋ
ᅳᆫ닉층을갖는 심층 인공 신경망 모형 (deep neural network)를비교하는것을 목표로 하였다. 한 예로 Eldan과 Shamir (2016)는단층 인공 신경망으로 심층 인공 신경망을 근사하기 어렵다는 것을예제를 ᄐ
ᅩ
ᆼ해 보였다.
ᄄ
ᅩ한, 다양한 측도를 이용하여 심층 인공 신경망 모형이 단층 인공 신경망 모형에 비해 높은 복잡 ᄃ
ᅩ (complexity)를 갖는다는 사실을 이론적으로 밝히기도 하였는데 Pascanu 등 (2013)과 Montufar (2014)는모형의 복잡도를나타내는 측도로써 함수가 가지는선형 영역의 수를이용하였다. 이 복잡도 르
ᆯ이용하여 같은개수의 노드를갖고 있더라도 은닉층의 개수가 커질수록함수의 복잡도가 증가한다는 ᄉ
ᅡ실을수학적으로 증명하였다. 또한 Raghu 등 (2016)은선형 영역의 수 뿐만 아니라 더 나아가서 입 ᄅ
ᅧ
ᆨ 변수가 움직이면서 만들어내는함수의 궤적의 길이를 복잡도의 측도로 제안하였다. 이 복잡도를 이 ᄋ
ᅭ
ᆼ해서 다양한 모수에서 함수의 복잡도가 은닉층의 개수에 따라 지수적으로 증가한다는사실을보였다.
보
ᆫ 논문에서는선형 영역의 수와 함수 궤적의 길이를이용하여 단층 인공 신경망 모형과 심층 인공 신경 ᄆ
ᅡᆼ 모형의 복잡도를비교하는이론연구들에 대해 자세히 살펴보고자 한다.
보
ᆫ 논문의 구성은다음과 같다. 2장에서는 인공 신경망 모형에 대해 간단한 언급을 한다. 3장에서는 ᄋ
ᅵᆫ공 신경망 모형의 복잡도를 나타내는두가지의 측도에 대해 설명하고, 이 측도를 사용했을 때 알 수 이
ᆻ는 이론적인 결과에 대해 설명한다. 4장에서는 3장에서 소개한 다양한 복잡도를 실제로 측정하여 이 ᄅ
ᅩᆫ적인 결과와 비교해보고, 마지막으로 5장에서 결론을맺는다.
2. 신경망 모형 ᄋ
ᅵᆫ공 신경망 모형 (artificial neural network)은 기계 학습에서 연구하는 분야 중하나로, 동물의 뇌 ᄀ
ᅮ조를모방하여 만든수학적 모형이다. 사용하고자 하는 목적에 따라 컨볼루션 신경망 모형 (convolu- tional neural network; LeCun 등, 1998), 순환신경망 모형 (recurrent neural network; Mikolov 등, 2010) 등이 있지만 본 논문에서는 가장 간단한 형태인완전 연결된인공 신경망 모형 (fully connected neural network; Larochelle 등, 2007)만을고려하도록한다.
m차원의 벡터 x를 입력 변수로 하는 임의의 인공 신경망 모형을 A라 하고, A 모형의 구조를 갖는 ᄋ
ᅵᆫ공 신경망 예측 함수를 FA(x; W, b)라 하자. 이 때 (W, b)는 함수에 필요한 모수를 의미한다. 인공