0

나는 단순한 Feed Forward Artificial Neural Network for Symbol Recognition을 작성했습니다.신경망에서 비정상적인 결과

5x5 픽셀 격자에 6 세트의 심볼이 있습니다.

이들은 예 X 들어 {X, +, -, \, /, |}

가 될 것이다 :

내 ANN 25 개 입력 뉴런 이루어져 0과 1 회색 잡음 개

X = [1,0,0,0,1, 
    0,1,0,1,0, 
    0,0,1,0,0, 
    0,1,0,1,0, 
    1,0,0,0,1] 

값합니다 (5 × 5 일 수있다 그리드), 바이어스가있는 6 개의 숨겨진 뉴런, 6 개의 출력 뉴런.

각 출력 뉴런은 심볼에 매핑됩니다. 0과 1 사이의 출력은 어느 기호가 인식되는지를 결정한다. 즉, 기호는 출력 노드의 최대 값에 대해 선택된다.

- 출력이 {X : 0.9, + : 0.2, - : 0.1, \ : 0.15,/: 0.15, | : 0.2} 인 경우 인식 된 기호는 X입니다.

아주 잘 작동하는 것 같습니다. 다음 실험을 수행했습니다 :

나는 위의 6 개의 기호를 가지고 잡음 함수 addNoise(n)을 생성했습니다. 여기서 n은 그 입력에 무작위로 추가 된 잡음의 비율입니다.

0과사이의 각 노이즈 값에 대해 2000 번 테스트를 실행했습니다. 노이즈는 매번 약간씩 임의로 변경됩니다. X에서이 작업을 수행 할 때 다음 그래프가 나타납니다.

enter image description here

당신은 전체 크기를보고 다른 페이지에 이미지를 열어야 할 수도 있습니다.

X 테스트 입력에 약 40% (x 축에 400) 노이즈를 주입 한 후 알 수 있듯이 다른 심볼을 예측하기 시작합니다.

X에 노이즈가 추가 된 경우 네트워크 예측치가 X이고 \ 인 동일한 기회가 있습니다.

어쨌든, 내 질문은 :

그들이 X 기호에 대한 동일로

\/에 대한 그래프의 라인이 거의 완벽하게 정렬되지할까요?

노이즈가 70% 인 경우 네트워크는 균등하게 X\을 혼합합니다.

그러나 ~ 88% 노이즈 이후에 네트워크는 X/까지 똑같이 섞입니다.

왜 네트워크에서 이러한 결과를 얻을 수 있습니까?

답변

1

학습 중에 네트워크가 complete 문자 X을 학습하고 있다고 가정합니다. 어쩌면 배운 내부 표현은 /으로 매우 편향되어 있고 \의 비트가 혼합되어 있습니다. 즉 입력이 강한 / 구성 요소와 일부 \ 구성 요소 인 경우 - X을 예측합니다. 이 정보는 X을 다른 문자 (구별 할 때)와 구별하기에 충분합니다. 교육 NN은 손실 함수를 기반으로합니다.이 표현이 이미 클래스를 만족하면 네트워크는 더 강력한 표현을 배울 필요가 없습니다.

소량의 노이즈를 주입하면 많은 노이즈를 주입해야하는 /과 쉽게 비교하여 \ 구성 요소가 불투명 해집니다.