[혼공머신] 4-2 확률적 경사 하강법 질문

25 views
Skip to first unread message

Sukwoo Jung

unread,
Oct 4, 2021, 3:16:16 AM10/4/21
to 머신러닝/딥러닝 도서 Q&A
4-2단원에 나오는 확률적 경사 하강법에 대한 질문입니다.

책에 나온 내용을 읽고 확률적 경사 하강법을 다음과 같이 이해했습니다.
1) 훈련 세트의 무작위 data 하나에 대해 랜덤 가중치를 부여해 계산
2) 해당 point에서 각 가중치에 대한 편미분 값, 즉 기울기 값을 계산한 후 손실함수가 감소하는 방향(타깃에 가까워지는 방향)으로 가중치를 바꿈
3) 편미분 값이 무시할만한 값이 나와 한 점에 수렴할 때까지 위 과정을 반복
4) 다른 data에 대해 1~3 과정을 반복
5) 모든 데이터를 사용해도 손실함수가 충분히 작아지지 않았으면 epoch를 계속 수행

이렇게 이해하고 나니 몇 가지 의문점이 생겼습니다.
첫째, 가중치들과 loss function을 축으로 하는 그래프를 생성한다 하였을 때, 같은 가중치더라도 어떤 data를 사용했느냐에 따라 loss function이 다르게 계산될 것으로 추측됩니다. 그러면 그래프에서 surface를 만들 수 없고 이에 따라 minimum(혹은 surface 상 골짜기)를 찾지 못할텐데, 이는 어떻게 이해해야 될까요?

둘째, Loss function = w1 * x1 + w2 * x2 + ... (x(i)는 i번째 변수, w(i)는 i번째 변수에 대한 가중치)라고 단순하게 생각해보았습니다. 이 때 Loss function을 가중치로 편미분한 벡터 값은 가중치 값에는 의존하지 않고 오로지 data 값에만 의존합니다. 그렇다면 위에서 언급한 3번 과정은 의미가 없는 것으로 생각이 됩니다. 위에서 언급한 과정에서 오류가 있는지, 혹은 이 의문점에서 제가 따라간 논리의 흐름 - 예를 들어, loss function을 linear equation으로 가정한 것 등 - 에 오류가 있는지 궁금합니다.

처음 접하는 내용이다보니 아직 이해가 부족하여 질문 개수도 많은데 내용도 다소 두서가 없습니다. 양해 부탁드립니다.

혼자 공부하는 사람들을 위해 이런 질문의 창구를 열어주신 점 다시 한 번 감사드립니다.
Reply all
Reply to author
Forward
0 new messages