Techbrad

경사하강법(Gradient descent)을 이해하자 - 1 본문

AI & BigData/Deeplearning

경사하강법(Gradient descent)을 이해하자 - 1

brad.min 2024. 1. 14. 17:42
반응형
 

딥러닝(DeepLearning)이란?

딥러닝 주제 중에 자연어처리 등 코딩으로 학습을 위주로 하면서 경사하강법, 로스 등 적용되는 원리에 대해 많이 생각해본 적이 없었다. 이번 대학원 강의 수업은 딥러닝의 원리를 파악하는데

techbrad.tistory.com

 

이전 글에서 딥러닝이란 인공 신경망을 사용해서 데이터를 가장 잘 표현하는 weight를 구하는 것이라는 것을 익혔다. weight를 구하기 위해서 실제 값과 예측 값의 차이를 구한 손실 (Loss)를 활용하는 것이다. 근데 이게 직관적으로 와닿진 않는다. 손실은 x.xxxx와 같이 소수점으로 표현이 될텐데 이걸로 가중치를 어떻게 업데이트 할까? 감이 안잡힌다... 

 

일단 먼저 Pytorch 학습 코드를 좀 봐보자.

outputs = Model(images)
loss = loss_function(outpus, labels)
loss.backward()

 

그래 보통 Model을 정의하고 inputs을 넣고 순전파를 통해 결과 (outputs)를 얻게 된다. 그리고 실제 값과의 손실을 구하고 backward() 함수를 통해 가중치를 업데이트 한다!! 그림으로 살펴보면 아래와 같다.

 

다음에는 손실 값으로 가중치를 어떻게 조절하는지 알아봐야겠다. 오늘은 시간이 없어서 여기까지 ㅎㅎ..

 

반응형

'AI & BigData > Deeplearning' 카테고리의 다른 글

딥러닝(DeepLearning)이란?  (0) 2024.01.07
[NLP] BiDirectional LSTM 의 개념과 keras 코드  (0) 2022.01.20
[컴퓨터비전] CNN의 기초  (0) 2021.12.26