나는 단순한 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
에서이 작업을 수행 할 때 다음 그래프가 나타납니다.
당신은 전체 크기를보고 다른 페이지에 이미지를 열어야 할 수도 있습니다.
X 테스트 입력에 약 40%
(x 축에 400) 노이즈를 주입 한 후 알 수 있듯이 다른 심볼을 예측하기 시작합니다.
X
에 노이즈가 추가 된 경우 네트워크 예측치가 X
이고 \
인 동일한 기회가 있습니다.
어쨌든, 내 질문은 :
그들이X
기호에 대한 동일로
이 \
및 /
에 대한 그래프의 라인이 거의 완벽하게 정렬되지할까요?
노이즈가 70%
인 경우 네트워크는 균등하게 X
과 \
을 혼합합니다.
그러나 ~ 88%
노이즈 이후에 네트워크는 X
과 /
까지 똑같이 섞입니다.
왜 네트워크에서 이러한 결과를 얻을 수 있습니까?