본문 바로가기
코드스테이츠 Ai Boostcamp

Basic Derivative(미분)

by mintee
728x90

미분

 미분은 데이터 사이언스 분야의 다양한 핵심 개념을 이해하는데 있어 필수불가결적인 수학 개념입니다. 머신러닝 ,딥러닝의 핵심은 결국 모델 최적화입니다. 최적화란 모델이 예측을 더 잘할 수 있게 모델의 파라미터를 조정하는 것인데요. 이러한 최적화를 하기 위해선 미분은 필수적입니다.

머신러닝에서 미분은 어떻게 쓰이는가?

→ 실제 값과 예측값의 오차를 줄여나가기 위해서 오차들로 이루어진 함수를 그리는데 그 함수가 0이 될 때가 가장 오차자 적은 즉, 정확도가 높은 모델인 것이므로.

→ 그 0이 되는 지점을 찾기 위해 '미분'이라는 개념이 쓰인다.

편미분을 하는 이유

머신러닝에서는 일반적인 미분상황과는 달리 변수가 여러개가 들어가게 된다. 예를 들어, 금융 데이터에서 자본총계와 EPS 등의 변수들로 →매출액을 예측하고자 할 때, 실제 자본총계 값과 예측 값의 차이를 최소로 줄이고자 하는데 이는 x1,x2,x3처럼 다양한 변수들로 이루어진 오차함수 이므로 다항함수 미분인 편미분을 쓴다.

 

키워드

  • 미분
  • 편미분
  • Chain Rule
  • 최적화
  • 경사하강법

 

기초 미분 (Basic Derivative)

🏆 학습 목표

  • 최적화와 미분의 관계에 대해 알아봅니다
  • 미분, 편미분, Chain Rule의 차이를 이해하고 계산을 할 수 있게 됩니다.
  • 도함수를 파이썬으로 직접 구현하거나 scipy 라이브러리를 활용해서 구할 수 있습니다.

 


 

 LertureNote 요약

 

그럼 모델이 더 정확하게 실제값을 예측하기 위해서는 어떻게 해야할까요?

일단 주어진 데이터 X를 넣었을 떄 모델이 예측하는 예측값과 실제값 간의 차이(Error, ε)를 계산한 다음, 여러 모델 중 Error(모델에서 예측하는 예측값과 실제값 (y)의 차이)가 가장 작은 모델을 선택하는 방법을 통해, 가장 좋은 모델을 선택 할 수 있습니다.

여기서 이 과정은 f(a,b)=ε 로 표현 될 수 있으며, 오차 함수인 ε을 최소화 하는 a,b를 찾는 것이 머신러닝(Linear regression)의 목표입니다.

선형회귀모델의 경우 오차 함수는 보통 Mean Squared Error를 쓰는데요.

오차 함수를 최소화하는 a,b를 구하기 위해서 우리는 미분을 사용합니다!

미분을 통해서 오차 함수의 도함수(f′(x))가 0이 되는 부분 (즉 변화율이 0인 부분)을 찾아서 오차 함수가 최소화되는 a,b을 찾는 것입니다.

 

 


 

미분 함수 직접구현

def numerical_derivative(fx, x):     
	delta_x = 1e-5      
    return (fx(x + delta_x) - fx(x)) / delta_

다양한 함수의 미분법

  • 지수함수
  • 로그함수 (→ 시그모이드 함수 미분시 )

편미분

: 다변수 함수의 특정 변수를 제외한 나머지 변수를 상수로 간주하여 미분하는 것이다. 기호는 ∂이다.

z = x2 + xy + y2의 그래프. y = 1로 놓으면, xz-평면과 평행하는 빨간색 곡선을 얻으며, 점 (1, 1)에서 곡선의 접선은 역시 xz-평면과 평행한다.
위 그래프의 평면 y = 1에 의한 절단면. 점 (1, 1)에서의 접선의 기울기는 3이다.

https://ko.wikipedia.org/wiki/편미분

  • 편미분 예시

 

 

 

Chain Rule

Chain Rule이란 합성함수의 미분 (→ Backward Propagation에서 사용)

미분의 실사용 예시 : 경사하강법 (Gradient Descent)

-경사하강법 (Gradient Descent, 이하 GD)는 위에서 거론 됐던 오차 함수인 𝜀 을 최소화 하는 𝑎,𝑏 를 찾을 수 있는 최적화 알고리즘 중의 하나입니다

 

질문 

  • 오차를 최소화하는 a,b 파라미터의 예시에는 어떤 것들이 있나? 학습률도 파라미터인가?

→ 학습률은 하이퍼 파라미터(=초기값 설정해두고 하는 파라미터), 파라미터는 그 함수 인자들이다.

728x90

댓글