신경만 훈련시키기
-
[cs231n] 7강 신경망 훈련하기 (3/4, 더 멋진 최적화 (fancier optimization 3))AI 2021. 3. 23. 17:11
진짜 빠르고 더럽고 쉬운 것은 이 모델 앙상블 (model ensembles)을 시도하는 겁니다. 이건 때때로 머신러닝의 많은 다양한 영역에서 동작합니다. 아이디어는 꽤 단순합니다. 하나의 모델만 가지기 보다는, 10개의 다른 모델을 임의의 다른 초기 재시작으로 독립적으로 훈련시킬 겁니다. 테스트시에는 데이타를 10개의 모델 모두에서 실행시키고 이 10개의 모델의 예측값을 평균냅니다. 이 여러 개의 모델을 같이 더하는 것은 과적합 (overfitting)을 약간 줄여주고 성능을 약간 개선합니다. 일반적으로 2% 정도죠. 이건 보통 극적인 개선은 아니지만, 일관적인 개선입니다. 이미지넷 (ImageNet)이나 다른 경연에서, 최대 성능을 얻기 위해 모델 앙상블을 사용하는 것은 매우 흔한 일이라는 것을 알게..
-
[cs231n] 7강 신경망 훈련하기 (2/4, 더 멋진 최적화 (fancier optimization))AI 2021. 3. 23. 14:35
모멘텀을 약간 변형한 것이 있는데, 가끔 볼 수 있는 것이고, 네스테로프 (Nesterov) 가속 경사라고 불립니다. 때로는 네스테로프 모멘텀이라고 불리죠. 이건 순서를 조금 바꿉니다. 일반적인 SGD 모멘텀에서는, 현재 위치에서 경사를 추정하고 우리의 속도와 경사를 혼합할 것을 취합니다. 네스테로프 가속 경사에서는 약간 다른 것을 합니다. 여기서 여러분은 빨간 점에서 출발하고 속도가 여러분을 데려가는 방향으로 움직입니다. 그지점에서 경사를 평가하고 원점으로 돌아가서 그 둘을 섞습니다. 이건 좀 재밌는 해석이긴 하지만 여러분은 정보를 약간 더 섞는다고 생각할 수 있습니다. 만약 어러분의 속도의 방향이 약간 잘못되었다면, 그건 목표 지형의 약간 더 큰 부분으로부터 경사 정보를 통합시킬 수 있도록 해주는 거..