Artificial Neuron

Yelim Kim·2023년 7월 13일
0

Machine_Learning

목록 보기
34/44
post-thumbnail

지난 글에서 Artificial Neuron에 대한 간단한 개요를 작성했었다.
보고 오면 이해하는데 도움이 될 수도 있다.

Artificial Neuron

은 두 가지 함수로 이루어져 있다.

"Affine Function"

"Activation Function"

Affine Function

에서 inputdms f(x1,x2,,..,xn;w1,w2,...,wn,b)f(x_1, x_2, ,.., x_n; w_1, w_2, ..., w_n, b) 이다.
여기서 x와 w들을 "손에 주렁주렁 달고 다니지 말고 봉투 하나에 담는" 개념으로 벡터로 감싸보자.

x=[x1x2...xn],w=[w1w2...wn]\textbf{x}= \begin{bmatrix} x_1 \\ x_2 \\ ... \\ x_n \end{bmatrix}, \textbf{w}=\begin{bmatrix} w_1 \\ w_2 \\ ... \\ w_n \end{bmatrix}

지난 글에서도 설명했다시피, 내적이라는 개념을 도입해서 xw\textbf{x} \cdot \textbf{w}를 구해줄 수 있다.

xw=x1w1+x2w2+...+xnwn=i=1nxiwi\textbf{x} \cdot \textbf{w}=x_1w_1+x_2w_2+... +x_nw_n = \sum_{i=1}^{n}x_iw_i

이렇게 하나 하나씩에 곱해준 후 합을 구해주는 것이다.

간단하게 쓰면 f(x;w)=xwf(x;w)=\textbf{x} \cdot \textbf{w}가 되겠다. 물론 b도 있어야 하지만 설명을 위해 제외하고 설명한다.
여기서 x\textbf{x}w\textbf{w}를 내적한다는 것은 나랑 얼마나 유사한지 확인하는 방법이다.

아래 그림을 보자.

입력x를 받으면 w가 필터 역할을 한다. 그리고 출력값으로 z가 출력된다.
또 다른 말로 Correlation이라고도 한다.

아래 그림을 보자.

검정색 선 처럼 w값이 있을 때,
파란색 벡터값은 w와 Correlation이 높다. Correlation값이 높다는 것은 xw>0\textbf{x} \cdot \textbf{w}>0을 의미한다.
초록색 벡터값은 w와 수직이므로 xw=0\textbf{x} \cdot \textbf{w}=0이고
주황색 벡터값은 w와 Correlation이 낮다. 전혀 유사하지 않다. 따라서 xw<0\textbf{x} \cdot \textbf{w}<0을 의미한다.

그 다음으로 Activation Function을 살펴보자.

Activation Function

우리가 이전에 배운 Sigmoid로 예시를 들어보려고 한다.

σ(x)=11+ex\sigma (x)=\frac{1}{1+e^{-x}}

맨 처음에 Artificial Neuron은 Affine Function에서 나온 값을 Activation Function에게 전달해 준다고 했었다.

z=f(x;w)a=σ(z)z=f(x;w) \to a=\sigma(z)

Affine Function에서

입력된 값을들 가중치와 내적하면서 유사도를 측정한다.

그 다음 Activation Function (Sigmoid)로 넘어와서 전달받은 값을 확률로 바꿔준다.
유사하면 1을 출력하고, 0을 출력한다.

여기서 궁금한 점이 있었는데, "유사하다"는 기준은 누가 정하는 걸까?

  • 컴퓨터가 학습하면서 정하는 것이기 때문에 우리가 정확히 무슨 이유로 판단했는지 알기 어렵다.

개념이 이해됐다면, 아까 빼먹었던 bias를 다시 넣어서 전체 식을 완성해보자.

ν(x;w,b)=g(f(x;w,b))\nu (\textbf{x};\textbf{w},b)=g(f(\textbf{x};\textbf{w},b))

자기가 가지고 있는 w가 x와 비슷하면 출력이 1(Activation이 된다) 아니면 0(Activation이 안된다)

그렇다면 bias가 하는 역할은 뭘까?

f(x;w,b)=xw+bf(\textbf{x};\textbf{w},b)=\textbf{x}\cdot\textbf{w}+b

여기서 xw\textbf{x}\cdot\textbf{w}값이 zz니까 조금만 생각해보면 알 수 있다.


여기서 x축이 z\textbf{z}이지 않은가? b는 이 점을 위 아래로 이동시킨다.
즉,
만약 b가 양수라면 Activation이 잘 되는 뉴런으로 만들 수 있다.
만약 b가 음수라면 Activation이 잘 되지 않는 뉴런으로 만들 수 있다.

다음 글에서는 Hyperplane에 대해서 알아보자.

profile
뜬금없지만 세계여행이 꿈입니다.

0개의 댓글