(다차원) 미분

$$ \begin{align*}

f^\prime(x)

&\equiv\lim_{h\rightarrow0}\frac{f(x+h)-f(x)}{h} \\ &\equiv\lim_{h\rightarrow0}\frac{f(x+h/2)-f(x-h/2)}{h} \\ &\equiv\lim_{h\rightarrow0}\frac{f(x)-f(x-h)}{h}

\end{align*} $$

using SymEngine
@vars X;
f = x^2 + x/2 - sin(x)/x
diff(f, x)    # 1/2 + 2*x + sin(x)/x^2 - cos(x)/x

그래디언트는 접초평면(=tangent hyperplane)의 오르막 경사가 가장 가파른 방향을 가리킨다.

복소수 스텝법 (Complex Step Method)

좋은 근사식을 얻기 위해 충분히 작지만, 너무 작아서 수치적 차분을 할 때 분모가 0이 되는 문제를 야기하지 않도록 $h$를 선택해야 한다. 복소수 스텝에 대해 테일러 전개를 하면 다음과 같다.

$$ f(x+ih)

=f(x)

+ihf^\prime(x)

-h^2\frac{f^{\prime\prime}(x)}{2!}

-ih^3\frac{f^{\prime\prime\prime}(x)}{3!}

위 식에서 복소수 부분만을 취해 미분 근사값을 얻을 수 있다.

$$ \text{Im}(f(x+ih))=hf^\prime(x)-h^3\frac{f^{\prime\prime\prime}}{3!}+\cdots $$

$$ \begin{align*}

\Rightarrow f^\prime(x) &=\frac{\text{Im}(f(x+ih))}{h}+h^2\frac{f^{\prime\prime\prime}(x)}{3!} - \cdots \\ &=\frac{\text{Im}(f(x+ih))}{h}+O(h^2)\text{ as } h \rightarrow 0

\end{align*} $$

실수 부분은 $h\rightarrow0$에 점금함에 따라 $f(x)$를 $O(h^2)$ 내로 근사한다.

$$ \text{Re}(f(x+ih))=f(x)-h^2\frac{f^{\prime\prime}(x)}{2!}+\cdots $$

$$ \Rightarrow f(x)=\text{Re}(f(x+ih))+h^2\frac{f^{\prime\prime}(x)}{2!}-\cdots $$

결과적으로 복소수 이자로 $f$를 한번만 평가해 $f(x)$와 $f^\prime(x)$를 모두 구할 수 있다.

전방누적법 (Forward Accumulation Method)

테일러 전개를 하면,

$$ f(x)=\sum^\infty_{k=0}\frac{f^{(k)}(a)}{k!}(x-a)^k $$