Coding Diary.

(Machine Learning) 경사 하강법 계산 본문

Coding/Machine Learning

(Machine Learning) 경사 하강법 계산

life-of-nomad 2023. 7. 11. 09:19
728x90
반응형

경사 하강법을 이용하여 업데이트 하는 방법에 대해 알아보겠습니다.

세타제로와 세타원을 업데이트 하는 방법은 다음과 같습니다.

1. 세타0 업데이트

편미분을 하는 부분을 살펴봅시다.

여기 손실 함수 J가 있는데, 선형 회귀에서 우리의 손실 함수 J는 아래와 같습니다.

편미분 식에 대입하면 아래와 같습니다.

여기에 가설 함수 h는 다음과 같습니다.

이것을 위식에 대입하면

이걸 이제 세타0에 대해 편미분하면 아래와 같습니다.

가설 함수 h로 다시 돌려줍니다.

결국 편미분은 아래와 같이 나오는데 이걸 세타0을 업데이트 하는 기존 공식에 대입하면 됩니다.

 

2. 세타1 업데이트

세타1을 업데이트 하는 공식을 살펴봅시다.

편미분 하는 부분을 집중적으로 알아봅시다. 편미분 식에 손실 함수 J를 대입하면 아래와 같습니다.

가설 함수 h를 대입합니다.

이제 세타1에 대해 편미분을 하면 다음과 같이 나옵니다.

이 부분에서 가설 함수 h와 같은 부분은 다시 돌려줍니다.

결국 편미분 한 식을 세타1을 업데이트하는 기존 공식에 대입하면 됩니다.

 

위 두가지를 이용해서 세타0과 세타1을 반복적으로 업데이트 하면, 결국에는 손실을 최소화하는 최적선을 구해낼 수 있습니다.

728x90
반응형