03 머신러닝의 기초를 다집니다 - 수치예측(2)
03-2 경사 하강법으로 학습하는 방법을 알아봅니다
선형 회귀의 목표는 입력 데이터(x)와 타깃 데이터(y)를 통해 기울기(a)와 절편(b)를 찾는 것이었습니다. 즉, 산점도 그래프를 잘 표현하는 직선의 방정식을 찾는 것이 회귀 알고리즘의 목표였습니다. ··· 경사 하강법(gradient descent)이 바로 그 방법 중 하나입니다.
경사 하강법 : 기울기를 사용하여 모델을 조금씩 조정하는 최적화 알고리즘
y' = wx+b
w는 기울기이므로, ceteris paribus 하에서 w와 y'의 관계는 아래와 같다.
w가 양수일때, (w, y')평면에서 우상향
w가 음수일때, (w, y')평면에서 우하향
따라서, 어떤 경우라하여도 w에 w_rate를 더해준다면 y'는 증가한다는 것을 알 수 있다. (단, w_rate>0)
b는 절편이므로, b의 변화에 따른 y'의 변화율은 1이다.
오차 역전파(backpropagation) : y'와 y의 차이를 이용하여 w와 b를 업데이트하는 방법
... 여기서부터 설명이 최악이라 책 읽는걸 포기했음.
저자는 보다 더 쉽게, 수학적인 내용을 최대한 조금 설명하고 넘어가려고 시도한 것 같지만...
어쨌든 앞뒤 맥락상 이해가 안되는 뜬금없는 수식전개는 나를 괴롭혔고, 나는 그런 공부를 할 수 있는 인간이 아니므로 더 읽을 수가 없었다.
그래서 이 책의 리뷰는 당분간 중단하기로 하였다.
대신 <딥러닝을 위한 수학> 을 리뷰 할 예정.
이번 기회에 차라리 수학을 정공법으로 돌파하겠다.
딥러닝은 결국 수학인데 수학을 배제한 딥러닝 설명이 가능한지에 대해서도 현재로서는 약간 회의적..
아마 <딥러닝을 위한 수학>을 읽고나면 그냥 혼공머신으로 넘어가지 않을까 싶기도...
이 책은 앞으로 안 볼지도 모르겠다...
구매할까 망설였던 분에겐 비추천합니다.
'Learning-Log > Computer Science' 카테고리의 다른 글
[Youtube] Gradient descent, how neural networks learn | 딥러닝(2) (0) | 2022.02.05 |
---|---|
[Youtube] But what is a neural network? | 딥러닝(1) (0) | 2022.02.05 |
[Do it ! 정직하게 코딩하며 배우는 딥러닝 입문] 3장 머신러닝의 기초를 다집니다 - 수치예측(1) (0) | 2022.02.04 |
[Do it ! 정직하게 코딩하며 배우는 딥러닝 입문] 2장 최소한의 도구로 딥러닝을 시작합니다 (0) | 2022.02.04 |
[Do it ! 정직하게 코딩하며 배우는 딥러닝 입문] 1장 딥러닝을 소개합니다 (0) | 2022.02.04 |