2010-04-22 4 views
4

저는 최근에 얼굴 인식에 대해 조사해 왔으며 많은 문헌에 출력물에 범위가 있다고 나와 있습니다. 이것이 어떻게 가능한지? 나 자신의 네트워크를 만들었고 -1 또는 1을 출력하는 것으로 보인다. Tanh 정품 인증 기능을 사용하고 있기 때문에 이것이 맞습니까? 값을 이진 출력 이라기보다 범위에서 0에서 1로 출력하고 싶기 때문에 출력이 실제로 얼굴이라고 생각하는 방법을 "강하게"볼 수 있습니다. 감사.신경망이 아닌 값을 출력 하시겠습니까?

+0

어떤 종류의 신경 세포를 사용하고 있습니까? –

+0

Tanh는 모든 항목을 포함하여 [-1,1]에 매핑됩니다. 구현에 대한 세부 정보를 제공하십시오. 어쩌면 원하는 범위에 대해 .5 * (1 + tanh)을 선택하기 만하면됩니다. –

+0

그럼 NeuronDotNet 라이브러리는 다음 위치에 있습니다. http://neurondotnet.freehostia.com/index.html 내 숨겨진 출력 레이어는 Tanh를 사용합니다. 교육 샘플은 얼굴 용으로 0.9, 얼굴이 아닌 경우에는 -0.9로 설정됩니다 . – Harry

답변

2

문제는 tanh의 입력 범위 일 수 있습니다. Sigmoid는 tanh와 비슷하게 작동합니다. 큰 숫자로 쉽게 오버로드 될 수 있습니다. sigmoid (20)는 거의 1입니다. 이고 시그마 이드 (-20)는 0입니다. 입력 레이어의 입력을 먼저 정규화하고 숨겨진 레이어와 출력 레이어에서 더 작은 숫자를 갖도록 시도하십시오.

+0

감사합니다. 내 게시물을 게시 할 때 답장을 보지 못했습니다. 나는 그것이 작동하지 않았던 이유인지 몰랐다. – Harry

+0

입력이 정규화되어야하는 레벨의 종류에 관심이 있으십니까? 나는 -0.5에서 0.5를 사용했다. 분명히 그것은 Tanh과 함께 괜찮 았지만 Sigmoid와는 다르다. – Harry

0

예 ... 인증 기능이 귀하의 값을 결정합니다. 우리가 출력 뉴런에 활성화 함수를 넣지 않으면, 단순히 값의 합계를 출력 할 것입니다.이 경우에 비 균일 출력과 불균일 한 기대 값 사이의 실제 오차가 생깁니다.

예상되는 값을 표준화하면 활성화 기능을 유지할 수 있습니다.

0

그래, 무슨 일이 있었는지 Tanh 기능이 너무 일찍 도달했다고 생각해. 이제 출력 레이어에서 시그 모이 드 활성화 기능으로 바뀌었고 훨씬 더 다양한 답변을 얻었습니다! :) 좋아. 감사.