오랜만에 포스팅을 해보고자 한다. 오늘 할 내용은 지난번에 하기로 한 신경망이 어떻게 논리 게이트가 될 수 있는지 알아보자
신경망은
지난번과 동일하다.
입력값과 weight 값의 곱의 합이 신경에 들어가고 그값이 NET이 된다. 그 다음 NET에 적당한 함수를 씌워주면 출력값 y가 나온다.
그리고 그 다음 논리 게이트(gate)는 보통 논리 소자라고 불리는데, and, or, not, nand 게이트 들을 말한다.
가장 먼저 and 게이트를 만들어보자
입력값은 (1,1)이다. 그러면 u = 1*1 + 1*1 - 1.5 이므로 그러면 결과값은 0.5이다. 그 다음 순서는 적절한 함수를 적용하는 건데, 지금은 스텝 함수를 적용하겠다(스텝 함수는 입력값이 0보다 크거나 같으면 1을, 0보다 작으면 0을 돌려주는 함수이다.) 그렇게 되면 최종 결과값은 1이다. 이렇게 해서 4가지 경우를 정리해보자
입력(x_1, x_2) | u값 | 출력 z |
(0,0) | -1.5 | 0 |
(0,1) | -0.5 | 0 |
(1,0) | -0.5 | 0 |
(1,1) | 0.5 | 1 |
결과값이 and게이트와 동일하다. 이런 식으로 or, not, nand를 만들수 있다. 여기서 생각해둬야할 점은 최종 결과값은
x1과 x2과 위의 결과를 만족할 경우만 최종 결과값에서 1이 출력된다는 점이다. 이 항목에 대해서는 다음에 이어서 하겠습니다.
'공학 > 인공지능' 카테고리의 다른 글
신경망 시작 - McCulloch_Pitt 모델(1) (1) | 2013.02.24 |
---|