소실 구배 문제
Vanishing gradient problem| 시리즈의 일부 |
| 기계 학습 및 데이터 마이닝 |
|---|
기계학습에서는 구배기반 학습방법과 역전파로 인공신경망을 훈련할 때 소멸구배 문제가 발생한다.그러한 방법에서, 훈련의 각 반복 동안, 각 신경망의 가중치는 현재 [1]가중치에 관한 오류 함수의 부분 도함수에 비례하는 업데이트를 받는다.문제는 경우에 따라 구배가 매우 작아 체중의 [1]값 변화를 효과적으로 막을 수 있다는 것이다.최악의 경우, 이로 인해 신경 네트워크가 추가 훈련을 [1]완전히 중단시킬 수 있습니다.문제 원인의 한 예로 쌍곡선 접선 함수와 같은 기존 활성화 함수는 범위(0,1)의 구배를 가지며 역전파는 체인 규칙에 의해 구배를 계산합니다.이것은 이러한 작은 숫자의 n을 곱하여 n 레이어 네트워크에서 초기 레이어의 구배를 계산하는 효과가 있습니다.즉, 초기 레이어가 매우 느리게 훈련하는 동안 구배(에러 신호)는 n과 함께 기하급수적으로 감소합니다.
역전파를 통해 연구자들은 감독된 심층 인공 신경망을 처음부터 훈련할 수 있었지만 처음에는 거의 성공하지 못했다.1991년 Hochreiter의 외교 논문은 다층 피드포워드 [4]네트워크뿐만 아니라 반복 [5]네트워크에도 영향을 미치는 "사라지는 구배 문제"[2][3]에서 이러한 실패의 원인을 공식적으로 확인하였다.후자는 매우 깊은 피드포워드 네트워크에 전개함으로써 훈련됩니다.여기서 네트워크에 의해 처리되는 입력 시퀀스의 각 시간 스텝에 대해 새로운 레이어가 생성됩니다(전개 및 역전파의 조합은 시간 경과에 따른 역전파라고 불립니다).
도함수가 더 큰 값을 가질 수 있는 활성화 함수를 사용하면 관련 폭발 경사 문제에 직면할 위험이 있다.
프로토타입 모델
이 섹션의 [5]근거는 다음과 같습니다.
반복 네트워크 모델
일반적인 반복 네트워크의 는 입니다.}은는),u2 },2를 하고 x2 },2를 합니다이 진화함에 따라 파라미터화됩니다.
-
(손실차이)
형상의 반복적인 증식이 있기 때문에 소실/폭발 구배 문제가 나타난다.
예: Sigmoid 액티베이션이 있는 반복 네트워크
구체적인 예로서 다음과 같이 정의되어 있는 일반적인 반복 네트워크를 생각해 봅시다.
다음으로, F ( - , t ,) ) a g x xt - _)= 등
소멸 구배 효과는 네트워크가 장기적 효과를 학습할 수 없다는 것입니다.호출 방정식(손실 경사):
1\ \ \ 1, q 、 위의 분석은 제대로 [note 3]기능하지 않습니다.원형 폭발 경사 문제의 경우 다음 모델이 더 명확합니다.
동적 시스템 모델
(Doya, 1993)[6]에 이어 Sigmoid 활성화가 있는 이 원뉴론 반복 네트워크를 검토합니다.
이제 x (T ) x ( ) {\x ( {\Delta x ( 및 x ( style {\ style {\ x ({\b에 대해 생각해 보겠습니다.서는 충분히커집니다.
( ( ) , ) { ( )} if puts point ( ( ( 0 ) b { b의 미세한 변화만으로 x( {x가 어느 안정점에서 다른 안정점으로 합니다.따라서 x ( ) x ( ) {\x ( 및 x ( style {\style {\ (는 모두 매우 크고, 폭발적으로 증가하는 케이스입니다.
( ( ) ,) { ( , ) }이) 불안정한 지점으로부터 멀리 떨어져 있는 경우x ( { x (의 작은 는x ( { (에 을 주지 않으며, ( 0 displaystyle x (0가 됩니다.입력.
경우 x( b ( T) ( ) ( -x )- 5) - ( \ style \{ \ x ( T ) } { \ \ b } \x ( T ) { } 입니다.사실, 이것은 왜 초기 연구가 안정적인 유인 요소를 [7]형성함으로써 장기 범위 계산을 수행할 수 있는 반복적인 네트워크 시스템을 학습하거나 설계하는 데 초점을 맞췄는지 설명합니다(예를 들어, 에피소드 끝에 보이는 첫 번째 입력을 출력하는 등).
일반적인 경우, 직관은 여전히 유효하다.상황은 그림 3, 4, 5에 나타나 있습니다.[5]
기하학적 모형
위의 1소켓 네트워크를 하여 w , (0 ) .5, ( ) \ w =, x ( 0 ) 0. ( ) 0 ==、 ( 0 .- x( ) ( T ) ( x) L ( 0 ) ( T) 2) l l l l l l l l l l l l l l l l l l l l l l l l 。위에서부터- 2.5- 2.5의 손실은 0에 가깝지만 b 스타일b가 2.5(- 2.5의 교차와 에 유인기 세면대가 바뀌고 손실은 0.50으로 [note 4]뛰어오릅니다.
따라서 경사 하강으로시키려 하면 "손실 경관의 벽에 부딪혀" 폭발적으로 경사도가 높아집니다.조금 더 복잡한 상황은 그림 6에 [5]나타나 있습니다.
솔루션
이 문제를 극복하기 위해 몇 가지 방법이 제안되었다.
배치 정규화
배치 정규화는 폭발 및 소실 구배 [8][9]문제를 해결하기 위한 표준 방법입니다.
그라데이션 클리핑
[5] 、 \ \ _ { \ 의 규격을\ \ 으로클리핑할 것을 권장합니다.
이 방법으로는 소실 구배 문제가 해결되지 않습니다.
멀티레벨 계층
하나는 위르겐 슈미트후버의 다단계 네트워크 계층(1992)으로, 감독되지 않은 학습을 통해 한 번에 한 단계씩 사전 교육되고 역확산을 [10]통해 미세 조정된다.여기서 각 수준은 다음 수준으로 공급되는 관측치의 압축 표현을 학습합니다.
관련 어프로치
유사한 아이디어가 신경망을 구성하기 위해 감독되지 않은 사전 훈련을 위해 피드포워드 신경망에 사용되어 일반적으로 유용한 특징 검출기를 먼저 학습하게 되었다.그런 다음 네트워크는 라벨이 부착된 데이터를 분류하기 위해 감독된 역전파에 의해 더욱 훈련됩니다.힌튼 등의 깊은 믿음의 네트워크 모델.(2006)은 이진수 또는 실제 값의 잠재 변수의 연속 레이어를 사용하여 높은 수준의 표현 분포를 학습하는 것을 포함한다.제한된 Boltzmann 기계를 사용하여 보다 높은 수준의 기능을 가진 새로운 레이어를 모델링합니다.각 새로운 레이어는 데이터의 로그 우도 하한을 증가시켜 적절히 교육된 경우 모델을 개선합니다.충분히 많은 레이어를 학습한 후, 딥 아키텍처는 [11]최상위 기능 활성화에서 모델을 샘플링할 때 데이터를 재생함으로써 생성 모델로 사용할 수 있습니다.Hinton은 그의 모델이 고차원적이고 구조화된 [12]데이터에 대한 효과적인 특징 추출기라고 보고했습니다.
장기 단기 기억력
특히 반복신경망에 사용되는 또 다른 기술은 Hochreiter & Schmidhuber가 [13]1997년에 개발한 롱 단기 메모리(LSTM) 네트워크입니다.2009년 심층 다차원 LSTM 네트워크는 [14][15]3개의 다른 언어에 대한 사전 지식 없이 연결된 필기 인식에서 3개의 ICDAR 2009 대회에서 우승함으로써 많은 비선형 계층에서 딥 러닝의 힘을 입증했습니다.
고속 하드웨어
하드웨어의 진보는 1991년부터 2015년까지 컴퓨터 성능(특히 GPU에 의해 제공됨)이 약 100만 배 증가했다는 것을 의미하며, 이는 사라져가는 구배 문제가 인식되었을 때보다 몇 층 더 깊은 네트워크에 표준 역전파를 가능하게 했다.Schmidhuber는 "현재 많은 이미지 인식 경쟁에서 기본적으로 승리하고 있는 것"이라고 지적하고 있지만, 힌튼등의 소멸하는 구배 문제에 대처하는 원래의 모델은 GPU가 [11]아닌 Xeon 프로세서로 트레이닝을 받고 있기 때문에, 「근본적인 방법으로 [16]문제를 해결할 수 없다」고 말하고 있습니다.
잔존 네트워크
소실되는 구배 문제를 해결하는 가장 새롭고 효과적인 방법 중 하나는 잔류 신경 네트워크 [17]또는 ResNets(반복 신경 네트워크와 혼동하지 말 것)입니다.ResNets는 스킵 접속 또는 잔여 접속이 네트워크 아키텍처의 일부인 뉴럴네트워크를 말합니다.이러한 스킵 접속에 의해, 정보의 「하이웨이」를 작성해, 그라데이션 정보를 레이어를 통과할 수 있습니다.이러한 레이어/액티베이션의 출력은, 보다 깊은 레이어의 출력에 추가됩니다.이것에 의해, 네트워크의 초기 부분으로부터의 정보를 네트워크의 보다 깊은 부분에 전달할 수 있기 때문에, 보다 깊은 네트워크에서도 신호의 전파를 유지할 수 있습니다.스킵 접속은 더 깊은 신경망의 성공적인 훈련을 가능하게 하는 중요한 구성요소입니다.
ResNets는 단순히 사라져가는 [17]데이터를 보상하기 위해 네트워크의 얕은 층에서 출력을 재도입함으로써 얕은 층에 비해 낮은 훈련 오류(및 테스트 오류)를 산출했습니다.ResNets는 비교적 얕은 망의 집합체이기 때문에 네트워크의 전체 깊이에 걸쳐 구배 흐름을 유지하는 것으로 소멸되는 구배 문제를 해결할 수 없습니다.단, 다수의 짧은 네트워크의 앙상블을 함께 구축하는 것만으로 문제를 회피할 수 있습니다.(건설에[18] 의한 앙상블).
기타 활성화 기능
ReLU 등의 정류기는 한쪽 [20]방향으로만 포화되기 때문에 소실 구배 문제에 덜 시달립니다.비단조, 비포화 및 진동 활성화 기능을 통해 소실 경사 문제를 완화하고 훈련 [21][19]시간을 단축할 수 있습니다.경사 흐름을 개선하고 훈련 속도를 높이는 발진 활성화 기능의 예가 아래 그림에 나와 있습니다.
무게 초기화
가중치 초기화는 딥 네트워크에서 사라지는 구배 문제를 줄이기 위해 제안된 또 다른 접근법입니다.
Kumar는 초기 체중의 분포는 사용된 활성화 함수에 따라 달라져야 한다고 제안했고, 평균이 0이고 표준 편차가 0인 가우스 분포를 사용하여 로지스틱 활성화 함수와 함께 네트워크에서 체중을 초기화하기 위해 제안했다.3.6/sqrt(N),어디에N한 [22]층에 있는 뉴런의 수입니다.
최근, Yilmaz와[23] Poli는 로지스틱 활성화 함수를 사용하여 심층 신경망의 초기 가중치 평균에 의해 구배가 어떻게 영향을 받는지에 대한 이론적 분석을 수행했고, 초기 가중치의 평균이 공식에 따라 설정될 경우 구배가 사라지지 않는다는 것을 발견했다.max(−1,-8/N)이 간단한 전략에서는 10층 또는 15층의 숨겨진 레이어를 가진 네트워크를 표준 백프로파게이션을 사용하여 매우 효율적이고 효과적으로 훈련할 수 있습니다.
다른.
베른케는 이미지 재구성과 얼굴 위치 [citation needed]파악과 같은 문제를 해결하기 위해 신경 추상화[24] 피라미드를 훈련할 때 구배 부호(Rprop)에만 의존했습니다.
신경망은 또한 무작위 추측 또는 보다 체계적으로 유전 알고리즘과 같은 신경망의 가중치 공간에 대한 범용 검색 알고리즘을 사용하여 최적화될 수 있다.이 접근방식은 구배를 기반으로 하지 않으며 구배 소실 [25]문제를 회피한다.
「 」를 참조해 주세요.
메모들
- ^ 일반적인 손실 함수는L ( x,., , 1,. , T ) t T ( , 1, .t ){ L ( x _ , sum T , \ { ){ display L ( x _ 1 ) , x _ sum { t } )와 같이 출력 시퀀스 전체에 의존할 수 있습니다.T로, 복잡한 표기만으로 문제가 동일합니다.
- ^ 활성화 함수는 유계 도함수로 구분할 수 있는 한 작동합니다.
- ^ Wrec)[02ϵ 0]{\displaystyle W_{rec}={\begin{bmatrix}0&0\end{bmatrix}}}과 D)[c00c]{\displaystyle D={\begin{bmatrix}c&, 0\\0&, c\end{bmatrix}}},ϵ하고, 12{\displaystyle \epsilon>{\frac{1}{2}}}과∈(0,1){\와 같이 c2\\\epsilon 및을 생각해 보자.displaystyle c\in(0,1 그러면 e({rec})의 스펙트럼 은 > style 이며 ( e (c ) 2 × })^{입니다. c c의 선택에 따라서는 무한대 또는 제로가 될 수 있습니다.
- ^ 이는 b - 2. b=-5에서 2개의 안정적인 어트랙터는 x x199이고 불안정한 어트랙터는 0. x5이기 때문입니다.
레퍼런스
- ^ a b c Basodi, Sunitha; Ji, Chunyan; Zhang, Haiping; Pan, Yi (September 2020). "Gradient amplification: An efficient way to train deep neural networks". Big Data Mining and Analytics. 3 (3): 198. doi:10.26599/BDMA.2020.9020004. ISSN 2096-0654. S2CID 219792172.
- ^ Hochreiter, S. (1991). Untersuchungen zu dynamischen neuronalen Netzen (PDF) (Diplom thesis). Institut f. Informatik, Technische Univ. Munich.
- ^ Hochreiter, S.; Bengio, Y.; Frasconi, P.; Schmidhuber, J. (2001). "Gradient flow in recurrent nets: the difficulty of learning long-term dependencies". In Kremer, S. C.; Kolen, J. F. (eds.). A Field Guide to Dynamical Recurrent Neural Networks. IEEE Press. ISBN 0-7803-5369-2.
- ^ Goh, Garrett B.; Hodas, Nathan O.; Vishnu, Abhinav (15 June 2017). "Deep learning for computational chemistry". Journal of Computational Chemistry. 38 (16): 1291–1307. arXiv:1701.04503. Bibcode:2017arXiv170104503G. doi:10.1002/jcc.24764. PMID 28272810. S2CID 6831636.
- ^ a b c d e Pascanu, Razvan; Mikolov, Tomas; Bengio, Yoshua (21 November 2012). "On the difficulty of training Recurrent Neural Networks". arXiv:1211.5063 [cs.LG].
- ^ Doya, K. (1992). "Bifurcations in the learning of recurrent neural networks". [Proceedings] 1992 IEEE International Symposium on Circuits and Systems. IEEE. 6: 2777–2780. doi:10.1109/iscas.1992.230622. ISBN 0-7803-0593-0. S2CID 15069221.
- ^ Bengio, Y.; Simard, P.; Frasconi, P. (March 1994). "Learning long-term dependencies with gradient descent is difficult". IEEE Transactions on Neural Networks. 5 (2): 157–166. doi:10.1109/72.279181. ISSN 1941-0093.
- ^ Ioffe, Sergey; Szegedy, Christian (1 June 2015). "Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift". International Conference on Machine Learning. PMLR: 448–456. arXiv:1502.03167.
- ^ Santurkar, Shibani; Tsipras, Dimitris; Ilyas, Andrew; Madry, Aleksander (2018). "How Does Batch Normalization Help Optimization?". Advances in Neural Information Processing Systems. Curran Associates, Inc. 31.
- ^ J. Schmidhuber, "역사 압축 원리를 이용한 복잡한 확장 시퀀스", 신경 계산, 4, 페이지 234–242, 1992.
- ^ a b Hinton, G. E.; Osindero, S.; Teh, Y. (2006). "A fast learning algorithm for deep belief nets" (PDF). Neural Computation. 18 (7): 1527–1554. CiteSeerX 10.1.1.76.1541. doi:10.1162/neco.2006.18.7.1527. PMID 16764513. S2CID 2309950.
- ^ Hinton, G. (2009). "Deep belief networks". Scholarpedia. 4 (5): 5947. Bibcode:2009SchpJ...4.5947H. doi:10.4249/scholarpedia.5947.
- ^ Hochreiter, Sepp; Schmidhuber, Jürgen (1997). "Long Short-Term Memory". Neural Computation. 9 (8): 1735–1780. doi:10.1162/neco.1997.9.8.1735. PMID 9377276. S2CID 1915014.
- ^ 그레이브스, 알렉스, 위르겐, 슈미드허버, 요슈아 벤조의 다차원 반복 뉴럴 네트워크를 사용한 오프라인 필기 인식, 슈어만, 데일, 라퍼티, 존, 윌리엄스, 크리스 K.I.; 및 Culotta, Aron(eds), 신경 정보 처리 시스템 22(NIPS'22), 2009년 12월 7-10일, 밴쿠버, BC, 신경 정보 처리 시스템(NIPS) 재단, 2009 페이지 545–552.
- ^ Graves, A.; Liwicki, M.; Fernandez, S.; Bertolami, R.; Bunke, H.; Schmidhuber, J. (2009). "A Novel Connectionist System for Improved Unconstrained Handwriting Recognition". IEEE Transactions on Pattern Analysis and Machine Intelligence. 31 (5): 855–868. CiteSeerX 10.1.1.139.4502. doi:10.1109/tpami.2008.137. PMID 19299860. S2CID 14635907.
- ^ Schmidhuber, Jürgen (2015). "Deep learning in neural networks: An overview". Neural Networks. 61: 85–117. arXiv:1404.7828. doi:10.1016/j.neunet.2014.09.003. PMID 25462637. S2CID 11715509.
- ^ a b He, Kaiming; Zhang, Xiangyu; Ren, Shaoqing; Sun, Jian (2016). Deep Residual Learning for Image Recognition. 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Las Vegas, NV, USA: IEEE. pp. 770–778. arXiv:1512.03385. doi:10.1109/CVPR.2016.90. ISBN 978-1-4673-8851-1.
- ^ Veit, Andreas; Wilber, Michael; Belongie, Serge (20 May 2016). "Residual Networks Behave Like Ensembles of Relatively Shallow Networks". arXiv:1605.06431 [cs.CV].
- ^ a b Noel, Mathew Mithra; L, Arunkumar; Trivedi, Advait; Dutta, Praneet (4 September 2021). "Growing Cosine Unit: A Novel Oscillatory Activation Function That Can Speedup Training and Reduce Parameters in Convolutional Neural Networks". arXiv:2108.12943 [cs.LG].
- ^ Glorot, Xavier; Bordes, Antoine; Bengio, Yoshua (14 June 2011). "Deep Sparse Rectifier Neural Networks". PMLR: 315–323.
- ^ Noel, Matthew Mithra; Bharadwaj, Shubham; Muthiah-Nakarajan, Venkataraman; Dutta, Praneet; Amali, Geraldine Bessie (7 November 2021). "Biologically Inspired Oscillating Activation Functions Can Bridge the Performance Gap between Biological and Artificial Neurons". arXiv:2111.04020 [cs.NE].
- ^ 쿠마르, 싯다르트 크리슈나"심층 뉴럴 네트워크에서의 중량 초기화에 대하여." arXiv 프리프린트 arXiv:1704.08863(2017).
- ^ Yilmaz, Ahmet; Poli, Riccardo (1 September 2022). "Successfully and efficiently training deep multi-layer perceptrons with logistic activation function simply requires initializing the weights with an appropriate negative mean". Neural Networks. 153: 87–103. doi:10.1016/j.neunet.2022.05.030. ISSN 0893-6080. PMID 35714424. S2CID 249487697.
- ^ Sven Behnke (2003). Hierarchical Neural Networks for Image Interpretation (PDF). Lecture Notes in Computer Science. Vol. 2766. Springer.
- ^ "Sepp Hochreiter's Fundamental Deep Learning Problem (1991)". people.idsia.ch. Retrieved 7 January 2017.