logo

행렬의 내적 (프로베니우스 내적) 📂행렬대수

행렬의 내적 (프로베니우스 내적)

정의

m×nm \times n 행렬 X=[xij]X = [x_{ij}], Y=[Y]ijY=[Y]_{ij}내적inner product 혹은 점곱dot product 다음과 같이 정의한다.

XY=X,Y=i=1mj=1nxijyij X \cdot Y = \braket{X, Y} = \sum_{i=1}^{m}\sum\limits_{j=1}^{n} x_{ij}y_{ij}

성분이 복소수복소행렬인 경우에는 다음과 같다.

XY=X,Y=i=1mj=1nxijyij X \cdot Y = \braket{X, Y} = \sum_{i=1}^{m}\sum\limits_{j=1}^{n} \overline{x}_{ij}y_{ij}

x\overline{x}켤레 복소수이다.

설명

벡터의 내적(점곱)이 "두 벡터의 각 성분을 서로 곱하고, 모두 더하는 것"이므로, 행렬의 내적을 위와 같이 정의하면 벡터의 내적에 대한 자연스러운 일반화가 된다. 이를 아래와 같이 표기하여 프로베니우스 내적Frobenius inner product이라고도 하는데, 별 다른 뜻이 있는 건 아니고 그냥 사람 이름이다.

X,YF \braket{X, Y}_{F}

엄청 메이저하게 쓰이는 것까지는 아니고, 그냥 표기법의 취향차이다. XX, YY가 행렬이라는 것을 강조하고 싶을 때 쓰인다고 보면 된다.

내적이 있으면 놈을 자연스럽게 정의할 수 있으므로, 행렬의 (프로베니우스) 놈을 다음과 같이 정의한다.

XF:=X,XF=i,j(xij)2=Tr(XTX) \| X \|_{F} := \sqrt{\braket{X, X}_{F}} = \sqrt{\sum\limits_{i,j} (x_{ij})^{2}} = \sqrt{\Tr (X^{\mathsf{T}}X)}

위에서 설명했듯 아랫첨자 F_{F}를 표기하지 않는 경우도 많다. 마지막 등식은 아래의 공식에 의해 성립한다.

기초성질

복소행렬 XX, YY, ZZ와 복소수 α,β\alpha, \beta에 대해서,

  • 선형성:
    • αX,βY=αβX,Y\braket{\alpha X, \beta Y} = \overline{\alpha}\beta \braket{X, Y}
    • X+Y,Z=X,Z+Y,Z\braket{X + Y, Z} = \braket{X, Z} + \braket{Y, Z}
    • X,Y+Z=X,Y+X,Z\braket{X, Y + Z} = \braket{X, Y} + \braket{X, Z}
  • 켤레대칭성: X,Y=Y,X\braket{X, Y} = \overline{\braket{Y, X}}

공식

(1)(1) 다음이 성립한다. XY=i,jxijyij=Tr(XYT)=Tr(XTY) X \cdot Y = \sum_{i, j} x_{ij}y_{ij} = \Tr (X Y^{\mathsf{T}}) = \Tr (X^{\mathsf{T}}Y) 복소행렬인 경우에는 XY=i,jxijyij=Tr(XY)=Tr(XY) X \cdot Y = \sum_{i, j} \overline{x}_{ij}y_{ij} = \Tr (X Y^{\ast}) = \Tr (X^{\ast}Y) ^{\ast}켤레전치이다.

증명

(1)(1)

인덱스 ii에 대해서 풀어써보면,

i=1mj=1nxijyij=j=1nx1jy1j+j=1nx2jy2j++j=1nxnjynj \sum_{i=1}^{m}\sum\limits_{j=1}^{n} x_{ij}y_{ij} = \sum\limits_{j=1}^{n} x_{1j}y_{1j} + \sum\limits_{j=1}^{n} x_{2j}y_{2j} + \cdots + \sum\limits_{j=1}^{n} x_{nj}y_{nj}

첫번째항은 XYTXY^{\mathsf{T}}11행, 11열 성분이다.

행렬의 거듭제곱꼴

[ABT]ij=[kaikbjk] [AB^{\mathsf{T}}]_{ij} = \left[ \sum_{k} a_{ik}b_{jk}\right]

두번째항은 [XYT]22[XY^{\mathsf{T}}]_{22}, ii번째 항은 [XYT]ii[XY^{\mathsf{T}}]_{ii}이다. 따라서 정리하면,

i=1mj=1nxijyij=i[XYT]ii \sum_{i=1}^{m}\sum\limits_{j=1}^{n} x_{ij}y_{ij} = \sum\limits_{i} [XY^{\mathsf{T}}]_{ii}

이는 트레이스의 정의와 같다. Tr(A)=Tr(AT)\Tr(A) = \Tr(A^{\mathsf{T}})이므로, 최종적으로 다음을 얻는다.

XY=X,Y=i,jxijyij=Tr(XYT)=Tr(XTY) X \cdot Y = \braket{X, Y} = \sum_{i, j} x_{ij}y_{ij} = \Tr (X Y^{\mathsf{T}}) = \Tr (X^{\mathsf{T}}Y)