Loading [MathJax]/jax/output/SVG/jax.js
Link Search Menu Expand Document

행렬

Chapter 2 : Matrices

Edited by / 장성준 (junnei) junnei



행렬은 선형대수에서 중심적인 역할을 한다.

선형 방정식을 간결하게 표현하는 데에도 사용되며, Chapter 7 에서는 뒷부분에서는 선형 변환의 역할을 하기도 한다.

자세한 내용은 Chapter 4 에서 다룰 것이기에 간단하게만 살펴보도록 하겠다.

행렬의 정의

실수 행렬 (m,n) Am개의 행(rows)과 n개의 열(columns)로 이루어지고, 다음과 같이 표현된다.

A=[a11a12a1na21a22a2nam1am2amn],aijR.

단, 이 때 m,nN 가 만족해야한다. 그리고, 행렬 A 의 요소의 개수는 m×n 개 이다.


특별히 (1,n) 행렬과 (m,1) 행렬을 각각 행(rows), 열(columns)이라고 하는데,

이렇게 특별한 행렬을 벡터 행렬(row/column vectors)이라고 한다.


그리고 그림4 의 행렬 ARm×n 는 모든 요소를 이어 붙인 벡터 aRmn 와 같은 표현이라는 점도 알아두자.
( Rm×n 는 실수공간에 있는 (m,n) 행렬이다. )

그림4 행렬 A의 벡터화

C = np.einsum(il, lj, A, B)

행렬의 계산

행렬 ARm×nBRm×n 의 합은 요소별(element-wise)로 이루어지며 다음과 같이 정의된다.

A+B:=[a11+b11a1n+b1nam1+bm1amn+bmn]Rm×n


행렬 ARm×nBRn×k 의 곱은 AB=CRm×k 로 표현되며, 요소 cij 는 다음과 같이 계산된다.

cij=nl=1ailblj,i=1,,m,j=1,,k.

식을 보면, cij 를 구하기 위해 행렬 Ai 번째 행과, 행렬 Bj 번째 열을 곱해야 하며,

행렬곱은 요소별 계산(element-wise operation)으로 이루어지지 않는다는 점을 알 수 있다.


또한, 행렬곱을 위해서는 행렬 AB 는 인접한 차원(dimension)이 아래와 같이 같아야한다.

An×kBk×m=Cn×m
아다마르 곱(Hadamard product)

같은 크기의 두 행렬의 각 성분을 곱하는 연산으로 아다마르 곱이 존재한다.
즉, 요소별 계산(element-wise operation)을 하며 아다마르곱은 덧셈에 대하여 분배 법칙을 따르고 다음과 같이 표현된다.
MN=[M11N11M12N12M1nN1nM21N21M22N22M2nN2nMm1Nm1Mm2Nm2MmnNmn]Mat(m,n;R)

단위 행렬(Identity Matrix)

행렬을 계산할 때 특별히 자주 사용되는 행렬들 중 가장 중요한 행렬인 단위 행렬에 대해서 알아보자.

단위 행렬(또는 항등 행렬)은 모든 대각성분 요소가 1, 나머지 요소는 0인 행렬으로, Rn×n 에서 아래와 같이 표현된다.

In:=[1000010000100001]Rn×n

행렬의 성질

이제 위에서 정의한 행렬합, 행렬곱, 단위 행렬을 이용하여 행렬곱의 성질에 대해 알아보자.

  • 결합법칙 :

    ARm×n,BRn×p,CRp×q:(AB)C=A(BC)
  • 분배법칙 :

    A,BRm×n,C,DRn×p:(A+B)C=AC+BCA(C+D)=AC+AD
  • 단위 행렬과의 곱 :

    ARm×n:ImA=AIn=A (,mn,ImIn)
  • 교환법칙 :

    ABBA

    행렬곱은 교환법칙이 성립하지 않는다.

    아래 예시 2.3 와 함께 알아보자.

    예시 2.3

    A=[123321]R2×3,B=[021101]R3×2, AB=[123321][021101]=[2325]R2×2,BA=[021101][123321]=[642202321]R3×3. AB BA

역행렬과 전치행렬

역행렬(Inverse)

정사각행렬 ABAB=In=BA 를 만족할 때 (,ARn×n,BRn×n)

BA역행렬(Inverse) 이라 하고, A1 라고 표현한다.


다만, 모든 행렬 A 가 역행렬 A1 를 가지는 것은 아니다.

역행렬은 하나의 행렬에 대해서 유일하며, 바로 다음 Chapter 3 에서 역행렬을 구하는 방법에 대해서 알아볼 것이다.


역행렬이 존재하는 행렬은 정칙 행렬(regular) / 가역 행렬(invertible) / 비특이 행렬(non-singular)이라고 불리우고,

역행렬이 존재하지 않는 행렬은 특이 행렬(singular) / 비가역 행렬(non-invertible) 이라고 불린다는 점도 알아두자.


예시 2.4

A=[121445677],B=[776211454],

AB=I=BA 이고, A와 B는 서로 역행렬 관계이다.


전치행렬(Transpose)

행렬 A, B 의 각각의 요소가 aij=bji 일 때, BA전치행렬이라고 하며, B=AT 라고 한다. (ARm×n,BRn×m)

일반적으로, A 의 열을 AT 의 행에 나열해서 AT 를 얻을 수 있다.

역행렬과 전치행렬의 중요한 성질들은 아래와 같다.

AA1=I=A1A(AB)1=B1A1(A+B)1A1+B1(AT)T=A(A+B)T=AT+BT(AB)T=BTAT

대칭행렬(Symmetric Matrix)

대칭행렬은 정사각행렬에서 대각선에 대칭인 두 원소가 같은 행렬을 말한다.

즉, 정사각행렬의 원소 aij 와 원소 aji 가 같은 행렬이다 : A=AT(,ARn×n)

임의의 두 대칭행렬의 합은 항상 대칭행렬이라는 특징이 있다.


스칼라 곱셈

행렬에 스칼라 λ 가 곱해질 때의 특징을 알아보도록 하자.

행렬 ARm×n 와 스칼라 λR 에 대해서 λA=K, Kij=λaij 이다.

즉, 행렬 A 의 모든 요소에 스칼라값 λ 가 곱해지는 연산이다.


다음 수식들을 통해 행렬에 대한 스칼라 λ,ψ 의 곱셈의 특징들을 확인할 수 있다.

  • 결합법칙 :
    • (λψ)C=λ(ψC),CRm×n
    • λ(BC)=(λB)C=B(λC)=(BC)λ,BRm×n,CRn×k.
  • 분배법칙 :
    • (λC)T=CTλT=CTλ=λCT(λ=λT)
    • (λ+ψ)C=λC+ψC,CRm×n
      λ(B+C)=λB+λC,B,CRm×n

연립 일차 방정식의 간단한 표현

다음과 같은 연립 일차 방정식이 있다고 해보자.

2x14x19x1++3x22x25x2+5x37x33x3===182

행렬 곱셈의 정의에 의하여,
연립 일차 방정식의 계수행렬(coefficient matrix) A 와 함께 Ax=b 의 형태로 표현 가능하다.

[235427953][x1x2x3]=[182]
'선형대수' 카테고리의 다른 글
  1. 연립 일차 방정식
  2. 행렬
  3. 연립 일차 방정식의 해
  4. 벡터 공간