머신러닝/기초수학 for ML
2. 머신러닝과 미분,편미분,chaing rule...
좋아좋아브라이언
2024. 3. 2. 17:23
로직을 프로그래밍을 해야 하는 기존 방식과 달리, 머신 러닝은 결과 데이타를 이용하여 어떠한 추론 방식을 제공한다.
가장 기초적인 y=mx + b 모델의 선형회귀는 기울기(m), 절편(b)을 데이타로 부터 학습을 하게 된다. 다음 그림은 머신러닝의 일반적인 framwork이다.
1. forword pass : 임의의 m,b로 시작하여, 예측값 y_hat을 구한다.
2. cost 계산 : 예측값 y_hat 과, 실제값 y에 대한 cost 값을 구한다. 여기서 중요한 것은 모델에 따라 사용되는 cost 함수가 무엇인지 알고는 있어요 한다. 회귀에서는 MSE를 사용한다.
3. backward pass : chain rule을 이용하여, 파라미터인, m,b를 수정한다.
4. (3)을 이용하여, cost 값이 적어지는 방향으로 m,b를 적용한다. (1)의 단계로 진행한다. m,b는 (3)에서 사용하는 값을 사용한다.
아래 그림과 같은 데이타가 존재하고, 임의의 m, b로 시작한다고 가정을 한다.
cost가 적어지는 m,b를 chain rule을 이용하여 구하고, 이를 반복한다. 아래예는 1,000을 수행하고 있다.
Epoch 0, cost 8.57, m grad 23.2, b grad 3.6
Epoch 1, cost 4.08, m grad 14.8, b grad 1.91
Epoch 2, cost 2.25, m grad 9.49, b grad 0.831
Epoch 3, cost 1.51, m grad 6.11, b grad 0.15
Epoch 4, cost 1.2, m grad 3.96, b grad -0.28
Epoch 5, cost 1.07, m grad 2.59, b grad -0.552
Epoch 6, cost 1.01, m grad 1.72, b grad -0.723
Epoch 7, cost 0.981, m grad 1.17, b grad -0.829
Epoch 8, cost 0.962, m grad 0.82, b grad -0.894
Epoch 9, cost 0.948, m grad 0.595, b grad -0.934
Epoch 10, cost 0.936, m grad 0.452, b grad -0.957
Epoch 11, cost 0.925, m grad 0.361, b grad -0.969
Epoch 12, cost 0.915, m grad 0.302, b grad -0.975
Epoch 13, cost 0.904, m grad 0.265, b grad -0.977
Epoch 14, cost 0.894, m grad 0.241, b grad -0.976
Epoch 15, cost 0.884, m grad 0.225, b grad -0.973
Epoch 16, cost 0.874, m grad 0.214, b grad -0.969
Epoch 17, cost 0.864, m grad 0.207, b grad -0.965
Epoch 18, cost 0.854, m grad 0.202, b grad -0.96
Epoch 19, cost 0.845, m grad 0.199, b grad -0.955
Epoch 20, cost 0.835, m grad 0.196, b grad -0.95
Epoch 21, cost 0.826, m grad 0.194, b grad -0.945
Epoch 22, cost 0.817, m grad 0.192, b grad -0.939
Epoch 23, cost 0.808, m grad 0.191, b grad -0.934
Epoch 24, cost 0.799, m grad 0.189, b grad -0.929
...
Epoch 996, cost 0.0195, m grad 0.000685, b grad -0.00337
Epoch 997, cost 0.0195, m grad 0.00068, b grad -0.00335
Epoch 998, cost 0.0195, m grad 0.000677, b grad -0.00333
Epoch 999, cost 0.0195, m grad 0.000673, b grad -0.00331
이를 통해... 적절한 m,b를 구하게 된다.
머신러닝을 다시 공부할 때
- 모델의 정의
- 모델에 사용되는 cost function
도 같이 공부 필요하다