신경망 사전 훈련이란 무엇입니까?


22

문제는 모든 것을 말합니다.

"신경망 사전 훈련"이란 무엇입니까? 누군가 순수하고 간단한 영어로 설명 할 수 있습니까?
관련 리소스가없는 것 같습니다. 누군가 나를 가리킬 수 있다면 좋을 것입니다.


www.deeplearningbook.org에는이 주제에 대한 좋은 소개가 있습니다.
mnagaraj

답변:


22

네트워크를 훈련시키는 일반적인 방법 :

데이터 세트 (예 : 이미지 세트)에서 작업 (예 : 분류)을 수행하도록 신경망을 학습하려고합니다. 가중치를 무작위로 초기화하여 훈련을 시작합니다. 훈련을 시작하자마자 실수가 적은 작업 (예 : 최적화)을 수행하기 위해 가중치가 변경됩니다. 훈련 결과에 만족하면 어딘가에 네트워크의 무게를 줄일 수 있습니다.

이제 다른 데이터 세트 (예 : 이미지는 있지만 이전에 사용했던 이미지와 동일하지는 않음)에서 새 작업 (예 : 개체 감지)을 수행하도록 네트워크를 훈련하는 데 관심이 있습니다. 첫 번째 네트워크에서 수행 한 작업을 반복하고 무작위로 초기화 된 가중치로 훈련을 시작하는 대신 이전 네트워크에서 저장 한 가중치를 새 실험의 초기 가중치로 사용할 수 있습니다. 이러한 방식으로 가중치를 초기화하는 것을 사전 훈련 된 네트워크를 사용하는 것으로합니다. 첫 번째 네트워크는 사전 훈련 된 네트워크입니다. 두 번째는 미세 조정중인 네트워크입니다.

사전 훈련의 아이디어는 무작위 초기화가 ... 잘 ... 무작위입니다. 무게 값은 해결하려는 작업과 관련이 없습니다. 값 집합이 다른 집합보다 나은 이유는 무엇입니까? 그러나 어떻게 다른 가중치를 초기화 하시겠습니까? 작업에 맞게 올바르게 초기화하는 방법을 알고 있다면 최적의 값 (약간 과장)으로 설정할 수도 있습니다. 교육 할 필요가 없습니다. 문제에 대한 최적의 솔루션이 있습니다. 사전 교육을 통해 네트워크를 빠르게 시작할 수 있습니다. 마치 이전에 데이터를 본 것처럼.

사전 훈련시주의 사항 :

네트워크 사전 교육에 사용 된 첫 번째 작업은 미세 조정 단계와 동일 할 수 있습니다. 사전 훈련과 미세 튜닝에 사용 된 데이터 세트도 동일 할 수 있지만 다를 수도 있습니다. 다른 작업과 다른 데이터 집합에 대한 사전 교육을 새로운 데이터 집합과 약간 다른 새 작업으로 어떻게 전송할 수 있는지 보는 것은 정말 흥미 롭습니다 . 사전 훈련 된 네트워크를 사용하는 것은 일반적으로 두 작업 또는 두 데이터 세트에 공통점이있는 경우에 적합합니다. 간격이 클수록 프리 트레이닝이 덜 효과적입니다. 재무 데이터에 대해 먼저 교육함으로써 이미지 분류를위한 네트워크를 사전 훈련하는 것은 의미가 없습니다. 이 경우 사전 훈련 단계와 미세 조정 단계 사이에 연결 이 너무 많이 끊어 집니다.


10

사전 교육 / 미세 조정은 다음과 같이 작동합니다.

  1. 에이
  2. 에이

에이


참고 : 사람들은 가중치를 고정하지 않은 경우에만 미세 조정이라는 용어를 사용할 수 있습니다. 이 용어가 일관성있게 사용되는지 확실하지 않습니다
Martin Thoma

4

위의 두 답변이 잘 설명되어 있습니다. DBN (Deep Belief Nets)에 대한 사전 교육과 관련하여 미묘한 점을 하나 추가하려고합니다. DBN에 대한 사전 교육은 비지도 학습 (즉, 라벨이없는 데이터)이고 이후 교육은지도 학습 (즉, 라벨이있는 데이터)입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.