코딩하는 오리

[ML] 머신 러닝 기본기 - 3. 미분 필요한 만큼만 배우기 본문

AI/ML

[ML] 머신 러닝 기본기 - 3. 미분 필요한 만큼만 배우기

jooeun 2024. 7. 21. 16:49

01. 함수

f(x) = 2x+6

y는 x에 대한 함수

하나의 input 값에 대해서 반드시 하나의 output 값 존재할 경우

 

다변수 함수

f(x,y) = x+2y

 

현실 세계에서의 함수

d = 60t : 시속 60km달리는 차가 몇키로 달리는지

BMI = 몸무게 / (키*키)

 

 

02. 그래프

수학식을 시각적으로 표현하는 방법

y=3x+6

 

03. 평균 변화율

기울기 : x가 변화할 때, y는 얼마나 빠르게 변화하는지

특정 지점에서의 기울기 : 순간 변화율

 

평균 변화율

f(b) - f(a) / (b-a)

f'(a) = f(a+h)-f(a) / ((a+h)-a)

 

한 그래프 내에서도 구간에 따라 평균 변화율 다름

 

04. 순간 변화율

평균변화율에 limit 적용한 결과

 

05. 미분

f(x) = x^2+2x+1

f'(x) = 2x+2

 

07. 가장 가파른 방향 (2차원)

기울기가 음수 : x가 커질수록 y가 작아짐

기울기가 양수 : x가 커질수록 y가 커짐

 

어떤 방향으로 가야 가장 가파르게 올라갈 수 있는지

그래프가 해당 지점에서 얼마나 기울어져 있는지 

 

 

09. 극소점, 극대점

순간변화율이 양수/음수

순간변화율이 0 : 3가지

- 극소점(아래로 볼록) (local minimum):  왼쪽으로는 기울기 음수, 오른쪽으로는 기울기 양수. 극소점 여러 개 가능 

  - 최소점 (global minimum): 극소점들 중 가장 y값이 작은 값

- 극대점(위로 볼록) (local maximum): 왼쪽으로는 기울기 양수, 극대점 여러 개 가능

  - 최대점 (global maximum) : 극대점들 중 가장 y값이 큰 값

- 안장점(saddle point) : 기울기가 계속 증가 또는 계속 감소

 

11. 고차원에서 미분

다변수 함수의 미분

input 변수가 여러 개(x,y) output 변수(z)

f(x,y) = x^2+2y^2

편미분 : 함수를 변수 하나에 대해서만 미분(미분하는 변수 외 나머지 변수는 상수 취급)

변수 x에 대해서만 또는 변수 y에 대해수만

x에 대해 편미분 : 2x

y에 대해 편미분 : 4y

두 결과를 합친 것을 벡터로 만들어본다 

x를 1로 고정시켰을 때 남은 변수는 y이며, 그 값에 1을 대입하면 4

y를 1로 고정시켰을 때 남은 변수는 x이며, 그 값에 1을 대입하면 2

 

 

13. 가장 가파른 방향 (고차원)

고차원 그래프에서도 기울기(벡터)가 가장 가파른 방향을 알려줄 수 있다

가장 가파르게 내려가고 싶다면 가장 가파른 방향에서 - 붙이기

 

15. 머신 러닝에 미분이 필요한 이유

순간변화율은 의미있는 정보.

함수의 최소 지점, 함수의 최대 지점, 증가 여부 등 

 

머신러닝은 경험을 통해 특정 작업에 대한 성능이 좋아진다.

성능을 어떻게 평가, 어떻게 최적화 ? 

특정 모델의 성능을 평가하는 함수가 있을 경우, 모델의 최소점(극소점)을 찾아서 성능을 최대로 높일 수 있다..