# 전이학습이란?

전이학습transfer learning이란 신경망의 일부 또는 전체 신경망 가중치 파라미터를 MLE를 통해 학습 데이터에 본격적으로 훈련시키기에 앞서, 다른 데이터셋이나 목적 함수를 사용해 미리 훈련 한 후, 이를 바탕으로 본격적인 학습에서 신경망 가중치 파라미터를 더 쉽게 최적화하는 것을 가리킵니다.

> 이와 비슷한 개념으로 멀티 태스크 학습(multi-task learning)이 있습니다. 이는 여러개의 서로 다른 데이터셋 또는 목적 함수를 동시에 신경망에게 학습 시키는 것입니다.

이미 수 년 전부터 영상 처리 분야에서는 이미지넷ImageNet에서 사용되던 신경망 가중치 파라미터 값을 사용해 다른 문제에 전이학습을 적용하는 접근 방법이 흔하게 쓰였습니다. 그 동안 자연어 처리 분야에서는 전이학습을 사용하기보다는 본질적인 문제 해결에 집중해온 모양새였습니다. 하지만, 최근 많은 문제가 딥러닝을 통해 어느 정도 해결이 되면서 성능을 극대화할 수 있는 방법들을 모색하기 시작했고, 기존의 문제점들을 보완한 여러 전이학습 방법들이 제시되고 각종 자연어 처리 문제 해결에 뛰어난 성능을 보이면서 점차 주류로 자리잡아가는 추세입니다.

전이학습은 더 넓은 범위의 목적objective을 갖는 비지도학습 문제의 전역 최소점global minima은 더 작은 범위의 목적을 갖는 지도학습 문제의 전역 최소점을 포함하고 있을 가능성이 높습니다. 따라서 우리는 비지도학습을 통해 지역 최소점local minima을 찾고 나면, 추가 지도학습에서 더 낮은 지점의 지역 최소점에 도달할 수 있을 것입니다.

> 요즈음 학계의 추세는 모델이 깊고 넓어져 많은 가중치 파라미터를 갖게 될수록 지역 최소점에 대한 문제가 자연스럽게 해소되어 점점 전역 최소점에 가까워진다고 생각하는 편입니다.

사전에 훈련된 신경망의 각 계층들은 문제를 해결하기 위한 데이터들을 잘 설명할 수 있는 특징feature들을 추출하도록 훈련되어 있을 것입니다. 따라서 만약 우리가 비슷한 특징을 지닌 데이터셋으로 유사한 문제를 해결하고자 한다면, 랜덤하게 초기화된 상태의 가중치 파라미터에서 최적화를 시작하기보다는 기존에 이미 훈련된 가중치 파라미터에서 조금만 바꿔서 새로운 문제를 풀게 하는 편이 훨씬 쉬울 수 있습니다.

즉, 랜덤 초깃값에서 최적화를 시작하는 것은 데이터셋의 노이즈noise와 경사하강법의 한계 때문에 어려울 수 있지만, 사전 훈련된 가중치 파라미터 값에서 최적화를 시작하는 것은 앞에서 설명한 문제를 어느 정도 해결해줄 수도 있습니다. 따라서, 사전 훈련을 통해 우리는 좀더 높은 성능을 기대할 수 있을 것입니다. 물론 당연히 완전 다른 성격의 데이터셋 또는 다른 성격의 문제를 해결할 때 사전 훈련은 그만큼 도움이 되지 않을 가능성이 높습니다.

게다가 만약 사전 훈련에 사용된 훈련 데이터셋이 매우 방대하고 자세한 정보를 담고 있었다면, 새로운 문제를 위한 데이터셋이 미처 담지 못한 정보를 포함할 수도 있습니다. 그렇다면, 랜덤 초깃값에서부터 훈련시킬 때는 얻을 수 없었던 해결 능력을 덤으로 얻을 수 있을 것이고, 사전 훈련 덕분에 성능이 향상될 것입니다.
