티스토리 뷰
2. Neural Networks / L1. Introduction to Neural Networks - Perceptrons
chrisysl 2018. 6. 25. 22:07Perceptron
- Neural network의 블록을 구성하는 개념
- 데이터(예시에서는 파란, 빨간 점) 값과 경계선의 개념을 노드 안에 넣는다.
- 하나의 노드안에 파란점, 빨간점으로 표시되었던 데이터들과 그 기준선에 대한 정보가 들어있고,
- Input 데이터로 시험성적(test)과 학점(grades)을 넣어준다. 이 예시의 경우에는 시험성적 : 7, 학점 : 6 을 대입.
- 그렇게되면 Perceptron이 하는 역할은 해당 데이터를 노드에 대입해
- 이것이 Positive area에 위치하면 yes를 , Negative area에 위치하면 no를 리턴한다.
- 이전 예시를 다시 들어보면, Score를 결정하는 방정식은 2*Test + 1*Grades - 18 이고,
- 여기서의 weights은 2, 1, -18이 되며, 이것들이 일차방정식의 모양을 결정(define)하기때문에
- 이것들을 그래프의 labels로 사용해보도록 하자.
- 2와 1은 각각 x1과 x2에 해당하는 모서리에 label을 주고
- bias에 해당하는 -18은 노드에 label을 줘보자.
- 이렇게하면 만들어 질 일차방정식을 생각해볼 수 있다.
- 살짝 다르게 생각해보면, bias에 해당하는 -18은 1*(-18)로 보고, 이 1을 weights로 포함시켜 inputs단에 둘 수 있다.
- 이 경우 노드는 weights와 inputs을 곱해서 계산하여 이것이 0이상의 값을 갖는지, 음수를 갖는지를 체크한다.
- 그래서 0이상의 값을 갖는다면 yes 또는 1을, 음수를 갖는다면 no 또는 0을 리턴한다.
- 앞으로 주로 계속 사용하게 될 수행도.
- 앞서 설명한 예시를 일반화 하였다.
- Step function이라 불리는 함수를 사용하는점을 주목해야하는데,
- input이 0을 포함한 positive일 경우 1을, negative일 경우 0을 리턴한다.
- 따라서 사실상 우리가 생각하는 처리과정은 Linear function에서 모든 합(sum)을 계산하고
- 그 이후 그 값이 0을 포함한 양의정수인지, 음수인지를 판단하는 Step function을 거치기때문에
- 위와같이 두 단계로 나눠 생각해볼 수 있다.
- 즉 첫번째 노드에서는 전체 합을 계산하는 역할을, 두번째 노드에서는 step function을 수행한다고 볼 수 있다.
Why "Neural Networks"?
- Perceptron의 개념이 우리 뇌의 신경계와 유사한 역할을 하기때문이다.
- 좌측 네개의 input에 대해 노드에서 연산(calculate)을 수행하고 1 또는 0을 리턴하는게 Perceptron
- 우리 뇌의 뉴런도 마찬가지다. Dendrites로부터 input(nervous impulses)을 받고
- Nucleus에서 이 Axon을 통해 nervous impulse를 보낼지 말지 여부를 결정한다.
- 점차 우리는 이 뉴런의 역할을 Perceptron을 통해 구현해내며 이들을 연쇄시켜
- 신경 다발의 형상을 만들어 나갈 것이다.