본문 바로가기

선형대수12

놈 (norm) norm을 한글로 표기할 때 ‘놈’이라고 하기도 하고 ‘노름’이라고 하기도 하는데, 둘 다 좋은 뜻은 아니지만 ‘놈’이 조금 나은 것 같다. 사람에게도 이놈, 저놈, 그놈이 있듯이 norm에도 여러 놈이 있다. 😊 벡터 \( \mathbf{x} \in R^n \) 의 놈은 다음 4가지 성질을 만족하면서 벡터에서 실수 값을 연결하는 함수로 정의하고, \( \| \mathbf{x} \| \)로 표기한다. 1. \( \| \mathbf{x} \| \)은 음수가 아닌 실수값이다. 즉, \( \| \mathbf{x} \| \ge 0 \) 2. \( \mathbf{x}=0 \) 일 때만 \( \| \mathbf{x} \| =0 \) 이다. 3. 스칼라 \( \alpha \)에 대해서 \( \|\alpha \math.. 2020. 10. 24.
내적 (Inner Product) 두 개의 벡터 사이의 덧셈은 각각의 구성 성분을 더하는 것으로 정의한다. 그렇다면 곱셈 연산은 어떻게 정의할까. 곱셈 연산으로 두 가지 방식이 있다. 바로 dot product와 cross product 연산이다. 두 벡터 \( \mathbf{a}= \begin{bmatrix} a_1 & a_2 & \cdots & a_n \end{bmatrix}^T \)와 \( \mathbf{b}= \begin{bmatrix} b_1 & b_2 & \cdots & b_n \end{bmatrix}^T \)가 있을 때, 두 벡터의 dot product 또는 내적(inner product)은 다음과 같이 정의한다. \[ \mathbf{a} \cdot \mathbf{b} = a_1 b_1 + a_2 b_2 + \cdots + .. 2020. 10. 21.
유사 역행렬 (Pseudo Inverse Matrix) 역행렬은 full rank인 \( n \times n \) 정방 행렬(square matrix)에서만 정의된다. 정방 행렬이 아닌 다른 모양의 행렬에서는 역행렬 대신에 유사 역행렬(pseudo inverse matrix)을 정의할 수 있다. 어떤 \( m \times n \) 실수 행렬 \( A \)에 대해서 다음과 같이 4가지 조건을 만족하는 행렬 \( A^+ \)를 무어-펜로즈(Moore-Penrose) 유사 역행렬이라고 한다. 1. \( A A^+ A = A \) 2. \( A^+ A A^+ = A^+ \) 3. \( (A A^+)^T = A A^+ \) 4. \( (A^+ A)^T = A^+ A \) 특이값 분해(svd)를 이용하면 무어-펜로즈 유사 역행렬을 쉽게 계산할 수 있다. 특이값 분해란 .. 2020. 10. 19.
특이값 분해(SVD)의 응용: 이미지 압축 특이값 분해는 다음과 같이 어떤 \( m \times n \) 실수 행렬(real matrix) \( A \)를 3개의 행렬의 곱으로 분해한 것이다. \[ A = U \Sigma V^T \tag{1} \] 이 식을 풀어 쓰면 다음과 같다. \[ A = \sigma _1 \mathbf{u}_1 \mathbf{v}_1^T + \sigma _2 \mathbf{u}_2 \mathbf{v}_2^T + \cdots + \sigma _r \mathbf{u}_r \mathbf{v}_r^T \tag{2} \] 여기서 \( \sigma _i \)는 특이값으로서 그 숫자는 행렬 \( A \)의 랭크(rank)와 같다. 특이값은 큰 값에서 작은 값의 순서로 정렬시킨 것이다. \[ \sigma _1 \ge \sigma _2 \.. 2020. 7. 25.
특이값 분해(SVD)의 증명 어떤 \( m \times n \) 실수 행렬(real matrix) \( A \)와 그 전치 행렬 \( A^T \)의 행렬곱 \( AA^T \)와 \( A^T A \)는 대칭행렬이며 준정정 행렬(positive semi-definite matrix)이다. 먼저 대칭행렬인지 확인해 보자. 행렬곱을 전치한 다음에 원래 행렬과 같은 지 확인하면 된다. \[ (AA^T )^T=AA^T, \ \ \ (A^T A)^T=A^T A \] 그렇다면 \( AA^T \)이 준정정 행렬인지 확인해 보자. 어떤 벡터 \( \mathbf{x} \)에 대해서 다음 부등식을 만족하는지 확인하면 된다. \[ \begin{align} \mathbf{x} ^T (AA^T ) \mathbf{x} &= (A^T \mathbf{x} )^T .. 2020. 7. 23.
특이값 분해(singular value decomposition) 행렬을 다른 여러 개의 행렬의 곱으로 쪼개는 것을 분해(decomposition)라고 한다. 행렬의 분해로는 고유값 분해(eigen decomposition), 촐레스키 분해(Cholesky decomposition), LU 분해(lower-upper decomposition), 특이값 분해(singular value decomposition) 등 여러가지가 있지만 그 중에서도 가장 중요한 것이 SVD라고 불리는 특이값 분해가 아닐까 싶다. 특이값 분해는 이미지 압축, 모델의 차원 축소, 근사해 계산, 웹서치, 제어분야에서 액추에이터와 센서의 최적 위치를 선정하는 문제, 제어력 할당 문제 등 매우 폭넓게 응용되고 있기 때문이다. 고유값이 행과 열의 갯수가 같은 정방 행렬(square matrix)에서만 .. 2020. 7. 23.
정정(positive-definite) 행렬의 고유값 실수 대칭행렬(real symmetric matrix)의 고유값(eigenvalue)과 고유벡터(eigenvector)는 모두 실수값이다. 또한 서로 다른 고유값에 해당하는 고유벡터는 서로 직각이다. 증명하기는 다소 어렵지만 실수 대칭행렬의 경우에는 서로 다른 고유값 뿐만 아니라 같은 고유값에 대응하는 고유벡터가 여러 개일 경우에도 그 고유벡터들은 서로 직각이다. 정정 행렬도 실수 대칭행렬이므로 고유값과 고유벡터는 실수값을 가지며, 고유벡터들은 서로 직각이다. 이에 덧붙여서 정정 행렬의 고유값은 모두 0보다 크다. 증명해 보자. 정정 행렬 \( A \)의 고유값을 \( \lambda \), 그에 대응하는 고유벡터를 \( \mathbf{v} \)라고 하면, \[ A \mathbf{v} = \lambda \.. 2020. 7. 21.
정정(positive-definite) 행렬이란 다음과 같은 행렬 부등식을 가끔 볼 수 있다. \[ A>0 \] 행렬 \( A \)가 0 보다 크다는 이야기인 것 같은데 ‘크다’ 또는 ‘작다’는 실수값에 대해서나 하는 이야기이지 어떻게 행렬에 대해서 말할 수 있을까. 혹시 행렬 \( A \)의 모든 성분이 0보다 크다는 것을 의미하는 것일까? 아니다. 위 식은 행렬 \( A \)가 정정 행렬(positive-definite matrix)이라는 것을 나타내는 기호이다. 부등호에 등호를 함께 쓴 다음 식은 행렬 \( A \)가 준정정 행렬(positive semi-definite matrix)이라는 것을 나타내는 기호이다. \[ A \ge 0 \] 그렇다면 정정 행렬이란 무엇인가. 성분이 모두 실수이고 대칭인 \( n \times n \) 정방(squar.. 2020. 7. 20.
실수 대칭행렬의 고유값과 고유벡터 행렬의 성분이 모두 실수(real number)이고 대칭인 행렬을 실수 대칭행렬이라고 한다. 일반적인 행렬에서 고유값(eigenvalue)과 고유벡터(eigenvector)는 복소수 값을 가질 수 있다. 하지만 실수 대칭행렬의 고유값과 고유벡터는 모두 실수값이다. 또한 서로 다른 고유값에 해당하는 고유벡터는 서로 직각이다. 이를 증명해 보자. 먼저 \( n \times n \) 정방 행렬 \( A \)의 고유값과 고유벡터는 다음과 같이 정의된다. \[ A \mathbf{v}=\lambda \mathbf{v} \tag{1} \] 여기서 \( \lambda \)는 고유값, \( \mathbf{v} 는\) 그에 해당하는 고유벡터다. 켤레 복소수를 사용하면 위 식은 다음과 같이 쓸 수 있다. \[ \bar{A}.. 2020. 7. 18.
고유값과 고유벡터의 정의 행과 열의 갯수가 같은 행렬인 정방 행렬(square matrix)은 선형변환을 나타내는데 사용된다. 좌표변환은 벡터의 크기는 일정하게 유지하며 방향만 바꾸는 변환인데 비해, 선형변환은 벡터의 크기와 방향을 모두 바꾸는 일반적인 변환이다. 좌표변환 행렬로서 방향코사인행렬(DCM)이 있다. ( https://blog.naver.com/pasus/221858887468 ) 정방 행렬 \( A \)로 다음 식과 같이 벡터 \( \mathbf{v} \)를 다른 벡터 \( \mathbf{w} \)로 변환시킬 수 있다. \[ \mathbf{w}=A \mathbf{v} \] 만약 \( A \)가 다음과 같이 주어진다면, \[ A = \begin{bmatrix} 2 & 0 \\ 1 & 3 \end{bmatrix} \].. 2020. 7. 17.