부본 전이 학습이란 무엇입니까? - Unite.AI
Rescale 미팅 예약

AI 101

전이 학습이란 무엇입니까?

mm
업데이트 on

전이 학습이란 무엇입니까?

기계 학습을 연습할 때 모델을 훈련하는 데 시간이 오래 걸릴 수 있습니다. 처음부터 모델 아키텍처를 생성하고 모델을 훈련한 다음 모델을 조정하는 데는 엄청난 시간과 노력이 소요됩니다. 기계 학습 모델을 훈련하는 훨씬 더 효율적인 방법은 이미 정의된 아키텍처를 사용하고 잠재적으로 이미 계산된 가중치를 사용하는 것입니다. 이것이 뒤에 있는 주요 아이디어입니다. 전학 학습, 이미 사용된 모델을 가져와 새 작업을 위해 용도를 변경합니다.

전이 학습을 사용할 수 있는 다양한 방법을 살펴보기 전에 전이 학습이 왜 그렇게 강력하고 유용한 기술인지 잠시 알아보겠습니다.

딥 러닝 문제 해결

이미지 분류기 구축과 같은 딥 러닝 문제를 해결하려고 할 때 모델 아키텍처를 생성한 다음 데이터에 대해 모델을 교육해야 합니다. 모델 분류기 교육에는 네트워크 가중치 조정이 포함되며, 이 프로세스는 모델과 데이터 세트의 복잡성에 따라 몇 시간 또는 며칠이 걸릴 수 있습니다. 교육 시간은 데이터 세트의 크기와 모델 아키텍처의 복잡성에 따라 조정됩니다.

모델이 작업에 필요한 정확도를 달성하지 못하는 경우 모델을 조정해야 할 가능성이 높으며 그런 다음 모델을 재교육해야 합니다. 이는 최적의 아키텍처, 교육 길이 및 데이터 세트 파티션을 찾을 수 있을 때까지 더 많은 교육 시간을 의미합니다. 분류기가 유용하기 위해 얼마나 많은 변수가 서로 정렬되어야 하는지 고려할 때 기계 학습 엔지니어가 항상 모델을 교육하고 구현하는 더 쉽고 효율적인 방법을 찾고 있다는 것이 이치에 맞습니다. 이러한 이유로 전이 학습 기술이 만들어졌습니다.

모델을 설계하고 테스트한 후 모델이 유용한 것으로 판명되면 나중에 유사한 문제에 대해 저장하고 재사용할 수 있습니다.

전이 학습의 유형

일반적으로 두 가지 다른 전이 학습의 종류: 처음부터 모델을 개발하고 사전 학습된 모델을 사용합니다.

처음부터 모델을 개발할 때 훈련 데이터를 해석하고 그로부터 패턴을 추출할 수 있는 모델 아키텍처를 만들어야 합니다. 모델을 처음 학습한 후에는 모델에서 최적의 성능을 얻으려면 모델을 변경해야 할 수 있습니다. 그런 다음 모델 아키텍처를 저장하고 유사한 작업에 사용할 모델의 시작점으로 사용할 수 있습니다.

두 번째 조건인 사전 훈련된 모델의 사용에서는 활용할 사전 훈련된 모델을 선택하기만 하면 됩니다. 많은 대학과 연구 팀이 모델의 사양을 일반 용도로 사용할 수 있도록 만들 것입니다. 모델의 아키텍처는 가중치와 함께 다운로드할 수 있습니다.

전이 학습을 수행할 때 당면한 작업에 전체 모델 아키텍처 및 가중치를 사용하거나 모델의 특정 부분/레이어만 사용할 수 있습니다. 사전 학습된 모델 중 일부만 사용하고 나머지 모델을 학습시키는 것을 미세 조정이라고 합니다.

네트워크 미세 조정

네트워크 미세 조정은 네트워크의 일부 계층만 훈련하는 프로세스를 설명합니다. 새 교육 데이터 세트가 원래 모델을 교육하는 데 사용된 데이터 세트와 매우 유사한 경우 많은 동일한 가중치를 사용할 수 있습니다.

고정을 해제하고 재훈련해야 하는 네트워크의 계층 수는 새 데이터 세트의 크기에 따라 확장되어야 합니다. 훈련 중인 데이터 세트가 작다면 대부분의 레이어를 그대로 유지하고 마지막 몇 개의 레이어만 훈련하는 것이 더 좋습니다. 이는 네트워크가 과적합되는 것을 방지하기 위한 것입니다. 또는 사전 훈련된 네트워크의 마지막 계층을 제거하고 새로운 계층을 추가한 다음 훈련할 수 있습니다. 반대로, 데이터 세트가 원래 데이터 세트보다 잠재적으로 더 큰 큰 데이터 세트인 경우 전체 네트워크를 재교육해야 합니다. 다음과 같이 네트워크를 사용하려면 고정된 특징 추출기, 대부분의 네트워크는 기능을 추출하는 데 사용할 수 있지만 네트워크의 마지막 계층만 동결 해제 및 훈련할 수 있습니다.

네트워크를 미세 조정할 때 ConvNet의 이전 계층에는 이미지의 보다 일반적인 기능을 나타내는 정보가 포함되어 있다는 점만 기억하십시오. 가장자리 및 색상과 같은 기능입니다. 대조적으로, ConvNet의 이후 계층은 모델이 처음 훈련된 데이터 세트 내에 있는 개별 클래스에 더 특정한 세부 정보를 보유합니다. 원래 데이터 세트와 상당히 다른 데이터 세트에서 모델을 교육하는 경우 모델의 초기 계층을 사용하여 기능을 추출하고 나머지 모델을 재교육할 수 있습니다.

전이 학습 예시

전이 학습의 가장 일반적인 응용 프로그램은 아마도 이미지 데이터를 입력으로 사용하는 응용 프로그램일 것입니다. 이들은 종종 예측/분류 작업입니다. 방법 컨볼 루션 신경망 이미지 데이터 해석은 컨벌루션 레이어가 종종 매우 유사한 기능을 구별하므로 모델의 측면을 재사용하는 데 적합합니다. 일반적인 전이 학습 문제의 한 가지 예는 1000개의 서로 다른 개체 클래스로 가득 찬 대규모 데이터 세트인 ImageNet 1000 작업입니다. 이 데이터 세트에서 고성능을 달성하는 모델을 개발하는 회사는 종종 다른 사람들이 모델을 재사용할 수 있도록 라이선스에 따라 모델을 출시합니다. 이 프로세스의 결과로 나온 일부 모델에는 다음이 포함됩니다. 마이크로소프트 ResNet 모델, Google 시작 모델 및 옥스포드 VGG 모델 그룹입니다.

전문 분야의 블로거 및 프로그래머 기계 학습 깊은 학습 주제. 다니엘은 다른 사람들이 사회적 이익을 위해 AI의 힘을 사용하도록 돕기를 희망합니다.