2014-02-14 6 views
0

인공 신경망을 처음 사용하지만이 질문으로 저를 도와주십시오.출력 레이어의 뉴런 수

(MLP 및 SNN을 사용하여) 문자 인식을위한 인공 신경망을 구현하려는 경우 식별해야하는 문자 수만큼 출력 레이어에 동일한 수의 뉴런이 있어야합니다. 예를 들어 네트워크에서 대문자, 소문자 및 숫자를 식별 할 수있게하려면 출력 레이어에 26 + 26 + 10 개의 뉴런이 있어야합니다.

유니 코드 문자 집합의 모든 문자를 식별해야하는 경우 출력 레이어에서 몇 개의 뉴런이 필요한가요?

이 수를 줄이거 나 출력 레이어에 뉴런을 동적으로 추가 할 수있는 방법 (동적 임계 값)이 있습니까?

가능한 경우 연구 기사에 대한 링크를 제공하십시오. 감사합니다. .

+0

이 연구 기사는 특히 출력 수가 많은 출력 뉴런을 필요로하지 않는 신경망을 사용하는 문자 인식 방법을 제공합니다. http://yann.lecun.com/exdb/publis/pdf/lecun -98.pdf ... 기본적으로 출력 뉴런의 활성화 조합을 통해 출력을 예측할 수있는 방법을 제공합니다. – StrikeR

답변

3

아니요, 출력 수의 크기가 클래스 수와 일치하지 않아도됩니다.

출력 레이어의 출력이 네트워크 입력의 표현임을 이해하면됩니다. 즉, 당신은 원하는 출력 레이어를 가질 수있다. 클래스를 반영하는 인코딩을 원한다면 레이어의 노드 수를 줄이는 가장 쉬운 방법은 바이너리 인코딩을 사용하는 것입니다.

예 대신 8 개 클래스 (클래스 당 1 개 노드) 8 개 노드를 사용하면 3 개 뉴런을 사용할 수
등급 0 등급 1이 출력된다 0-0-0
출력을 인 0-0- 1 개
...
클래스 7은 출력 1-1-1

난 당신이 아이디어를 얻을 생각을합니다. 물론 바이너리뿐만 아니라 문자 그대로 인코딩 방법 (또는 Google)을 사용할 수 있습니다.

+0

고마워, 알았다. 이것은 내가 기대하고 있었던 것이다. 왜 나는 그것에 대해 생각할 수 없다는 것에 놀랐습니다. – rkrara

관련 문제