목차
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 Function의 분모에 2를 곱해주었다. 그다음, Weight를 구할 때 learning rate(α: 알파)에 Cost(W) 값을 미분한 값을 곱한 결과를 현재 Weight의 값에서 빼준다.
앞서 변형한 Cost Function을 대입하고 미분하는 절차는 사진과 위 사진과 같으며, Gradient Descent Algorithm의 공식은 가장 아래에 있는 식이다.
2. Convex 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
출처
모두를 위한 딥러닝 강좌(홍콩과기대 김성훈 교수님)
- ML lec 03 - Linear Regression의 cost 최소화 알고리즘의 원리 설명 https://www.youtube.com/watch?v=TxIVr-nk1so&list=PLlMkM4tgfjnLSOjrEJN31gZATbcj_MpUm&index=6
- ML lab 03- Linear Regression의 cost 최소화의 TensorFlow 구현(new) https://www.youtube.com/watch?v=Y0EF9VqRuEA&list=PLlMkM4tgfjnLSOjrEJN31gZATbcj_MpUm&index=7
'MACHINE LEARNING' 카테고리의 다른 글
[MACHINE LEARNNG] 04 Multi-variable Linear Regression (0) | 2023.03.20 |
---|---|
[MACHINE LEARNING] 02 Linear Regression (0) | 2023.03.19 |
[MACHINE LEARNING] 01 Machine Learning, Tensor (0) | 2023.03.19 |