Derivatives
- 스칼라-인자 함수 $f : \mathbb{R} \to \mathbb{R}$을 생각하자. 점 $x$에서 도함수(derivative)는 다음으로 정의한다.
$$
f'(x) \triangleq \lim_{h\to 0} {f(x+h) - f(x) \over h}
$$
- 이것은 입력 공간 $x$에서 작은 거리를 움직일 때 출력이 얼마나 빠르게 변하는지를 측정한다. (즉, 함수의 ‘변화율’이다.) 따라서 $f'(x)$를 $f(x)$에서 접선(tangent)의 기울기로 해석할 수 있다.
- 위와 같은 형태가 일반적이지만, 다음과 같이 center와 뒤의 것을 기준으로 도함수 정의할 수도 있다.
$$
\begin{aligned} f'(x) &= \underbrace{\lim_{h\to 0}{f(x+h) - f(x) \over h}}{\text{forward difference}} \\ &= \underbrace{\lim{h\to 0}{f(x+h/2) - f(x-h/2) \over h}}{\text{central difference}} \\ &= \underbrace{\lim{h\to 0}{f(x) - f(x - h) \over h}}_{\text{backward difference}} \end{aligned} \tag{7.241}
$$
- 더 작은 단계 $h$는 추정을 더 잘 할 수 있다. 그러나 $h$가 너무 작으면 수치적 취소(cancellation) 때문에 에러가 나올 수 있다.
Gradients
- 도함수의 표기를 벡터-스칼라 함수 $f : \mathbb{R}^n \to \mathbb{R}$를 다루기 위해 확장할 수 있다. $x_i$ 관점에서 $f$의 편미분은 다음처럼 정의한다.
- 여기서 $\bold{e}_i$는 $i$번째 단위 벡터이다.
$$
{\partial f \over \partial x_i} = \lim_{h \to 0} {f(\bold{x} + h\bold{e}_i) - f(\bold{x}) \over h}
$$
- 점 $\bold{x}$에서 함수의 기울기(gradient)는 그것의 편도함수의 벡터이다.
$$
\bold{g} = {\partial f \over \partial \bold{x}} = \nabla f = \left( \begin{matrix}{ {\partial f \over \partial x_1}} \\ \vdots \\ {\partial f \over \partial x_n} \end{matrix} \right) \tag{7.243}
$$
- 기울기(gradient)가 평가되는 지점을 강조하기(emphasize) 위해 다음과 같이 작성할 수 있다.
$$
\bold{g}(\bold{x}^) \triangleq {\partial f \over \partial \bold{x}}|_{\bold{x}^} \tag{7.244}
$$
- 연산자 $\nabla$(’nabla라고 부른다)가 함수 $f : \mathbb{R}^n \to \mathbb{R}$를 또 다른 함수 $\bold{g} : \mathbb{R}^n \to \mathbb{R}^n$에 대응하는 것을 볼 수 있다.
- $\bold{g}()$는 벡터-스칼라 함수이기 때문에 이것은 벡터 장(vector field)라고 부른다. 대조적으로 도함수 $f'$는 스칼라 장(scalar field)라고 한다.
Directional derivative
- 방향 도함수(directional derivative)는 함수 $f : \mathbb{R}^n \to \mathbb{R}$가 방향 $\bold{v}$를 따라 공간에서 얼마나 변화하는지를 측정한다. 이것은 다음처럼 정의된다.
$$
D_\bold{v} f(\bold{x}) = \lim_{h \to 0} { f(\bold{x} + h\bold{v}) - f(\bold{x}) \over h}
$$
- 이것을 $n$에 관계 없이 $f$의 함수를 2번 호출하여 수치적으로 근사할 수 있다.
- 대조적으로 표준 기울기 벡터에 대한 수치적 근사는 $n+1$ 호출을 취한다. (또는 중심 미분을 사용한다면 $2n$)