1. 전치행렬
전치행렬(transpose)은 행과 열의 index를 서로 뒤바꾼 행렬

2. 행렬의 기본 수학연산
같은 차원을 가지는 두 행렬은 대응하는 성분끼리 연산이 가능하다

3. 행렬의 곱셈
행렬의 일반적인 곱셈은 조금 특이하게 정의된다.
두 행렬 X,Y의 행렬곱 XY는 X의 열의 수와 Y의 행의 수가 같을 때 정의되고
X의 i번째 행벡터와 j번째 열벡터의 내적을 성분으로 갖는다.
행렬의 곱셈은 교환법칙이 성립하지 않는다

numpy array에서 두 행렬의 곱은 @연산자를 활용
import numpy as np
X = np.array([[1,-2,3],[7,5,0],[-2,-1,2]])
Y = np.array([[0,1],[1,-1],[-2,1]])
X@Y ##matrix product
array([[-8, 6],
[-5, 2],
[-5, 1]])
X = np.array([[1,-2,3],[7,5,0],[-2,-1,2]])
Y = np.array([[0,1,2],[3,1,-1],[5,-2,1]])
X*Y ##hadamard product
array([[0, -2, 6],
[21, 5, 0],
[-10, 2, 2]])
두 행렬의 hadamard product은 * 연산자를 활용
np.inner은 두 행렬 X,Y에 대하여 X의 i번째 행벡터와 Y의 j번째 행벡터의 내적을 성분으로 가지는 행렬을 구해줌
import numpy as np
X = np.array([[1,-2,3],[7,5,0],[-2,-1,2]])
Y = np.array([[0,1,2],[3,1,-1],[5,-2,1]])
np.inner(X,Y)
array([[ 4, -2, 12],
[ 5, 26, 25],
[ 3, -9, -6]])
X@(Y.T)
array([[ 4, -2, 12],
[ 5, 26, 25],
[ 3, -9, -6]])
np.inner(X,Y)는 X(YT)와 같다
4. 항등행렬(identity matrix)
행렬 I는 모든 대각원소가 1이고 나머지는 0인 항등행렬
어떠한 행렬을 곱해도 자기자신으로 만든다

728x90
'선형대수학' 카테고리의 다른 글
무어-펜로즈 역행렬(Moore–Penrose pseudoinverse matrix) (0) | 2022.01.17 |
---|---|
선형변환으로서의 행렬이 가지는 의미 (0) | 2022.01.12 |
행렬의 기하학적 의미 (0) | 2022.01.10 |
벡터의 내적의 기하학적 의미 (0) | 2022.01.07 |
두 벡터 사이의 거리와 각도 (0) | 2022.01.06 |