IT_World
딥 러닝을위한 전이 학습에 대 간단한 소개 본문
이 학습은 작업을 위해 개발된 모델을 두 번째 작업의 모델의 시작점으로 재사용하는 기계 학습 방법이다.
이러한 문제에 대한 신경망 모델을 개발하는 데 필요한 방대한 컴퓨팅 및 시간 리소스와 기술의 급격한 향상을 고려할 때 사전 훈련된 모델을 컴퓨터 비전 및 자연어 처리 작업의 시작점으로 사용하는 딥 러닝에서 널리 사용되는 접근 방식이다. 관련 문제에 대해 제공한다.
전이 학습을 사용하여 훈련 속도를 높이고 딥 러닝 모델의 성능을 개선하는 방법을 알아 보자.
- 전이 학습이란
- 딥 러닝에서 전이 학습의 일반적인 예
- 자신의 예측 모델링 문제에 전이 학습을 사용하는 경우
1. 전이 학습이란
전이 학습은 한 작업에서 훈련된 모델이 두 번째 관련 작업에서 용도가 변경되는 기계 학습 기술이다.
전이 학습 및 영역 적응은 한 환경에서 학습 한 내용이 다른 환경에서 일반화를 개선하기 위해 악용되는 상황을 나타낸다.
전이 학습은 두 번째 작업을 모델링할 때 빠른 진행 또는 향상된 성능을 최적화를 허용한다.
전이 학습은 이미 학습 한 관련 작업에서 지식을 이전하여 새로운 작업에서 학습을 향상하는 것
전이 학습은 다중 작업 학습 및 개념 드리프트와 같은 문제와 관련이 있으며 딥 러닝만을 위한 연구 영역이 아니다.
그럼에도 불구하고 전이 학습은 딥 러닝 모델을 훈련하는 데 필요한 방대한 리소스 또는 딥 러닝 모델이 훈련되는 크고 도전적인 데이터 세트를 고려할 때 딥 러닝에서 인기가 있다.
전이 학습은 첫 번째 작업에서 학습 한 모델 특징이 일반적인 경우에만 딥 러닝에서 작동한다. 딥 러닝에 사용되는 이러한 형태의 전이 학습을 귀납적 전이라고 한다.여기서는 다른 관련 작업에 맞는 모델을 사용하여 가능한 모델 (모델 편향)의 범위를 유익하게 좁힌다.
전이 학습을 사용하는 방법
자신의 예측 모델링 문제에 전이 학습을 사용할 수 있다.
두 가지 일반적인 접근 방식은 다음과 같습니다.
- 모델 접근 방식 개발
- 사전 훈련된 모델 접근 방식
1. 모델 접근 방식 개발
- 소스 작업을 선택 입력 데이터, 출력 데이터 및 / 또는 입력 데이터에서 출력 데이터로 매핑하는 동안 학습 한 개념에 관계가 있는 풍부한 데이터와 관련된 예측 모델링 문제를 선택해야 한다.
- 소스 모델 개발 다음으로이 첫 번째 작업을 위한 숙련된 모델을 개발해야 한다.일부 기능 학습이 수행되었는지 확인하려면 모델이 순진한 모델보다 우수해야 한다.
- 모델 재사용 그런 다음 소스 작업에 맞는 모델을 관심 있는 두 번째 작업에 대한 모델의 시작점으로 사용할 수 있다. 여기에는 사용된 모델링 기술에 따라 모델의 전체 또는 일부를 사용하는 것이 포함될 수 있다.
- 모델 조정 선택적으로, 모델은 관심 있는 작업에 사용할 수 있는 입력-출력 쌍 데이터에 맞게 조정되거나 개선되어야 할 수 있다.
2. 사전 훈련된 모델 접근 방식
- 소스 모델을 선택 사전 훈련 된 소스 모델은 사용 가능한 모델에서 선택된다. 많은 연구 기관은 선택할 수 있는 후보 모델 풀에 포함될 수있는 크고 까다로운 데이터 세트에 대한 모델을 출시한다.
- 모델 재사용 그런 다음 모델 사전 학습된 모델을 관심 있는 두 번째 작업에서 모델의 시작점으로 사용할 수 있다. 여기에는 사용된 모델링 기술에 따라 모델의 전체 또는 일부를 사용하는 것이 포함될 수 있다.
- 모델 조정 선택적으로 모델은 관심 있는 작업에 사용할 수 있는 입력-출력 쌍 데이터에 맞게 조정되거나 개선되어야 할 수 있다.
2. 딥 러닝을 사용한 전이 학습의 예
딥 러닝 모델을 사용한 전이 학습의 두 가지 일반적인 예를 통해이를 구체적으로 만들어 보자
2-1. 이미지 데이터로 전이 학습
이미지 데이터를 입력으로 사용하는 예측 모델링 문제로 전이 학습을 수행하는 것이 일반적이다.
이것은 사진이나 비디오 데이터를 입력으로 취하는 예측 작업 일 수 있다.
이 대회를 위한 모델을 개발하고 잘 수행하는 연구 조직은 재사용을 위한 허용 라이선스에 따라 최종 모델을 종종 출시한다. 이러한 모델은 최신 하드웨어를 학습하는 데 며칠 또는 몇 주가 걸릴 수 있다.
이러한 모델은 이미지 데이터를 입력으로 예상하는 새 모델에 직접 다운로드하여 통합할 수 있다.
이 유형의 모델의 세 가지 예는 다음과 같다.
- Oxford VGG 모델
- Google Inception 모델
- Microsoft ResNet 모델
더 많은 예제를 보려면 더 많은 사전 훈련된 모델이 공유되는 Caffe Model Zoo를 참조하자.
이 접근 방식은 이미지가 큰 사진 코퍼스에서 학습되었고 모델이 상대적으로 많은 수의 클래스에서 예측을 수행하도록 요구하기 때문에 효과적이다. 따라서 모델이 사진에서 특징을 추출하는 방법을 효율적으로 학습해야 잘 수행할 수 있다.
시각 인식을 위한 Convolutional Neural Networks에 대한 Stanford 과정에서 저자는 새 모델에 사용할 사전 훈련된 모델의 양을 신중하게 선택해야 한다.
2-1. 언어 데이터로 전이 학습
텍스트를 입력 또는 출력으로 사용하는 자연어 처리 문제로 전이 학습을 수행하는 것이 일반적이다.
이러한 유형의 문제에 대해 단어를 의미가 유사한 다른 단어가 비슷한 벡터 표현을 갖는 고차원 연속 벡터 공간에 매핑하는 단어 임베딩이 사용된다. 이러한 분산된 단어 표현을 학습하기 위한 효율적인 알고리즘이 존재하며, 연구 기관은 허용 라이선스에 따라 매우 큰 텍스트 문서에 대해 훈련된 사전 훈련 된 모델을 출시하는 것이 일반적이다.
이 유형의 모델의 두 가지 예는 다음과 같다.
- Google의 word2 vec 모델
- Stanford의 GloVe 모델
이러한 분산된 단어 표현 모델은 단어를 입력으로 해석하거나 모델에서 출력으로 단어를 생성할 때 딥 러닝 언어 모델에 다운로드하여 통합할 수 있다.
3. 전이 학습은 언제 사용하는가?
전이 학습은 최적화이며 시간을 절약하거나 성능을 향상하는 지름길이다.
일반적으로 모델이 개발되고 평가될 때까지 도메인에서 전이 학습을 사용하는 것이 이점이 있는지는 분명하지 않다.
전이 학습에 관한 장에서 Lisa Torrey와 Jude Shavlik은 전이 학습을 사용할 때 찾을 수 있는 세 가지 가능한 이점을 설명한다.
- 더 높은 시작.소스 모델에 대한 초기 기술 (모델을 수정하기 전)은 그렇지 않은 경우보다 높다.
- 더 높은 경사.원본 모델의 학습 중 기술 향상 속도는 그렇지 않은 경우보다 가파르다.
- 더 높은 점근선. 모델의 수렴된 기술은 그렇지 않은 경우보다 낫다.
이상적으로는 전이 학습을 성공적으로 적용하면 세 가지 이점을 모두 볼 수 있다.
풍부한 데이터로 관련 작업을 식별할 수 있고 해당 작업에 대한 모델을 개발하고 자신의 문제에 재사용할 수 있는 리소스가 있는지 또는 다음과 같이 사용할 수있는 사전 학습 된 모델이 있는지 시도하는 접근 방식입니다. 자신의 모델을위한 출발점이다.
데이터가 많지 않을 수있는 일부 문제에서 전이 학습을 사용하면 전이 학습이 없으면 개발할 수 없는 숙련된 모델을 개발할 수 있다.
소스 데이터 또는 소스 모델의 선택은 열린 문제이며 도메인 전문 지식 및 / 또는 경험을 통해 개발된 직관이 필요할 수 있다.