2015-01-17 5 views
4

저는 Conv Nets와 Julia의 Mocha.jl 패키지 (Caffe와 많이 비슷하지만 Julia REPL에서 재생할 수있는)를 사용하여 많은 곡을 읽었습니다.길쌈 신경 네트워크 계층에서 사용할 기능 맵의 수를 결정하는 방법은 무엇입니까?

Conv net에서 Convolution 레이어 뒤에는 "feature map"레이어가옵니다. 내가 궁금해하는 점은 네트워크가 특정 문제를 해결하기 위해 얼마나 많은 기능 맵을 필요로하는지 판단하는 것입니다. 이것에 과학이 있습니까? 아니면 더 예술입니까? MLP를 네트워크의 최상위에 완전히 연결하지 않았다면 적어도 마지막 레이어에는 많은 수의 기능 맵 (예 : 클래스 수)이 있어야한다는 것을 알 수 있습니다.

제 경우에는 이미지의 모든 픽셀에 대한 값을 생각해 보는 것과 같은 분류를하지는 않습니다 (클래스가 0에서 255 사이의 분류로 볼 수 있습니다) .

편집 : 의견에서 지적한대로 출력이 0에서 255 (이 경우 그레이 스케일) 범위에있는 회귀 문제를 해결하려고합니다. 그럼에도 불구하고 문제는 남아 있습니다 : 임의의 컨볼 루션 계층에서 사용할 피쳐 맵의 수를 어떻게 결정합니까? 회귀 문제와 분류 문제가 다른가?

+0

분류에서는 255 대신 255를 255 대신 254로 예측하는 것이 좋다고 가정합니다. 대부분의 경우, 그렇다고 볼 수는 없습니다. 분류 1 대신 회귀 문제를 풀기. –

+0

@ Barmaley.exe : 예. 하지만 CNN에서 볼 수있는 대다수의 논문은 회귀 문제가 아니라 분류 문제를 해결하고 있습니다. 두 경우 모두 사용할 기능 맵의 수가 결정되는 방법에 대해 궁금합니다. – aneccodeal

+0

@ BartoszKP, 귀하의 명세서는 손실 기능을 지정하지 않는 한 이해가되지 않습니다. 가장 인기있는 두 가지 측면은 교차 엔트로피 (분류)와 L2 손실 (회귀)입니다. 그리고 교차 엔트로피는 대상의 구체적인 수치 값에 의존하지 않으며, 그것의 순서에 의존하지도 않습니다. –

답변

3

기본적으로 다른 하이퍼 매개 변수와 마찬가지로 - 별도의 개발 설정에서 결과를 평가하고 가장 적합한 숫자를 찾는 것입니다. 또한 비슷한 문제를 다루는 출판물을 점검하고 그들이 사용하고있는 몇 가지 기능 맵을 찾는 것도 가치가 있습니다.

+2

필터의 레이어가 더 깊어 질수록 필터의 수가 증가하는 추세가있다. 전환 망. 이것을 할 어떤 이유가 있습니까? – dnth

+1

나는 cnn에 대한 전문가가 아니지만, 이것이 특징 구성의 결합 자 특성 때문이라고 생각합니다. – Taozi

1

기타 예술. 전환 망을 사용하는 imagenet 수상자 간의 유일한 차이점은 계층의 구조와 어쩌면 새로운 훈련 방법을 변화 시켰습니다.

VGG는 깔끔한 예입니다. 2^7, 2^8, 2^9로 시작하는 필터 크기부터 완전히 연결된 레이어로 시작한 다음 출력 레이어를 통해 클래스를 제공합니다. 맵과 레이어 깊이는 출력 클래스 수와 완전히 관련이 없습니다.

상단에 완전히 연결된 레이어를 원하지 않을 것입니다. 그런 종류의 컨볼 루션 그물은 풀 수 있도록 설계되었습니다 (뉴런 당 수십만 개의 가중치를 과장하고 최적화)

큰 세트의 교육에는 많은 연산 리소스가 필요할 것입니다. imagenet을 사용하는 경우 - 위에 구축 할 수있는 카페가있는 사전 훈련 된 모델 집합이 있습니다 http://caffe.berkeleyvision.org/model_zoo.html

모카로 이식 할 수 있는지 확실하지 않습니다. 그래도 관심이 있다면 텐서 흐름을위한 포트가 있습니다 https://github.com/ethereon/caffe-tensorflow

관련 문제