선형대수학/implement_linearAlgebra
1.1.1 행렬 A 의 독립인 열과 랭크
명징직조지훈
2022. 12. 10. 16:17
2022.12.08 - [선형대수학] - 1.1.1 행렬 A의 독립인 열과 랭크
1.1.1 행렬 A의 독립인 열과 랭크
나아가 행렬 A의 기저 basis 를 찾을 수 있고, 행렬 A를 두 행렬의 곱셈 C * R 로 분해할 수 있으며, 선형대수학 제 1 정리를 증명할 수 있다. 그러면 행렬의 랭크와 부분공간의 차원을 더 잘 이해할
teach-meaning.tistory.com
일차독립의 개념 이해, 목표는 행렬 A 에서 행렬 C 를 바로 찾는 것, C 의 어떠한 열도 다른 열의 일차결합으로 표현되지 않아야 한다.
부분공간의 기저는 일차독립인 벡터로 이뤄진다. 한 공간에 있는 모든 벡터는 기저 벡터의 일차결합으로 표현할 수 있다.
A = np.array(([1,3,8],[1,2,6],[0,1,2]))
A
>>>
array([[1, 3, 8],
[1, 2, 6],
[0, 1, 2]])
a1 = A[:,0]
a1
>>>
array([1, 1, 0])
a2 = A[:,1]
a2
>>>
array([3, 2, 1])
a1/a2
>>>
array([0.33333333, 0.5 , 0. ])
2열이 1열에 실수를 곱한 것과 다르므로 C에 포함시킬 수 있다.
3열의 경우 1, 2 열의 일차 결합을 통해 표현할 수 있으므로 C 에 포함시키지 않는다.
x1 = sympy.Symbol('x1')
x2 = sympy.Symbol('x2')
x = np.array(([x1],[x2]))
x
>>>
array([[x1],
[x2]], dtype=object)
A[:,:2].dot(x)
>>>
array([[x1 + 3*x2],
[x1 + 2*x2],
[x2]], dtype=object)
C = np.array(([1,3],[1,2],[0,1]))
C
>>>
array([[1, 3],
[1, 2],
[0, 1]])
r 은 A 의 랭크이자 C 의 랭크이다
랭크는 일차독립인 열의 개수와 같다. 행렬의 랭크는 열공간의 차원이다.
R = np.array(([1,0,2],[0,1,2,]))
R
>>>
array([[1, 0, 2],
[0, 1, 2]])
C.dot(R)
>>>
array([[1, 3, 8],
[1, 2, 6],
[0, 1, 2]])
행렬 C 는 행렬 R 에 의해 행렬 A 와 연결된다. A = CR 이다.
C 의 열의 일차결합은 A 의 열을 생ㅅ어한다. A = CR 는 이 정보를 행렬 곱셈으로 저장한다.
이 R 은 행렬 A 의 기약행 사다리꼴 = rref(A)
C = A 일 경우 R = I(단위 행렬) 이다.