본문 바로가기

Tech Stack/Machine learning

기계학습 6 - 역전파 공부

뇌는 뉴런이라는 수없이 많은 신경세포들의 연결을 갖고있음

인공 신경망은 이러한 신경세포의 동작을 흉내내는 장치나 소프트웨어를

만들어 뇌가 수행하는 인지나 사고 능력을 갖춘 기계를 만들려는 노력

 

이러한 방식의 연구를 통해 인공지능을 구현하려는 방식을

연결주의

 

신경세포가 활성화 되면 선으로 표현된 연결의 끝 지점에 있는 시냅스가 이 신호를 다른

신경세포로 전달, 이때 파란색을 가진 끝점은 1의 신호가 전달되는 것을 의미

흰색 원으로 표시된 끝점은 억제 시냅스로서 연결된 신경세포가 활성화되지 못하게 막는 역할

신경세포 모델은 학습이 불가능
이 모델의 신경세포는 설계된 동작만 수행 가능

 

학습가능하게 한 것이 퍼셉트론

 

 

 

 

신경망 모델에서는 이 연결강도가 바로 모델의 동작을 결정하는 파라미터

오차를 계산하는 방법은 다양하며, 이 오차를 줄이는 방향으로 연결강도를 조정하는 일이 신경먕의 최적화, 즉 학습

학습과정을 조절하는 하이퍼 파라미터로는 오차에 따른 연결강도, 조정강도, 최적화 방법, 반복횟수 등이 있음

 

 

연결강도의 변경

 

함께 활성화되는 세포는 함께 연결된다.

 

두뇌 신경망의 기능이 고정되어 있지 않고 바뀔 수 있는 가소성을 가지고 있음을 설명하는 것이며, 이러한 변화가 바로 뇌가 인지 능력을 향상시키는 학습과정

 

두 신경세포 활성화

Wxy = XY

 

 

 

원래의 입력을 다항 변환하여 새로운 입력으로 만드는 과정은 신호를 전달하는 것이 아니라 직접적인 계산이 이루어짐

 

입력과 출력을 바로 연결하지 않고 중간에 신호를 중계하는 신경세포들을 두는 것

 

입력과 출력 사이에 존재하는 이런 중간 노드들의 계층을 은닉층

 

중간에 층 --> 다층 퍼셉트론

 

 

6주차 37page

 

x -> y 순전파알고리즘

 

연결강도 w를 갱신하는 방법을 그 이전 단계에 있는 연결강도 u에도 전파 할 수 있는 오차 역전파

 

x프라임 확인

 

역전파 알고리즘은 순전파 과정에서 활성화 함수를 적용할 때마다 활성화 함수의 미분을 구해두기만 한다면, 오차를 계산하여 순전파와 동일한 신호의 증폭과 합산으로 계산, 다만 그 방향이 반대일 뿐

 

역전파 알고리즘 적용 조건

1. 오차를 계산하는 방법이 존재

2. 활성화 함수는 미분이 가능한 함수

 

계속해서 아래 계층으로 내려갈 수 있음

 

다층 퍼셉트론 모두 학습이 가능

 

중요할 듯?

오차가 결정되면 신경망에 되먹임feedback 되며 모든 오차 계층을 통과하면 해당 계층에서 미리 계산해둔 미분치에 곱해짐

 

아다마르 곱셈이며 해당 노드가 아래 계층으로 전파하는 델타가 얻어지므로 이 델타 벡터는 연결강도를 수정하는 데에 사용되고, 아래 단계에 오차를 전파하는 데 사용

 

 

 

역전파 알고리즘

다층 퍼셉트론을 학습 가능하게 함

경사하강법.

입력 계층 x가 연겨강도를 통해 출력 계층으로 연결되어 연결강도에 의해 모아진 신호가 활성화 함수를 통과하여 y로 출력