Blog | Tag | Local | Guest | Login | Write |  RSS
Perceptron

Perceptron은 1957년 Cornell Aeronautical Laboratory에서 Frank Rosenblatt에 의해서 개발된 Artificial Neural Network의 한 종류이다.

그리고 Perceptron은 가장 간단한 feedforward netral network라고 할 수 있고, 이것을 이용해 linear classifier를 만들 수 있다.

Definition

Perceptron은 matrix eigenvalue를 이용해서 feedforward netral network를 만들고 input value x를 output value f(x)로 mapping시키는 classifier이다. f(x)는 다음과 같이 정의할 수 있다.

f(x) = \begin{cases}1 & \text{if }w \cdot x + b > 0\\0 & \text{else}\end{cases}

w는 실수 값을 갖는 vector이고 wx는 dot product를 이용해 값을 구할 수 있다. 그리고 b값은 bias term으로서 input vector들이 어느 방향으로 값들이 치우져 있는지 알려주는 값이다.

Learning

x(j)는 input vector의 j-th term
w(j)는 weight vector의 j-th term
y는 neuron으로부터의 output
δ는 expected output
α는 learning rate

weight의 update rule
        w(j)' = w(j) + \alpha(\delta-y)x(j)\,

위의 방법으로 wegith vector를 update해서 특정값 이하의 error가 발생하지 않을 때 까지 반복해
linear하네 classify할 수 있는 classifier를 찾는다.