신경망에서 최적의 계층 수?


13

신경망 (Feedforward, Back Propagation 또는 RNN)을 구현하는 동안 생성 할 최적의 레이어 수를 결정하는 방법은 무엇입니까?

답변:


8

Pruning신경망 이라고 불리는 기술이 있는데 , 이것은 같은 목적으로 만 사용됩니다.

가지 치기는 숨겨진 레이어 수에 따라 수행됩니다. 이 프로세스는 의사 결정 트리의 정리 프로세스와 매우 유사합니다. 정리 프로세스는 다음과 같이 수행됩니다.

  • 표준 교육 알고리즘을 사용하여 조밀하게 연결된 대규모 네트워크 교육
  • 훈련 된 네트워크를 검사하여 가중치의 상대적 중요성을 평가하십시오.
  • 가장 중요한 무게를 제거하십시오
  • 정리 된 네트워크 재교육
  • 만족할 때까지 2-4 단계를 반복하십시오.

그러나 신경망을 가지 치기위한 최적화 된 방법몇 가지 있으며, 매우 활발한 연구 분야 이기도합니다 .


대칭 방식은 네트워크 아키텍처에 적용되는 일반적인 "그리드 검색"입니다. 작게 (빠르게) 시작하고 더 큰 아키텍처를 자동으로 시도하십시오. 그러나이 모든 것은 단지 무차별적인 힘이다.
Eric Platon

그리드 검색을위한 @EricPlaton +1 ML 튜닝 하이퍼 튜닝에 매우 편리합니다. 그러나 계산적으로 매우 집중적이지 않습니까?
Dawny33

1
예, 비싸요. 그러나 작은 규모로 시작할 수있을 때 첫 단계는 빠르게 진행될 수 있으며 무엇을 목표로해야할지 더 잘 알 수 있습니다.
Eric Platon

이 : 자신의 대한 @EricPlaton "그리드 검색은"별도의 대답을받을 자격이 것
Dawny33

나는 그것에 대해 생각했지만 두 가지 대안과 아마도 똑같이 정답이있을 것입니다 ... 독자에게 가장 좋은 것은 답을 하나로 컴파일하는 것이라고 생각했습니다.
Eric Platon

0

하이퍼 파라미터의 함수로 손실 (또는 기타)을 최적화하는 일반적인 방법으로 베이지안 하이퍼 파라미터 최적화를 살펴볼 수 있습니다. 그러나 일반적으로 네트워크가 깊어 질수록 더 나은 계층이므로 여러 계층의 함수로 손실을 최적화하는 것은 그리 재미있는 일이 아닙니다.

그리드 검색과 약간의 상식 (많은 예제를 통해 알 수 있듯이)이 최선의 방법입니다.

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