층당 최적의 뉴런 수를 찾는 방법은 무엇입니까?


28

알고리즘을 작성할 때 단일 레이어 당 필요한 뉴런 수를 어떻게 알 수 있습니까? 최적의 수를 찾는 방법이 있습니까, 아니면 경험의 법칙입니까?

답변:



7

무작위 또는 철저한 검색보다 더 지능적인 접근 방식을 위해 NEAT http://nn.cs.utexas.edu/?neat 와 같은 유전자 알고리즘을 시도 할 수 있습니다. 그러나 이것은 전역 최적화를 찾을 수있는 것은 아니며 단순히 성능을 기반으로 한 최적화 알고리즘이므로 로컬 최적화에 빠지기 쉽습니다.


1
어쨌든 세계적인 최적에 가까워 질 것입니다.
jjmerelo

4

Paper Szegedy C, Vanhoucke V, Ioffe S 등 컴퓨터 비전을위한 초기 아키텍처 재검토 [J]. arXiv preprint arXiv : 1512.00567, 2015. 일부 일반적인 디자인 원칙을 제공합니다.

  1. 특히 네트워크 초기에 표현적인 병목 현상을 피하십시오.

  2. 네트워크의 폭과 깊이의 균형을 맞 춥니 다. 스테이지 당 필터 수와 네트워크 깊이의 균형을 조정하여 네트워크의 최적 성능에 도달 할 수 있습니다. 네트워크의 폭과 깊이를 모두 늘리면 고품질 네트워크에 기여할 수 있습니다. 그러나 둘 다 병렬로 증가하면 일정한 양의 계산에 대한 최적의 개선에 도달 할 수 있습니다. 따라서 계산 예산은 네트워크의 깊이와 너비 사이에 균형 잡힌 방식으로 분배되어야합니다.

그러나 이러한 제안으로 네트워크에서 최적의 뉴런 수를 얻을 수는 없습니다.

그러나 심층 신경망의 SSL (Structured Sparsity Learning) , SqueezeNet , 가지 치기 네트워크와 같은 일부 모델 압축 연구는 여전히 단일 계층 당 뉴런을 최적화하는 방법에 약간의 빛을 비출 수 있습니다.

특히 Deep Neural Networks의 Structured Sparsity LearningGroup Lasso 에서 손실 함수에 정규화 용어를 추가하여 DNN의 구조 (예 : 필터, 채널, 필터 모양 및 레이어 깊이)를 정규화합니다. 즉, 네트 구조의 필터, 채널, 필터 모양 및 레이어 깊이)는 네트워크의 현저한 소형화 및 가속을 달성하면서 작은 분류 정확도 손실을 유지합니다.


3

당신은 너무 많은 뉴런이있을 때 당신은 피팅 이상 극복 알고있다. NN이 불가능한 가장 완벽한 경기에서 활성화하려고 시도하기 때문에 제대로 작동하지 않음을 의미합니다. 같은 양의 원자를 가진 두 개의 다른 고양이와 마찬가지로, 즉 애완 동물 고양이의 사진에서만 활성화되는 검출기 NN입니다. nn을 활성화하려면 더 넓은 범위를 원합니다. 고양이 사진처럼.

과적 합은 실제 빠른 수정이없는 문제입니다. 너무 적은 수로 시작한 다음 계속 더 추가 할 수 있습니다. 또는 많은 것으로 시작한 다음 제대로 작동 할 때까지 제거하십시오.

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