티스토리 뷰

이번에는 미적분과 도함수에 대한 직관을 얻을 수 있게 공부해보자.

 

미분 (Derivatives)

 

 

그림에서 초록색 삼각형 부분을 보면, a를 오른쪽으로 0.001만큼 밀었을 때 f(a)는 0.003만큼 증가한다

즉, f가 올라간 정도는 a를 오른쪽으로 민 정도보다 3배 많다.

> a=2에서 함수 f(a)의 기울기, 도함수는 3이다.

 

마찬가지로, a가 5라고 하면 f(a)는 15이다.

a를 오른쪽으로 살짝 밀어서 0.001만큼 밀면 f(a)는 15.003이 된다.

이번에도 a를 오른쪽으로 0.001만큼 움직이면 f(a)는 그보다 3배가 증가한다. 

> a=5에서 함수 f(a)의 기울기, 도함수는 3이다.

 

즉, 도함수(=어떤 함수의 기울기)란 변수 a를 조금만 변화했을 때, 함수 f(a) 가 얼만큼 변하는지는 측정하는 것이다.   

 


 

더 복잡한 그래프로 또 공부해보자.

  

a가 2라고 하면 f(a)는 4이다.

a를 오른쪽으로 밀어서 0.001만큼 밀어서 a가 2.001이 되도록 하 f(a)는 약 4.004이다. (실제론 4.004001)

> a=2에서 함수 f(a)의 기울기, 도함수는 4이다.

 

a가 5라고 하면 f(a)는 25이다.

a를 오른쪽으로 밀어서 0.001만큼 밀어서 a가 5.001이 되도록 하 f(a)는 약 25.010이다. 

> a=5에서 함수 f(a)의 기울기, 도함수는 10이다.

 

결과적으로, 미적분 책에서 보면 \(a^{2}\)의 도함수가 \(2a\)라고 나와있다.

이는 아무 값 a를 아주 작은 값 0.001만큼 밀었을 때, f(a)의 값은 2a만큼 증가한다는 뜻이다.

 

그리고 방금 우리가 계산한 것들과도 맞아 떨어진다.

 


계산 그래프 (Computation Graph)

함수 J를 계산한다고 하자.

이 함수는 변수 3개 A,B,C를 가지고 있으며, 이 함수는 \(3(a+bc)\)이다.

해당 함수를 계산하는 데에는 서로 다른 세 단계의 광정이 필요하다.

 

계산 그래프는 J같은 특정한 출력값 변수를 최적화하고 싶을 때 유용하다.

 

그리고 로지스틱 회귀의 경우에 J는 당연히 최적화할 비용함수이다.

 

해당 예시에서 확인할 수 있는 것은

계산 그래프는 왼쪽에서 오른쪽의 path로 J의 값을 계산할 수 있다는 것이다. 


계산 그래프 (Computation Graph)로 미분하기

다음은 계산 그래프이다.

 

 

1. v에 대한 J의 도함수를 구해보자.

 

 v는 11이다. 11을 조금 증가시켜 11.001로 만들면, J는 33에서 33.003으로 증가한다.

 v를 0.001 증가시켰더니 J가 그 3배 증가했으니, v에 대한 J의 도함수는 3이다.

 

 

마지막 출력값 변수의 v에 대한 도함수를 얻으면, 역전파의 한 단계를 끝낸 것이다. (그래프에서 한단계 뒤로)

 

 

2. a에 대한 j의 도함수 \( (dJ/da)\)는 얼마일까? 즉, a의 값을 증가시키면 J의 값에 어떤 영향을 끼칠까?

 

현재 a=5인데, 5.001로 증가시켜 보자.

그럼 v는 11에서 11.001로 증가하고, J는 33에서 33.003으로 증가한다.

즉, a를 0.001만큼 증가시키면 J는 0.003만큼 증가하니, a에 대한 J의 도함수는 3이다. 

 

a의 값을 조금 높였을 때 J에 일어나는 전체 변화는 

먼저, a를 바꾸면 v가 증가한다. (dv/da에 의한 양만큼 증가한다)

그리고, v의 변화는 J를 증가시킨다. 

 

 

 

미분에는 연쇄법칙이라는 것이 있다. (그림에서 오른쪽 초록색 박스 보면 됨)

만약 a가 v에 대한 영향을 끼치고 그것이 J에 대한 영향을 끼친다면 \( (a->v->j)\) ,

a를 밀었을 때 J의 변화량은 a를 밀었을 때 v의 변화량과 v를 밀었을 때 J의 변화량의 곱이다.

 

 

 

3. u에 대한 J의 도함수\( (dJ/du) \)를 구해보자. 

 

4. b에 대한 J의 도함수\( (dJ/db) \)를 구해보자. 

 

 

코드를 구현할 시, 편의를 위해서 표기법을 아래와 같이 정의한다.

 

 

 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함