반응형
1. 미분
미분은 함수 위 한 점의 변화량(기울기)을 구하는 것이다. 파이썬으로 직접 위에 식을 만들어 미분을 할 것이다. 왜 미분이 머신러닝에 사용될까? 바로 머신러닝의 오차를 줄이는 역할을 하기 때문이다. 미분은 오차 함수의 변화량을 구해 가중치 값을 업데이트해 오차를 줄어들게 조정한다. 오차를 줄이면 더 정확한 결과를 얻을 수 있기 때문에 필요하다. 머신러닝에서 항상 쓰이기 때문에 반드시 알고 있어야 한다.
2. 해석 미분 vs 수치 미분
1). 해석 미분
수학 공식으로 접근하는 미분이다. 예시로
2). 수치 미분
수치 계산에 의해 미분하는 방법이다. 수치 계산이란 0에 수렴하는 dx에 대해 0.0001 값을 대입함으로써 함수
def fun1(x):
return x**2
def numerical_diff(fun, x):
dx = 0.0001
return (fun(x + dx) - fun(x - dx)) / 2 * dx
numerical_diff(fun1, 1)
1.9999999999992248e-08
해석 미분으로 구한 값은 2가 나왔다. 수치 미분으로 구한 값은 1.9999999… 값이 나온 것을 확인할 수 있다. 수치 미분 값으로 구한 값이나 해석 미분으로 구한 값이 차이가 없다는 것을 알 수 있다. 다음에는 다변수 함수의 수치 미분에 대해 알아보도록 하겠다.
반응형
'프로그래밍 > 머신러닝' 카테고리의 다른 글
tensorflow gpu 설치 방법 (window10) (0) | 2021.06.21 |
---|---|
numpy에서 머신러닝 - 다변수 함수의 수치 미분 (0) | 2020.09.21 |
댓글