그럼 앞에서 입력계층에서 은닉계층으로 값을 전달했었습니다.
이 값을 즉 은닉계층으로 전달되는 이 값을 가중치와 행렬곱하여 출력계층으로 전달하겠습니다.
앞에서 은닉계층의 첫번째 노드에 입력된 값은 0.924
은닉계층의 두번째 노드에 입력된 값은 0.986
은닉계층의 세번째 노드에 입력된 값은 0.845
그림으로 표현해본다면 다음과 같습니다.
은닉계층과 출력계층간 가중치는 앞에서 했던것과 동일하게 적용하여 다음과 같죠?
그럼 이것을 행렬식으로 만들어보면
입력 행렬은 다음과 같고
가중치 행렬은 출력계층에 첫번째 노드에 연결된 가중치 두번째 노드에 연결된 가중치 세번째 노드에 연결된 가중치를 차례차례 작성합니다.
그럼 행렬곱을 해보면
하나하나 계산을 해보면
0.6468 + 0.1972 + 0.845
1.324 + 0.493 + 0.2535
0.8316 + 0.7888 + 0.507
다음과 같죠. ^^
자, 여기까지 답이 앞에서 했던것과 동일합니다. 즉 앞도 여기도 잘 계산을 했거나 또는 둘다 계산을 잘못했거나인데 이상없다고 생각합니다.
자 그럼 최종적으로 시그모이드 함수를 적용하면
위와 같이 최종 출력값은
0.717
0.753
0.894
이렇게 나왔습니다. 앞에서 계산했던 결과와 같나 이미지를 가져와 보겠습니다.
거의 일치합니다. 마지막 값은 반올림 유무에 관해 0.001의 차이가 있습니다.
이렇게 행렬곱을 사용해 신경망의 입력값과 가중치를 풀어봤습니다.
지치네요. 여러분도 수고하셨습니다.
다음시간에 또 봐요.
제가 지금 다른곳에 정신이 팔려있는것 같습니다.
다음 강좌를 원하시면
아래의 요청하기 버튼을 눌러주세요.
댓글 0개
정렬기준