Introduction
이번에 선형대수를 공부하면서 내용을 정리해보았습니다.
강의 영상 : https://ocw.mit.edu/courses/18-06-linear-algebra-spring-2010/video_galleries/video-lectures/
Video Lectures | Linear Algebra | Mathematics | MIT OpenCourseWare
This section contains a complete set of video lectures on linear algebra along with transcripts and related resource files.
ocw.mit.edu
스터디 github : https://github.com/jwkweon/study-linear-algebra
GitHub - jwkweon/study-linear-algebra
Contribute to jwkweon/study-linear-algebra development by creating an account on GitHub.
github.com
참고한 블로그 :
Lecture 27: Positive definite matrices and minima
본 내용은 https://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/video-lectures/le...
blog.naver.com
양정 행렬(Positive definite matrix)
이번 강의의 목표는 다음 3가지이다.
- 주어진 대칭행렬이 양정행렬(Positive definite matrix)인지 테스트
- 최소값(Minimum)에 대한 테스트
- $R^n$ 공간에서 타원과의 관계
다음과 같은 대칭행렬 A가 있다.
$$ A = \begin{bmatrix} a & b \\ b & c \end{bmatrix} $$
이 행렬이 양정행렬이기 위한 다음 테스트들을 통과해야한다.
$$ 1. \quad \lambda_1 >0 , \quad \lambda_2 > 0 $$
첫번째는 고유값 테스트이다.
$$ 2. \quad a>0 , \quad ac-b^2 >0 $$
두번째는 행렬식 테스트인데 왼쪽 위부터 1x1의 submatrix에 대한 행렬식과 전체 2x2의 행렬식 모두 양수여야 한다.
(3x3이면 2x2가 submatrix가 되며 총 3개의 행렬식이 양수)
$$ 3. \quad {\rm pivot} \ \ a>0, \quad \frac{ac-b^2}{a} >0 $$
세번째는 pivot 테스트이다. 2x2행렬의 첫번째 pivot은 a가 될 것이고 2번째 pivot은 행렬식 나누기 a가 될 것이다.
$$ 4. \quad x^T A x > 0 $$
네번째는 이차형식(Quadratic form)으로 양정행렬은 벡터 x에 대해 위 식이 성립한다.
이러한 성질을 통해 양정행렬이 최소값 문제에 중요한 역할을 하는 것을 알 수 있다.
Example을 보자.
$$ \begin{bmatrix} 2 & 6 \\ 6 & - \end{bmatrix} $$
이 행렬이 양정행렬이 되기위해서는 마지막 값은 무엇이 되야할까?
18보다 커야할 것이다.
만일, 19라면 이 행렬은 양의 정부호(positive definite)가 된다.
왜냐하면, 행렬식의 값이 38-36으로 양수가 되기 때문이다.
18이라면 아마 이 행렬은 양의 정부호의 경계선이 될 것이다.
$$ \begin{bmatrix} 2 & 6 \\ 6 & 18 \end{bmatrix} $$
이 행렬도 positive라고 부르지만, 조금 다른 이름으로 양의 준정부호(positive semi-definite)라고 부른다.
이 행렬을 잘보면 $row2 = row1 \times 3 $인 것을 알 수가 있다.
따라서, 특이행렬(singular matrix)이고 특이행렬이기때문에 고유값 중 하나는 0이 된다.
양의 정부호는 고유값이 0보다 커야한다.
하지만, 양의 준정부호는 고유값이 0보다 크거나 같을 수 있다.
따라서, 이 "같다"때문에 semi-definite이라는 이름이 붙은 것이다.
그리고 나머지 고유값 하나는 trace의 합에 의해 20이 된다.
또, 행렬식은 0이 36-36으로 0이 됨도 알 수 있다.
마지막으로 pivot은 2가 되고 1개만 가지게 된다.
왜냐하면, 특이행렬이고 Rank=1인 행렬이기 때문이다.
이제, 이차형식 테스트도 통과하는지 보자.
$$ x^T A x $$
$$ = \underset{x^T}{\begin{bmatrix} x_1 & x_2 \end{bmatrix}} \underset{A}{\begin{bmatrix} 2 & 6 \\ 6 & 18 \end{bmatrix}} \underset{x}{\begin{bmatrix} x_1 \\ x_2 \end{bmatrix}} $$
$$ = 2x_1^2 + 12x_1 x_2 + 18 x_2^2 $$
이것은 $x_1$과 $x_2$에 대한 함수가 되며 마치 다음식과 같은 형태가 된다.
$$ =ax^2 + 2bxy + cy^2 $$
이러한 형태를 이차형식(quadratic form)이라고 부른다. 또, 더이상 선형(Linear)적이지 않다.
위 식은 순수하게 2차(second degree)이며, 1차인 선형 부분도 없고 3차 또는 4차, 지수도 없다.
그렇다면, 이 이차형식이 모든 $x_1$과 $x_2$에 대해서 양수가 된다면 이 행렬은 positive definite가 된다.
하지만, 이 테스트를 하기전에 이미 고유값과 pivot 테스트에서 아슬아슬하게 통과하지 못했다.
이번에는 이 행렬의 마지막 값을 18에서 7로 낮춰버리면 어떻게 될까?
아마, 테스트가 완전히 실패할 것이다.
$$ \begin{bmatrix} 2 & 6 \\ 6 & 7 \end{bmatrix} $$
이것의 행렬식은 14-36 = -22이고, 첫번째 pivot이 2이므로 두번째 pivot은 -11이 될 것이다.
따라서, 양의 정부호가 아니다.
한번 이차형식도 보자. $x^T A x$를 계산하지 않아도 18이 7로 변했기 때문에 다음과 같이 될 것이다.
$$ 2x_1^2 + 12 x_1 x_2 + 7x_2^2 $$
그리고 알 수 있는게 $x_1 = 1 $ 과 $x_2 = -1$이면 이차형식 $2-12+7 = -3$으로 은 음의 값이 된다.
이번에는 이 이차형식의 그래프를 그려보자.
$x_1$을 $x$로 바꾸고, $x_2$를 y로 바꿔보자.
$$ f(x, \ \ y) = \vec{x}^T A \vec{x} $$
$$ = ax^2 + 2bxy + cy^2 $$
$$ = 2x^2 + 12xy + 7y^2 $$
먼저, x, y가 모두 0이면 원점을 지날 것이다.
x=1, y=0 이라면 그래프는 위의 방향으로 올라갈 것이고, 포물선(parabola)임을 의미한다.
x=-y라면 밑으로 내려갈 것이다. 왜냐하면 이차형식 테스트를 실패했고, 이것이 non-positive definite이기 때문에 음의 방향으로 내려갈 것이다.
이 그래프는 원점에서 최소값을 가질까?
아니다. 왜냐하면, 원점에서 어떤 방향으로는 위로 올라가고 다른 방향으로는 밑으로 내려가기 때문이다.
이러한 모양을 안장(saddle)처럼 보인다고하고 원점을 안장점(saddle point)라고 부른다.
안장점(saddle point)은 어떤 방향에서는 최대값이 되는 지점이고 다른 방향에서는 최소값이 되는 지점이다.
그리고 실제로 완벽한 방향은 고유벡터(eigenvector)의 방향이 된다.
이번에는 행렬을 진짜 양정행렬로 만들어보자.
마지막 값을 7에서 20으로 바꿔보자.
$$ \begin{bmatrix} 2 & 6 \\ 6 & 20 \end{bmatrix} $$
이 행렬의 행렬식은 40-36 = 4이고, trace는 22이다.
따라서, 고유값은 둘다 양수이고, 2개의 pivot도 양수이고, 행렬식도 양수이다.
이차형식 함수는 다음과 같다.
$$ f(x, \ \ y ) = 2x^2 + 12xy + 20y^2 $$
이식에서 순수한 제곱($2x^2$, $20y^2$)은 항상 양수가 됨을 알 수 있다.
$12xy$는 양수가 될수도 음수가 될수도 있는데 순수한 제곱이 $12xy$보다 충분히 크다면 이차형식은 항상 양수가 될 것이다.
그리고 그래프를 그려보자.
이 그래프는 안장점을 가지지 않는다.
그래프는 모양이 bowl의 모양이 되며, 원점에서 최소값이 된다.
원점에서 xy평면에 접하기 때문에 이 xy평면을 탄젠트 평면(tangent plane)임을 알 수 있다.
또한, 1차 미분(first derivatives)이 모두 0임을 알 수 있다.
$$ \frac{\partial f }{\partial x} = 4x + 12y $$
$$ \frac{\partial f}{ \partial y} = 12x+ 40y $$
여기에 x=0, y=0을 대입하면 전부 0이다.
하지만, 1차 미분값으로 최소값을 단정지을 수 없다. 왜냐하면, 이전의 안장점이 있는 그래프도 1차 미분값이 0이였기 때문이다.
따라서, 최소값인지 알려면 2차 미분(second derivatives)이 필요하다.
최소값을 가지려면 2차 미분은 양수여야 최소값을 통과하면서 기울기는 증가하고, 곡률이 상승하기 때문이다.
또한, 2차 미분이 양수가 된다는 것은, 2차 미분의 행렬이 positive definite라는 말과 같다.
이러한, 2차 미분 과정은 미적분에서 배울 수 있다.
아마, 이런 형태로 배웠을 것이다. 최소값을 가지기 위한 2차 미분 조건
$$ {\rm MIN} \quad \rightarrow \quad \frac{d^2u}{dx^2} >0 $$
실생황에서 함수는 다변수로 구성된다.
$$ f(x_1, \ x_2, \ \cdots, \ x_n ) $$
이것의 2차 미분으로 된 행렬을 구성하고, 이 행렬이 positive definite matrix임을 알게 된다면
이 함수는 최소값이 있음을 알게 된다.
$$ {\rm MIN} \quad \rightarrow \quad {\rm Matrix \ \ of \ \ 2nd \ \ derivatives \ \ is \ \ positive \ \ definite \ \ matrix} $$
다음은 강의 없는 내용이지만 추가
2차 미분 행렬은 헤시안 행렬(Hessian Matrix)로 부른다.
헤시안 행렬은
고유값이 모두 양수면 극소점을 가진다.
고유값이 모두 음수면 극대점을 가진다.
고유값이 양수와 음수가 동시에 있으면 안장점을 가진다.
위의 2x2 행렬의 헤시안 행렬을 구하면 다음과 같다.
$$ H(f) = \begin{bmatrix} f_{xx} & f_{xy} \\ f_{yx} & f_{yy} \end{bmatrix} $$
$f_{xx}$의 의미는 x로 두번 편미분 했다는 의미이고, $f_{xy}$는 x로 한번, y로 한번 편미분 했다는 의미이다.
그리고 $f_{xy} = f_{yx}$이기 때문에 헤시안 행렬이 대칭임을 알 수있다.
$$ H(f) = \begin{bmatrix} 4 & 12 \\ 12 & 40 \end{bmatrix} $$
이 행렬은 양정행렬(positive definite matrix)이므로 극소값을 가지게 된다.
다시 돌아와서
$$ f(x, \ \ y ) = 2x^2 + 12xy + 20y^2 $$
이 함수가 항상 양수임을 정확하게 보이기 위한 좋은 방법은 무엇일까?
이 식을 제곱항으로 표현하면 된다.
$$ f(x, \\ y) = 2x^2 + 12xy + 20y^2 = 2 (x+ 3y)^2 + 2y^2 $$
그리고 그래프를 z=1 지점에서 자른다면 다음과 같은 커브를 얻게 될 것이다.
이렇게 z=1에서 짜르게 되면
$$ f(x,y) = 1$$
이 식을 만족하게 될 것이다.
그리고 이 커브는 타원형(ellipse)가 될 것이다.
만약, 안장점을 통과하게끔 단면을 자른다면 쌍곡선(Hyperbola)를 얻게 될 것이다.
그리고, 제곱식을 다시 봐보자.
$$ {\color{red} 2}(x+ {\color{red} 3}y)^2 + {\color{red} 2}y^2 $$
여기서, 이 숫자들은 우연히 나온것이 아니다.
이 숫자들은 가우스 소거를 통해서 나온다.
$$ A = \begin{bmatrix} 2 & 6 \\ 6 & 20 \end{bmatrix} $$
$$ U = \begin{bmatrix} 2 & 6 \\ 0 & 2 \end{bmatrix} $$
$$ L = \begin{bmatrix} 1 & 0 \\ 3 & 1 \end{bmatrix} $$
여기서, pivot 값 2, 2와 소거행렬 L에서 배수 3을 보게 될 수 있다.
즉, 가우스 소거의 pivot과 배수 정보가 제곱식에 계수 정보로 들어간다.
$$ f(x, \\ y) = 2 (x+ 3y)^2 + 2y^2 $$
$$ f(x, \ \ y ) = {\rm 피봇} (x + {\rm 배수}y)^2 + {\rm 피봇}y^2 $$
그리고 이러한 형태가 양수의 pivot이 제곱식이 제곱의 합형태가 되도록 하는 이유가 되기도 한다.
(pivot이 음수면 제곱끼리 빼는 형태가되므로 함수가 항상 양수가 아닐 수도 있음)
(이 때문에 posiitve definite 체크 조건 중 pivot이 양수임을 테스트한다)
3x3 Example
여태까지는 2x2에 대해 다뤘고 이번에는 3x3 예제를 다룬다.
$$ A = \begin{bmatrix} 2 & -1 & 0 \\ -1 & 2 & -1 \\ 0 & -1 & 2 \end{bmatrix} $$
이 행렬도 양의 정부호 행렬인지 확인해보자.
먼저, 1x1의 행렬식은 2이다.
2x2의 행렬식은 4-1 = 3이다.
그리고 이러한 특별한 행렬에 대해서 행렬식은 2, 3, 4, 5, 6 이런식으로 선형적으로 증가한다.
따라서, 3x3의 행렬식은 4이다.
pivot은 순서대로, 2, $\frac{3}{2}$, $\frac{4}{3}$이 된다.
고유값은 $2 - \sqrt{2} $, $2$, $2 + \sqrt{2}$가 된다.
trace랑, 고유값의 곱=행렬식 모두 만족한다.
다음은 이차형식이다.
$$ x^T A x = 2x_1^2 + 2x_2^2 + 2x_3^2 -2x_1x_2 - 2x_2x_3 > 0 $$
이 함수는 제곱식으로 만들면 항상 양수이다.
그리고 이 함수는 그래프로 그리면 위로 올라가는 bowl 형태가 될 것이다.
마지막으로 이 bowl의 단면으로 자른다면 어떤모양일까?
현재 4차원에 있고 x1, x2, x3를 base로하고 함수 값 z 또는 f 또는 무언가로 축이하나 더 있을 것이다.
4차원 그림에서 높이 1에서 단면으로 자른다고 가정해보자.
아마, 타원면(ellipsoid)이 될 것이다.
타원면은 가운데의 센터를 가지고 있고, 3개의 방향을 가질 것이다.
만약, 타원이아니라 구(sphere)라면 모든 방향이 동일할 것이다.
그리고 구(sphere)는 단위행렬에서 나올 것이고 모든 고유값이 같다.
위의 예제의 단면으로 자른 모양이 타원면이 나오는 이유는 3개의 고유값이 전부 다르기 때문이다.
이렇게 고유값이 다르면 서로다른 축이 나오게 되며,
고유값의 크기에 따라 축의 길이는 달라지며,
길이 순서대로 major axis, middle axis, minor axis를 가지게 될 것이다.
아래 그림은 3가지 축을 나타낸 그림이다.
그리고 이들 3개의 축이 고유벡터의 방향이 된다.
이들 축의 길이는 고유값에 의해 결정된다.
다시 선형대수학의 주요 요점으로 돌아가보자.
$$ A = Q \Lambda Q^T $$
대칭행렬 A를 고유벡터 행렬인 Q와 람다 대각행렬 그리고 Q의 전치행렬의 곱으로 쓸 수가 있다.
이것은 대칭 행렬의 대각화이다.
이 공식을 주축정리(The principal axes theorem)이라고 부른다.
고유벡터는 축의 방향을 말해주고, 고유값은 축의 길이를 말해준다.
주축정리에 의의는 이차형식 $x^T A x$에서 A를 대각화하여 대입하면 교차항이 없는 제곱형태만 있는 이차형식을 만들어 낼 수 있다. (https://ko.wikipedia.org/wiki/%EC%A3%BC%EC%B6%95%EC%A0%95%EB%A6%AC)