오블완 13

[파이썬 라이브러리]numpy.linalg 함수 분석(2)(qr,eig,svd)

numpy.linalg.qrlinalg.qr(a, mode='reduced')qr분해는 이미 파이썬 라이브러리에 구현이 되어 있다. numpy.linalg에서 불러오면 된다.인자(Parameters)a: array_like, shape (…, M, N)QR분해를 할 행렬을 입력한다.최소 2차원 이상의 행렬이 들어가야 한다.mode: {‘reduced’, ‘complete’, ‘r’, ‘raw’}, optional, default: ‘reduced’QR분해를 할 때의 분해 결과의 형태를 결정하는 인자다.reducedQ와 R을 반환한다.QR분해 시 a가 $M \times N$일 때, 얇은 분해를 하는 것을 의미한다.이때, Q는 $M \times N$ 직교행렬(정방행렬은 아니므로 엄밀히 직교행렬이라 할 수 없..

[영국 근교 여행] 코츠월드를 대중교통 타고 가보자!

본 글의 여행 시기는 24년 9월입니다  저번 리스본 아제냐스 두 마르 여행 글에 이어서 영국 여행 중 다녀 온 코츠월드를 가는 방법에 대해 알아보자.https://aaaaaaaaaaayowooji.tistory.com/47 [리스본 근교] 아제냐스 두 마르를 100년 된 트램 타고 가보자!본 글의 여행 시기는 24년 10월입니다 포르투갈 리스본 근처에 있는 근교 마을 아제냐스 두 마르(Azenhas do Mar)를 대중교통 타고 가는 법에 대해 알아보자! 아제냐스 두 마르에 가게 된 이유보통aaaaaaaaaaayowooji.tistory.com 영국 코츠월드를 대중교통을 타고 갔다 왔다. 그런데 정보가 너무 없어서 길 찾는데에 애를 먹었다. 코츠월드를 가고 싶었던 이유코츠월드를 인터넷에 검색하면 영국인..

여행 2024.11.25

[파이썬과 선형대수] LU분해 그리고 직접 구현해보기

LU 분해(LU decomposition)이전의 QR분해와 비슷하게 주어진 행렬을 두 행렬의 곱으로 분해하는 과정이다.QR분해 때는 직교행렬인 Q와 행렬 R로 분해했었는데 LU분해의 경우 하삼각 행렬 L과 상삼각 행렬 U로 분해하는 것이 차이점이다.$\begin{pmatrix}2&2&4 \\ 1&0&3\\2&1&2\end{pmatrix}=\begin{pmatrix} 1&0&0 \\ \frac{1}{2}&1&0\\1&1&1\end{pmatrix}\begin{pmatrix} 2&2&4\\0&-1&1 \\ 0&0&-3\end{pmatrix}$보는 바와 같이 L은 lower triangular matrix로 대각의 위쪽 성분은 모두 0이다. 반대로 U는 upper triangular matrix로 대각 아래 성..

[파이썬 라이브러리]numpy.scipy 함수 분석(1)(lu)

scipy.linalg.lulu(a, permute_l=False, overwrite_a=False, check_finite=True, pindices=False_)인자(Parameters)a: (M, N) array_likeLU분해할 행렬을 의미한다.반드시 $M \times N$ 이차원 행렬이어야 한다.permute_l: bool, optional$PL$연산을 진행할지 안 할지 선택하는 인자다.만약 True라면, $L$에 $P$를 곱해서 $A=LU$를 성립시키고 $L$과 $U$를 반환한다.기본값은 False다.overwrite_a:bool, optional주어진 행렬 $a$의 메모리에 덮어 쓸지 정하는 인자다.True면 $a$가 할당되어 있는 메모리 공간에서 계산을 해버린다. 대신 메모리 사용량이 감소..

[파이썬과 선형대수] 기본행렬과 치환행렬

LU분해에 알아보려고 하는데 그전에 알아야 하는 개념인 기본행렬과 치환행렬에 대해 공부했다.기본 행렬(Elementary Matrix)기본 행 연산을 표현하는 행렬이다.각 기본 행렬은 하나의 행 연산과 대응된다.기본 행렬의 종류행 연산에는 세 가지 유형이 있고, 이에 따라 기본 행렬도 세 가지 유형으로 분류된다.행 교환(Row Swapping):두 행을 교환하는 행 연산이다.$R_i \leftrightarrow R_j$​대응하는 기본 행렬은 $i-$번째 행과 $j-$번째 행이 교환된 단위행렬이다.$3 \times 3$ 단위행렬에서 $R_1 \leftrightarrow R_2$ (1행과 2행 교환):$E$를 행렬 $A$에 곱하면, $A$의 1행과 2행이 교환된다.$$E = \begin{bmatrix} 0 ..

[리스본 근교] 아제냐스 두 마르를 100년 된 트램 타고 가보자!

본 글의 여행 시기는 24년 10월입니다 포르투갈 리스본 근처에 있는 근교 마을 아제냐스 두 마르(Azenhas do Mar)를 대중교통 타고 가는 법에 대해 알아보자! 아제냐스 두 마르에 가게 된 이유보통 포르투갈 리스본 근교 마을을 여행한다고 하면 대다수가 신트라를 여행하는 것 같다. 페냐 성, 무어인의 성 등 성이나 궁 종류가 많은데 대부분 언덕을 올라가야만 구경할 수 있다고 하는 후기들에 무릎이 아프신 엄마는 가기 싫다고...그래서 더 찾아보다가 절벽마을 아제냐스 두 마르에 다녀오게 되었다.아제냐스 두 마르에 대해서아제냐스 두 마르는 신트라 지역에 있는 절벽마을이다. 몇몇 후기들이 올라와 있지만 아직 다른 관광지만큼 알려지지는 않았고 관광화되지도 않았었다.갔다 온 실제 느낌은 포르투갈 실버타운 혹..

여행 2024.11.20

[파이썬과 선형대수] 직교 행렬과 QR분해 개념, 직접 구현해보기

이 글을 읽기 위해서는 역행렬과 그람-슈미트 관련 지식이 필요하다.관련된 내용은 이전 글에서 다루었으니 시간이 된다면 읽기를 추천한다. 역행렬에 대한 글https://aaaaaaaaaaayowooji.tistory.com/43 [파이썬과 선형대수] 역행렬(1) (정의, 조건, 구하는 법, 유일성)역행렬의 기초흔히 $ax=b$이면 $\frac{1}{a}\times a x=\frac{b}{a}$로 해결한다.$Ax=b$의 행렬 방정식에서도 비슷하지만 행렬의 역수를 어떻게 구할 것이냐가 문제가 된다.그래서 $A^{-1}A=I$를 만족시키는 행aaaaaaaaaaayowooji.tistory.com   직교 투영법과 그람-슈미트 과정에 대한 글https://aaaaaaaaaaayowooji.tistory.com/4..

[파이썬과 선형대수] 직교 투영법과 그람-슈미트 과정, 직접 구현해보기

직교 투영법(orthogonal projection)직교 투영법이란?벡터는 기본적으로 분해할 수 있다.어떤 벡터가 주어졌을 때, 계산하기 쉬운 벡터로 분해해보자는 것이 직교 투영법의 목적이라고 생각한다.특히 내적값이 0이 되도록 서로 수직인 벡터로 분해하고 싶다는 것이 기본적인 아이디어다.벡터를 분해어떤 벡터 $y$를 서로 수직인 벡터로 분해하고 싶다.그림을 보면 $v2$를 정사영으로 내린 벡터와 그에 수직인 벡터로 분해하면 될 것이다.$$v2=\hat{v2}+z$$$\hat{v2}$가 정사영한 벡터, $z$가 수직인 벡터가 된다.$$\hat{v2}=proj_{v1}v2 $$projection 수식에 대하여정사영은 $proj_{a}b$로 나타낸다. $b$를 $a$에 정사영했다는 의미다.오랜만에 proje..

[파이썬과 선형대수] 역행렬(2) (단방향 역행렬, 의사역행렬)

기본적인 역행렬에 대해서 앞선 글에서 알아보았다.https://aaaaaaaaaaayowooji.tistory.com/43 [파이썬과 선형대수] 역행렬(1) (정의, 조건, 구하는 법, 유일성)역행렬의 기초흔히 $ax=b$이면 $\frac{1}{a}\times a x=\frac{b}{a}$로 해결한다.$Ax=b$의 행렬 방정식에서도 비슷하지만 행렬의 역수를 어떻게 구할 것이냐가 문제가 된다.그래서 $A^{-1}A=I$를 만족시키는 행aaaaaaaaaaayowooji.tistory.com  이번 글에서는 다른 종류의 역행렬들에 대해 알아보자다른 종류의 역행렬역행렬은 full rank 정방행렬만 구할 수 있다고 했다.그렇다면 정방행렬이 아닌 행렬의 역행렬은 구할 수 없을까?결론부터 말하자면 반반이다. 정방행..

[파이썬과 선형대수] 역행렬(1) (정의, 조건, 구하는 법, 유일성)

역행렬의 기초흔히 $ax=b$이면 $\frac{1}{a}\times a x=\frac{b}{a}$로 해결한다.$Ax=b$의 행렬 방정식에서도 비슷하지만 행렬의 역수를 어떻게 구할 것이냐가 문제가 된다.그래서 $A^{-1}A=I$를 만족시키는 행렬을 찾게 된 것이며, 그 행렬을 역행렬이라고 부른다.역행렬의 조건역행렬을 구하기에 앞서 역행렬을 구할 수 있는 조건이 존재한다.정방행렬행렬 A는 정방행렬이어야만 한다.계수가 full rank행렬 A의 계수가 full rank이어야 한다.즉, 모든 열과 행이 선형 독립(linear independent)여야 한다.같은 소리이지만 행렬식이 0이 아니어야 한다.$2 \times 2$ 역행렬 공식임의의 N에 대하여 $N \times N$ 행렬의 역행렬에 대한 이야기는 차..

반응형