AI/MACHINE LEARNING

[MACHINE LEARNING] 03 Gradient Descent Algorithm

개발자 만두 2023. 3. 19. 13:58
728x90
반응형

목차

1. Gradient Descent Algorithm

2. Convex Function


1. Gradient Descent Algorithm(경사 하강 알고리즘)

Linear Regression의 목표는 Cost를 최소화하는 Weight, bias를 찾는 것이다. cost를 최소화하는 방법으로는 보통 Gradient Descent Algorithm(경사 하강 알고리즘)을 사용한다. 이는 (0, 0) 원점 또는 어떤 값에서 시작하여 Weight나 bias를 조금씩 바꿔가면서 Cost를 줄이고 경사도를 계산하는 과정을 계속 반복하여 Cost의 최솟값을 가지는 Weight와 bias의 값을 찾는 방법이다. 

 

Cost 공식 변형
Formal Definition

경사도는 미분을 이용하여 계산할 수 있다. 미분을 쉽게 하기 위해서 Cost Function의 분모에 2를 곱해주었다. 그다음, Weight를 구할 때 learning rate(α: 알파)에 Cost(W) 값을 미분한 값을 곱한 결과를 현재 Weight의 값에서 빼준다.

 

미분 절차

앞서 변형한 Cost Function을 대입하고 미분하는 절차는 사진과 위 사진과 같으며, Gradient Descent Algorithm의 공식은 가장 아래에 있는 식이다.

 

 

2. Convex Function

Cost Function 그래프

우리가 배운 Cost Function의 그래프를 3차원으로 나타내면 위 사진과 같다. 이는 어떤 점에서 시작하든지 항상 도착하는 점이 우리가 원하는 지점이며, 이러한 그래프를 띄는 함수를 Convex Function이라고 한다. Linear Regression을 적용하기 전에 반드시 Cost Function 그래프가 Convex Function의 그래프 모양과 동일한지 파악하는 것이 중요하다.

 

 

관련 실습 코드는 아래 깃허브 링크를 참고하면 된다.

https://github.com/CLM-BONNY/DAVIL-DA-ML-Study/blob/main/Deep%20Learning%20For%20All/ML_Lab_03.ipynb

 

GitHub - CLM-BONNY/DAVIL-DA-ML-Study

Contribute to CLM-BONNY/DAVIL-DA-ML-Study development by creating an account on GitHub.

github.com


출처

모두를 위한 딥러닝 강좌(홍콩과기대 김성훈 교수님)

 

 
728x90
반응형