Search
Duplicate

수학/ 2차 형식 미분

2차 형식 미분

벡터와 행렬에 대해 vAv\bold{v}^\top \bold{Av} 형식을 2차 형식(quadratic form)이라고 한다. 동일한 벡터vRn\bold{v} \in \mathbb{R}^n 가 전치 되어 앞, 뒤로 곱해져 있기 때문에 2차 형식의 행렬은 정방행렬 ARn×n\bold{A} \in \mathbb{R}^{n\times n}이 보장된다. 그렇지 않으면 애초에 2차 형식이 아닌 것이다.
이하의 예시에서는 단순성을 위해 n=2n =2인 벡터와 행렬에 대해 정리한다.
v=[xy],A=[abcd]\bold{v} = \begin{bmatrix} x \\ y\end{bmatrix}, \bold{A} = \begin{bmatrix} a & b \\ c & d \end{bmatrix}
2차 형식의 미분은 결국 벡터와 행렬의 각 항목에 대해 편미분을 수행하고 그 결과를 다시 벡터나 행렬 형태로 표현하는 것이 된다. 예컨대 f(v)=vAvf(\bold{v}) = \bold{v}^\top \bold{A} \bold{v}v\bold{v}에 대한 미분 ddvf(v){d \over d \bold{v}} f(\bold{v})은 다음처럼 한다.
1.
우선 벡터와 행렬의 곱셈을 계산
vAv=[xy][abcd][xy]=ax2+(b+c)xy+dy2\bold{v}^\top \bold{Av} = \begin{bmatrix} x & y\end{bmatrix} \begin{bmatrix} a & b \\ c & d \end{bmatrix} \begin{bmatrix} x \\ y\end{bmatrix}= ax^2 + (b+c)xy + dy^2
2.
구해진 식에 대해 v\bold{v}의 요소별로 편미분
fx=2ax+(b+c)yfy=(b+c)x+2dy\begin{aligned} {\partial f \over \partial x} &= 2ax + (b+c)y \\ {\partial f \over \partial y} &= (b+c)x + 2dy \end{aligned}
3.
각각의 결과를 벡터 형태로 표현
f(v)=[2ax+(b+c)y(b+c)x+2dy]=[2ab+cb+c2d][xy]=(A+A)v\nabla f(\bold{v}) = \begin{bmatrix} 2ax + (b+c)y \\ (b+c)x + 2dy \end{bmatrix} = \begin{bmatrix} 2a & b + c \\ b + c & 2d \end{bmatrix} \begin{bmatrix} x \\ y \end{bmatrix} = (\bold{A} + \bold{A}^\top)\bold{v}
결국 이차 형식의 미분 결과는 (A+A)v(\bold{A} + \bold{A}^\top) \bold{v}가 된다. 만일 A\bold{A}이 대칭행렬이었다면 —b=cb = c— 위 결과는 2Av2\bold{A} \bold{v}가 된다.
같은 방식으로 vAAv\bold{v}^\top \bold{A}^\top \bold{A} \bold{v}을 미분하면 다음과 같다. 여기서 AA\bold{A}^\top \bold{A}이 대칭행렬이 되기 때문에 이 둘을 하나로 합칠 수 있다.
(AA+AA)v=(AA+(AA))v=2AAv(\bold{A}^\top \bold{A} + \bold{AA}^\top) \bold{v} = (\bold{A}^\top \bold{A} + (\bold{A}^\top \bold{A})^\top) \bold{v} = 2\bold{A}^\top \bold{Av}
전치한 것 vA\bold{v}^\top \bold{A} 에 대한 미분 ddvvA{d \over d\bold{v}}\bold{v}^\top \bold{A}은 곱해지는 변수의 전치된 결과가 나온다.
vA=[xy][abcd]=[ax+cybx+dy]fx=[ab],fy=[cd][acbd]=A\bold{v}^\top \bold{A} = \begin{bmatrix} x & y\end{bmatrix} \begin{bmatrix} a & b \\ c & d \end{bmatrix} = \begin{bmatrix} ax + cy & bx + dy \end{bmatrix} \\ {\partial f\over \partial x} = \begin{bmatrix} a \\ b \end{bmatrix}, {\partial f\over \partial y} = \begin{bmatrix} c \\ d \end{bmatrix} \Rightarrow \begin{bmatrix} a & c \\ b & d\end{bmatrix} = \bold{A}^\top
같은 식으로 vAb\bold{v}^\top \bold{Ab}에 대한 미분 ddvvAb{d \over d\bold{v}}\bold{v}^\top \bold{Ab}(Ab)=bA(\bold{Ab})^\top = \bold{b}^\top \bold{A}^\top이 된다.
vAb=[xy][abcd][ef]=[xy][ae+bfce+df]=(ae+bf)x+(ce+df)yfx=ae+bf,fy=ce+df[ae+bfce+df]=(Ab)=bA\bold{v}^\top \bold{Ab} = \begin{bmatrix} x & y\end{bmatrix} \begin{bmatrix} a & b \\ c & d \end{bmatrix}\begin{bmatrix} e \\ f\end{bmatrix} = \begin{bmatrix} x & y\end{bmatrix} \begin{bmatrix} ae + bf \\ ce + df \end{bmatrix} = (ae+bf)x + (ce+df)y \\ {\partial f \over \partial x} = ae + bf, {\partial f \over \partial y} = ce + df \Rightarrow \begin{bmatrix} ae + bf & ce + df \end{bmatrix} = (\bold{Ab})^\top = \bold{b}^\top \bold{A}^\top
만일 v\bold{v}가 어떤 파라미터 tt의 함수일 때 f(t)=vf(t) = \bold{v}로 표현할 수 있다. 반면 A\bold{A}은 파라미터 tt와 무관하다면, 해당 2차 형식을 다음과 같이 tt로 미분할 수 있다.
t(vAv)=(tv)Av+vA(tv)\nabla_t(\bold{v}^\top\bold{Av}) = (\nabla_t\bold{v})^\top\bold{Av} + \bold{v}^\top\bold{A}(\nabla_t\bold{v})
이것은 f(t)=vf(t) = \bold{v}이므로 위 식을 f(t)Af(t)f(t)\bold{A}f(t)로 작성할 수 있고, 여기서 A\bold{A}tt와 무관한 상수이므로 위 식은 결국 두 함수의 곱이 되며, 함수 곱의 미분이 (fg)=fg+f+g(f \cdot g)' = f' \cdot g + f + g'으로 표현되는 것과 같은 맥락이다.