27.23 특수 행렬: 단위 행렬(Identity Matrix)과 영 행렬(Zero Matrix)

27.23 특수 행렬: 단위 행렬(Identity Matrix)과 영 행렬(Zero Matrix)

1. 단위 행렬의 정의와 성질

단위 행렬(identity matrix) \mathbf{I}_nn \times n 정사각 행렬로서, 주대각선(main diagonal) 원소가 모두 1이고 나머지 원소가 모두 0인 행렬이다. 크로네커 델타(Kronecker delta) \delta_{ij}를 사용하여 원소를 표현하면 다음과 같다.

(\mathbf{I}_n)_{ij} = \delta_{ij} = \begin{cases} 1 & \text{if } i = j \\ 0 & \text{if } i \neq j \end{cases}

3 \times 3 단위 행렬을 명시적으로 쓰면 다음과 같다.

\mathbf{I}_3 = \begin{pmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \end{pmatrix}

단위 행렬은 행렬 곱셈에 대한 항등원(identity element)이다. 임의의 행렬 \mathbf{A} \in \mathbb{R}^{m \times n}에 대하여 다음이 성립한다.

\mathbf{I}_m \mathbf{A} = \mathbf{A}, \quad \mathbf{A}\mathbf{I}_n = \mathbf{A}

이 성질의 증명은 직접적이다. (\mathbf{I}_m \mathbf{A})_{ij} = \sum_{k=1}^{m} \delta_{ik} a_{kj} = a_{ij}이므로 \mathbf{I}_m \mathbf{A} = \mathbf{A}가 된다. 오른쪽 곱셈의 경우도 마찬가지로 (\mathbf{A}\mathbf{I}_n)_{ij} = \sum_{k=1}^{n} a_{ik} \delta_{kj} = a_{ij}이다.

단위 행렬의 열벡터들은 표준 기저(standard basis)를 구성한다. \mathbf{I}_nj번째 열벡터 \mathbf{e}_jj번째 성분만 1이고 나머지가 0인 벡터이며, \{\mathbf{e}_1, \mathbf{e}_2, \ldots, \mathbf{e}_n\}\mathbb{R}^n의 정규 직교 기저(orthonormal basis)를 형성한다.

선형 변환의 관점에서 단위 행렬은 항등 변환(identity transformation) T(\mathbf{x}) = \mathbf{x}를 나타낸다. 모든 벡터를 자기 자신으로 보내는 변환이므로, 공간에 아무런 변형을 가하지 않는다. 단위 행렬의 행렬식은 \det(\mathbf{I}_n) = 1이고, 모든 고유값은 1이며, 계수(rank)는 n이다.

2. 단위 행렬의 대수적 성질

단위 행렬은 다음과 같은 대수적 성질들을 만족한다.

거듭제곱: 임의의 자연수 k에 대하여 \mathbf{I}_n^k = \mathbf{I}_n이다.

전치: \mathbf{I}_n^\top = \mathbf{I}_n이다. 즉, 단위 행렬은 대칭 행렬이다.

역행렬: \mathbf{I}_n^{-1} = \mathbf{I}_n이다. 단위 행렬은 자기 자신의 역행렬이다.

직교성: \mathbf{I}_n^\top \mathbf{I}_n = \mathbf{I}_n \mathbf{I}_n^\top = \mathbf{I}_n이므로, 단위 행렬은 직교 행렬(orthogonal matrix)이다.

트레이스: \text{tr}(\mathbf{I}_n) = \sum_{i=1}^{n} \delta_{ii} = n이다.

스칼라 행렬과의 관계: 스칼라 c에 대하여 c\mathbf{I}_n은 스칼라 행렬(scalar matrix)이라 하며, 이는 모든 방향으로 균일하게 c배 신축하는 변환을 나타낸다. 고유값 방정식 \mathbf{A}\mathbf{x} = \lambda\mathbf{x}(\mathbf{A} - \lambda\mathbf{I})\mathbf{x} = \mathbf{0}으로 재정리되며, 여기서 \lambda\mathbf{I}가 핵심적 역할을 한다.

3. 영 행렬의 정의와 성질

영 행렬(zero matrix) \mathbf{O}는 모든 원소가 0인 행렬이다. m \times n 영 행렬을 \mathbf{O}_{m \times n}으로 표기하며, 크기가 문맥상 명확할 때는 단순히 \mathbf{O} 또는 \mathbf{0}으로 쓴다.

(\mathbf{O}_{m \times n})_{ij} = 0 \quad \text{for all } 1 \leq i \leq m, \; 1 \leq j \leq n

영 행렬은 행렬 덧셈에 대한 항등원(additive identity)이다. 임의의 행렬 \mathbf{A} \in \mathbb{R}^{m \times n}에 대하여 다음이 성립한다.

\mathbf{A} + \mathbf{O}_{m \times n} = \mathbf{O}_{m \times n} + \mathbf{A} = \mathbf{A}

행렬 곱셈에 대해서는 영 행렬이 흡수원(absorbing element)의 역할을 한다.

\mathbf{A}\mathbf{O}_{n \times p} = \mathbf{O}_{m \times p}, \quad \mathbf{O}_{p \times m}\mathbf{A} = \mathbf{O}_{p \times n}

여기서 중요한 점은, \mathbf{A}\mathbf{B} = \mathbf{O}이라 하여 반드시 \mathbf{A} = \mathbf{O} 또는 \mathbf{B} = \mathbf{O}인 것은 아니라는 사실이다. 예를 들어,

\begin{pmatrix} 1 & 0 \\ 0 & 0 \end{pmatrix} \begin{pmatrix} 0 & 0 \\ 1 & 0 \end{pmatrix} = \begin{pmatrix} 0 & 0 \\ 0 & 0 \end{pmatrix}

이다. 이는 행렬 대수가 정수환(integral domain)이 아님을 보여주는 사례이며, 영인자(zero divisor)가 존재한다는 것을 의미한다.

영 행렬의 선형 변환 해석에서, T(\mathbf{x}) = \mathbf{O}\mathbf{x} = \mathbf{0}이므로 영 행렬은 모든 벡터를 영벡터로 보내는 영 변환(zero transformation)을 나타낸다. \det(\mathbf{O}_n) = 0이고, 계수(rank)는 0이며, 영 공간(null space)은 전체 공간 \mathbb{R}^n이다.

4. 딥러닝에서의 단위 행렬과 영 행렬의 활용

단위 행렬은 딥러닝에서 다양한 방식으로 활용된다.

가중치 초기화: 순환 신경망(RNN)에서 은닉 상태의 순환 가중치 행렬을 단위 행렬로 초기화하는 기법이 있다. Le et al. (2015)의 연구 “A Simple Way to Initialize Recurrent Networks of Rectified Linear Units“에서 제안된 이 방법은, 초기 단계에서 은닉 상태가 그대로 전달되도록 하여 기울기 소실 문제를 완화한다. 초기 상태에서 \mathbf{h}_t = \text{ReLU}(\mathbf{I}\mathbf{h}_{t-1} + \mathbf{W}_x\mathbf{x}_t) = \text{ReLU}(\mathbf{h}_{t-1} + \mathbf{W}_x\mathbf{x}_t)가 되어 정보가 시간 축을 따라 안정적으로 흐르게 된다.

잔차 연결(Residual Connection): ResNet 구조에서 \mathbf{y} = F(\mathbf{x}) + \mathbf{x}는 항등 사상(identity mapping)에 잔차 함수를 더하는 형태이다. 행렬 표현으로 보면, 선형 부분이 (\mathbf{W} + \mathbf{I})\mathbf{x}와 유사한 구조를 가지며, 기울기가 단위 행렬을 통해 직접 전파되므로 깊은 네트워크에서도 학습이 안정적이다.

정규화 항: L2 정규화(weight decay)에서 손실 함수에 \frac{\lambda}{2}\|\mathbf{W}\|_F^2를 추가하면, 기울기 갱신에 \lambda\mathbf{I} 항이 나타난다. 릿지 회귀(ridge regression)의 정규 방정식 \mathbf{W} = (\mathbf{X}^\top\mathbf{X} + \lambda\mathbf{I})^{-1}\mathbf{X}^\top\mathbf{y}에서 \lambda\mathbf{I}는 행렬의 조건수를 개선하여 수치적 안정성을 확보하는 역할을 한다.

영 행렬의 활용: 영 행렬은 편향 벡터나 가중치의 영 초기화에 사용된다. 배치 정규화(batch normalization) 계층의 학습 가능한 이동(shift) 매개변수 \beta는 일반적으로 0으로 초기화된다. 또한 특정 연결을 차단하거나 마스킹(masking)할 때 영 행렬이 사용되며, 어텐션 마스크에서 패딩 토큰에 해당하는 위치를 -\infty로 설정하는 것도 개념적으로 영 행렬의 확장이다.