티스토리 뷰
먼저 대각화(Diagonalization)를 이해하기 전에 대각 행렬을 정의하자. 일단 행렬 를 행렬이라 하자.
대각 행렬은 행렬의 대각 성분을 제외하고는 0 인 행렬이다. 가령,
는 대각 행렬이다.
행렬의 대각화는, 이처럼 대각 행렬을 찾는것이다. 가령 예시의 A는 이미 대각화가 된 행렬이다.
말이 헷갈리는데, 잠시 책에서 본 같은 식은 잊어두자. 우리는 행렬 A를 대각행렬로 표현하고 싶다. 이 과정을 대각화라 한다.
이것을 이해하기 위해 알아야할 것은 basis에 대한 개념이다. 이미 알고있다고 가정하고 넘어가자.
우리는 암묵적으로 standard basis를 이용하고 있다. 가령 행렬 라고 했을 때 우리는 이 행렬을 이렇게 이해할 수 있다.
벡터 (1,1)를 이 행렬을 통해 변형시키면, (3,7)이 나오게 된다.
그런데! 지금까지는 당연히 (1,0),(0,1) 이라는 standard basis를 기반으로 생각을 했었다. 하지만 다른 기저를 사용한다면 저 행렬은 다르게 표현되야만 한다.
가령 (1,1)은 (1,0),(0,1) 이라는 standard basis 위에서 (1,1) 이지만, (1,1) 이 만약 (1,1),(1,-1) 이라는 어떤 특정한 basis에서는 (2,0) 을 나타나게 된다.
즉 말하고싶은 것은 우리가 어떠한 벡터를 표현할 때 어떤 특정한 basis위에서 그 벡터를 나타나게 되면 전혀 다른 벡터가 될 수 있다는 것이다.
자 이제 만약 (2,4) 이라는 벡터를 (1,1),(1,-1)이라는 basis 위에서 표현하고 싶다고 가정해보자.
그러면 a(1,1) + b(1,-1) = (2,4) 이 되어야 하므로 a = 3, b = -1이 된다.
즉 가 된다. 여기서 는 우리가 정의한 (1,1),(1,-1)이라는 basis를 말한다.
다시 행렬로 돌아오면 마치 벡터가 다른 basis에서 다르게 표현되는 것처럼 행렬 또한 다른 basis에서는 다르게 표현된다.
마지막으로 정리하자면 행렬의 대각화라는 것은 어떤 특별한 basis를 잘 찾아서 그 basis 를 기반으로 행렬을 표현했을때 그 행렬이 대각행렬 로 표현되게 하는 것을 말한다.
따라서 대각화를 한다는 것은, 그러한 특별한 basis를 찾는다는 것이고 이 basis가 eigenvector 들의 모임이 된다는 것을 알 수 있다. (나중에 포스팅)
(따라서 대각화를 하려면 independent한 eigenvector들이 있어야한다!)
'수학이야기(Mathmatics)' 카테고리의 다른 글
Lagrange Multiplier (라그랑주 승수법) (0) | 2018.12.18 |
---|
- Total
- Today
- Yesterday
- Pytorch Variable
- Visual Studio Code에서 R
- 교차검증
- sklearn.model_selection.KFold
- 박사과정 #PhD
- cross validation
- pytorch
- 비쥬얼스튜디오코드
- vs code
- variable
- sublime text
- 비트 벡터
- Bit vector
- 사이킷런 KFold
- 사이킷런
- r
- 파이토치
- vscode
- scikit learn
- Pytorch .data
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |