본문 바로가기

카테고리 없음

신경망(Neural Network)과 행렬곱

 

인공신경망은 두뇌의 신경세포인 뉴런이 연결된 형태를 모방한 모델

인공신경망(ANN, Artificial Neural Network)은 간략히 신경망(Neural Network)이라고도 한다.

 

 

딥러닝: 기계학습 알고리즘의 하나

 

기계학습(machine learning)

컴퓨터는 연산을 빨리할 수 있는 기계, 사람처럼 인식하고 분류하는 등은 할 수가 없기 때문에 컴퓨터를 학습시켜서 인식하고 분류할 수 있게 하는 것

 

기존 기계학습 방식으로 처리가 어려은 문제를 딥러닝을 통해 해결하는 시도가 많아지고 있는 추세

 

기계학습은 학습 알고리즘에 따라 방식이 다를 뿐, 가중치(weight)의 값을 정하는 작업이라고 할 수 있음

 

 

퍼셉트론(Perceptron)

- 인공 신경망 모형의 하나 

- 다수의 신호를 입력(Input)받아서 하나의 신호를 출력(output)함, 이는 뉴런의 형태와 비슷함

뉴런은 뉴런의 수상돌기를 통해 다른 뉴런에서 입력신호를 받아 축색돌기를 통해 다른 뉴런으로신호를 내보내 정보를 전달하는데 퍼셉트론에서는 가중치(weight)가 그 역할을 함

- 가중치(weight)는 각각의 입력신호에 부여되어 입력신호와의 계산을 하고, 신호의 총합이 정해진 임계점을 넘을때 1을 출력, 넘지 못하면 0 또는 -1을 출력함

*가중치(weight)가 클수록 해당 신호가 중요하다고 볼 수 있음 

- 퍼셉트론의 출력값은 1또는 0(또는 -1)이기 때문에 선형 분류 모형이라고 볼 수 있음

선형분류(Linear classification)

일차원 혹은 다차원 데이터들을 선형 모델을 이용하여 클래스들로 분류하는 머신러닝 기법

선으로 분류하는데, 학습이 반복될수록 선의 기울기가 조정(adjust)됨

 

편향(bias)

θ(theta)

학습 데이터(Input)가 가중치(weight)와 계산되어 넘어야하는 임계점을 얼마나 쉽게 넘을지 말지 조절해주는 값

편향이 높을 수록 분류의 기준이 엄격하다는 것을 의미함, 모델이 간단해지는 경향이 있으며 과소적합(underfitting)의 위험이 발생하게 됨

편향이 낮을수록 한계점이 낮아 데이터의 허용범위가 넓어지는 만큼 학습 데이터에만 잘 들어맞는 모델이 만들어질 수 있으며 모델이 더욱 복잡해질 수 있음

 

가중치(weight)

입력신호가 결과 출력에 주는 영향도를 조절하는 매개변수, 편향(bias)은 뉴런(또는 노드)이 얼마나 쉽게 활성화(1로 출력) 되느냐를 조정(adjust)하는 매개변수

 

 

퍼셉트론 학습 방법

임의로 설정된 가중치(weight)로 시작하여 학습 데이터를 퍼셉트론 모형에 입력하며 분류가 잘못되었을 때 가중치(weight)를 개선해 나감

퍼셉트론은 모든 학습 데이터를 정확히 분류시킬 때까지 학습이 진행되기 때문에 학습 데이터가 선형적으로 분리될 수 있을 때 적합한 알고리즘(그렇다면 선형적으로 분리되지 않을 때의 한계점이 있겠지)

 

 

퍼셉트론의 한계점

- 선형으로 분류는 가능하지만 XOR와 같은 데이터 형태는 분류가 불가능함

- 가중치를 수동으로 설정해야함

 

다층 퍼셉트론을 통한 한계 극복

단일 퍼셉트론으로는 XOR을 분류할 수 없지만 다층 퍼셉트론을 만들면 극복 가능

다층 퍼셉트론은 단일 퍼셉트론에 또 다른 퍼셉트론을 덧붙인다는 의미로 볼 수 있음

 

 

 

딥러닝은 가중치 값을 자동으로 설정/조정하여 학습하는 것인데, 이것이 뉴럴넷(Neural Network)의 가장 특징 중 하나임

 

순전파(Foward Propagation)

입력층, 은닉층, 출력층 방향으로 예측값의 연산이 진행되는 과정

 

신경망의 순전파는 결과적으로 행렬의 곱셈으로 이해할 수 있음

 

행렬의 곱

input이 3개, output이 2개인 신경망

 

- 원형의 뉴런, 화살표로 표현하는 가중치, 그림에서는 편향 b의 경우 편의상 생략되는 경우가 많지만 신경망 내부적으로는 편향 b의 연산이 존재함

- 위 신경망의 경우 출력 차원이 2이므로 이에 따라 편향 또한 b1, b2로 2개

- 가중치 w는 6개, 편향은 2개 이므로 총 학습가능한 매개변수의 수는 8개

 

- 수식으로 표현하면 Y = XW + B