신경망의 원리는 로지스틱 회기
신경망의 핵심 원리는 바로 로지스틱 회기에 있다. 로지스틱 회기는 0과 1을 판별한다고 했다, 퍼셉트론도 가중치(기울기)와 바이어스(y절편)을 이용하여 예측값을 구하고 그러한 예측값들의 합을 가중합이라고 한다. 이러한 가중합들을 활성화함수(시그노이드 등)에 넣어서 최종 예측값을 결정하는 것이다, 이때 예측값은 그것이 맞느냐 아니냐이다.
XOR 문제의 등장으로 인한 해결책은 다층 퍼셉트론
문제는 여기서 나타난 게 xor 문제이다. 가중치, 바이어스, 가중합, 시그노이드만으로 풀 수 없는 문제가 나타난 것이다. 그래서 나타난 것이 다층 퍼셉트론이다. 중간에 은닉층을 두어 공간을 왜곡하는 것이다. 이러한 식으로 은닉층을 여러 개 쌓아올려 복잡한 문제를 해결하는 과정이 뉴런이 복잡한 과정을 거쳐 사고를 하는 사람의 신경망과 닮아있기 때문에 이를 인공 신경망이라고 부르기 시작했다.
오차역전파
지금까지 오차를 계산하고 오차를 줄이는 방식을 공부했었다. 신경망에서 오차를 최적화하는 방식 중 하나는 오차 역전파이다. 구동 방식은 다음과 같다.
1. 임의의 초기의 가중치를 준 뒤 결과를 계산한다.
2. 오차를 구한다.
3. 경사 하강법을 이용해 앞 가중치를 오차가 작아지는 방향으로 업데이트 한다.
4. 1~3의 과정을 더이상 오차가 줄어들지 않을 때까지 반복한다.
기울기 소실 문제
그런데 이때 활성화 함수로 사용된 시그모이드 함수에 문제가 발생했다. 기울기가 0에 수렴하는 현상이 발생한 것이다. 그래서 다른 활성화 함수가 나타났다. 토론토대학교에 제프리 힌튼 교수가 제안한 렐루(ReLU)함수는 시그모이드 함수의 기울기 소실 문제를 해결했다. 그리고 또 뒤이어 나온 것이 소프트플러스(softplus)함수이다.
가중치를 업데이트하는 방법도 리뉴얼되었다
확률적 경사 하강법(SGD), 모멘텀(momentum) 등이 있다.
'Machine Learning > 딥러닝' 카테고리의 다른 글
[딥러닝] keras 라이브러리 이용해서 모델 설계하기 (0) | 2022.03.13 |
---|---|
[모두의 딥러닝] 로지스틱 회기 (Logistic Regression) (0) | 2022.03.11 |
[모두의 딥러닝] 선형회기 (Linear Regression) (0) | 2022.03.11 |
[모두의 딥러닝] 아나콘다, 텐서플로 설치하고 파이참 연결하기 (0) | 2022.03.11 |