경사 하강법(Gradient Descent)은 기계 학습과 최적화 문제에서 매우 중요한 알고리즘 중 하나입니다. 경사 하강법은 함수의 기울기(gradient)를 이용하여 함수의 최솟값을 찾는 최적화 기법입니다.
경사 하강법은 다음과 같은 단계로 이루어집니다.
- 임의의 시작점을 선택합니다.
- 함수의 기울기를 계산합니다.
- 기울기가 감소하는 방향으로 이동합니다.
- 반복합니다. 즉, 새로운 위치에서 다시 기울기를 계산하고, 이동합니다. 이를 반복하여 함수의 최솟값에 가까워집니다
이 알고리즘은 반복을 할수록 함수의 값이 점점 작아지므로, 어느 정도 반복을 하면 최적화된 값을 찾을 수 있습니다.
경사 하강법의 속도는 학습률(learning rate)에 따라 결정됩니다. 학습률이 너무 작으면 최적점에 도달하는데 시간이 오래 걸리고, 학습률이 너무 크면 최적점을 지나치게 되어 오히려 수렴하지 못할 수 있습니다.
경사 하강법은 여러 가지 변형이 있으며, 이를 사용하여 다양한 최적화 문제에 적용할 수 있습니다. 예를 들어, 확률적 경사 하강법(Stochastic Gradient Descent)은 각 반복에서 랜덤으로 선택한 데이터를 이용하여 기울기를 계산하고, 이를 이용하여 최적화하는 방법입니다. 이를 통해 대규모 데이터셋에서도 효율적으로 최적화할 수 있습니다.
경사하강법의 한계
1. 비선형 회귀의 경우 Local minimum에 빠져서 진짜 minimum한 곳을 찾지 못할 수 있다.
따라서 SGD(확률적 경사하강법)을 통해 어느정도 해결할 수 있다.
'수학 > AI Math' 카테고리의 다른 글
모수, 최대가능도 추정법,쿨백 라이블러 발산 (1) | 2023.03.11 |
---|---|
몬테 카를로 샘플링 (0) | 2023.03.11 |
비선형 함수 모델링 (0) | 2023.03.11 |
행렬 (0) | 2023.03.11 |
벡터 (0) | 2023.03.11 |