brunch

{선형대수} 이차방정식의 근의판별 (1)

근데 이제 이차형식과 정부호성을 곁들인..

by mashed moshirakano
개념의 연결고리
quadratic form - definitiveness - hessian - convexity


keyword

- quadratic form/formula : 이차형식 (사실, 근의 공식)

- definite matrix : 정부호 행렬

-------------------------------------------------

- hessian matrix

- convexity


목차

quadratic form

definitiveness of matrix

definite matrix

definitiveness of matrix

positive-definite matrix

geometry of definitiveness of matrix

other POV's




선형대수를 공부하다 보면, 선형대수에서 배우는 개념과 방정식에서 배운 개념은 analogous하다는 것을 깨닫게 된다. 중학교때 배운 방정식을 행렬로 다시 배우는 느낌? 아래의 포인트에서 비슷하다고 느꼈다.

1. 해를 구하기 (가우스 조던, 역행렬 등)

2. 연립방정식의 해 판별 : low rank

3. 이차 방정식의 해 판별 : determinant, pd, psd, nd, nsd



잠시 중학교때 배운 이차방정식에서의 근의공식과 판별식을 떠올려보자.

2차항의 계수는 0이 아닌 임의의 이차방정식에서 판별식을 통해 방정식의 근을 판별하고, 근의 종류에 따라 근의 공식을 통해 방정식을 풀게된다.

선형대수에서도 비슷한 개념이 있다.





본 글에서는 이차방정식에 대한 analogy를 통해 이차형식(quadratic form), definitiveness of matrix를 알아보도록 하자.




QUADRATIC FORM

들어가기 앞서...

근의 공식은 주어진 이차 방정식의 근의 개수를 판별하는 식이다. 이때 이차항의 계수는 0이 되면 안된다.

근의 공식이 영어로 quadratic formula라는 것을 알고 있다면 선형대수에서의 quadratic form이 어떤 역할을 하는 지 유추할 수 있을 것이다.



quadratic form

quadratic form이란, 다변수 2차 동차다항식이다 (동차 다항식은, 모든 계수가 0이 아닌 항의 차수가 같은 다변수 다항식이다)

medium

왜 quadratic form 은 xTAx의 꼴인 걸까? 이 질문은 사실 선후관계가 좀 바뀌었는데, 임의의 다항 이차방정식을 대수적으로 표현하기 위해 이러한 형태(quadratic form)으로 나타낸 것이다.




아래의 수식을 보면 quadratic form이 임의의 다항 이차방정식을 일반화할 수 있음을 확인할 수 있다.


스크린샷 2023-08-06 22.31.17.png


medium

중요한 것은, 이 quadratic form의 결과가 스칼라값이 된다는 것이다. 이는, 위의 결과 식을 통해서 추론할 수도 있고, 아래의 식에서 보이는 것처럼 x와 A의 차원을 통해 계산할 수 도 있다. 스칼라값이 되는 게 중요한 이유는, 다음 섹션에서 다루는 definitiveness의 계산과 관련있기 때문이다. 간단하게 말하자면, 이차방정식에서 D 와 0을 비교하는 것 처럼, quadratic form의 결과 값이 스칼라값이기 때문에, 0과 비교하여 우리는 근을 판별할 수 있다.





DEFINITIVENESS OF MATRIX


definite matrix

처음 definite matrix를 배울때, 도대체 무얼 위해 배우는 것인지 잘 와닿지 않았었다. definite matrix 의 한국어 번역은 정부호 행렬/정치행렬 이라고 하는데, 이는 특정한 성질을 가지는 행렬에 대해 양/음수와 같이 부호를 정의하는 것으로 생각할 수 있다. 말이 어려워서 그렇지, 부호를 정의하는 하나의 방식이라고 생각하는 게 편하다.



definitiveness of matrix

앞서 배운 quadratic form에서, coefficient matrix에 해당하는 행렬 A의 definitiveness를 계산할 수 있다 (negative definite, negative semi-definite, positive definite, positive semi-definite)

media_ce6_ce636491-3213-415d-8b0d-536a75637a88_phpFdgyM9.png
c7e37f34-36b7-42ab-a216-472dc571cfc6_chart.jpeg
linear algebra에서의 definitiveness과 이차방정식에서의 definitiveness

quadratic form의 결과 값(스칼라)과 0을 비교하여 definitiveness를 구분하고 있다. 이 5가지 분류 중에서 positive-definite matrix만 살펴보고 넘어가자. 그 밖의 분류들은 본 글에서는 더 깊게 다루지 않겠다. 다음 기회에..



positive-definite matrix

들어가기 전에,

positive definite matrix가 중요한 이유는, 대칭행렬인 주제에 모든 eigenvalue들이 양수씩이나 되는 무지막지하게 특별한 녀석이기 때문이다. 이 지점에서 모든 방면의 응용이 가능해진다. 라고 길버트 교수님이 쓰셨다. 본 글에서는 positive definite matrix를 깊게 다루지 않기 때문에, 중요성을 먼저 투척했다. 이제 정의를 알아보자.


image.png

좀더 쉽게 말하면,

임의의 non-zero 벡터 x와 어떤 대칭 행렬 A가 주어졌을 때, xTAx > 0 이면 행렬 A는 positive definite matrix가 된다는 것이다 (음.. 별 차이없나?ㅋㅋ)


먼저, 어떤 행렬이 positive definite matrix가 되기 위한 조건을 써보면 다음과 같다.

1) all eigenvalues are positive

2) all the subdeterminants are also positive

( n x n 행렬일 때, 1 x 1행렬, 2 x 2행렬, 3 x 3행렬, ... n x n행렬의 행렬식이 모두 양수)

3) all pivots are positive

4) quadratic form is positive (위에 제시된 wikipedia 정의)

위의 4가지 조건들은 동치라서, 하나의 조건을 만족시킴과 동시에 나머지 3개의 성질을 만족시키게 된다.

각 조건이 positive definite matrix를 만드는 증명은 appendix로 추가해놓겠다




geometry of definitiveness of matrix

positive definite이 되면 뭐가 좋을까? 근의 판별과 관련이 있다는 것을 위의 analogy를 통해 유추할 수 있다. 정리하면, 이차 방정식의 근의 공식을 통해 판별식을 구하는 목적과, 선형대수에서의 이차형식(quadratic form)을 통해 positive definite인지 구하는 목적이 모두 근을 판별하기 위함인 것이다.


행렬의 definitiveness 구분에 따른 기하학적 해석은 다음과 같다

output_5_0.png
definiteness.png
두 그림 다 포기할 수 없어서 그냥 다 넣어버렸다.

머신러닝에서 positive definite matrix을 그토록 찾아 헤맸던게 조금 이해가 된다. positive definite에서의 극값이 극소값이기 때문에, 손실함수를 다루는 머신러닝에서는 손실을 최소화하는 파라미터값을 찾기 위해 positive definite matrix를 중요하게 여겼던 것이다.




other POV's

공돌이님의 블로그를 보다가, positive definite을 선형 변환과 내적의 관점에서 해석한 내용이 있어 추가한다.

스크린샷 2023-08-08 오후 1.42.27.png
스크린샷 2023-08-08 오후 1.44.23.png
공돌이의 수학노트

또한, positive definite matrix와 eigen value간의 관계도 함께 짚어주셨다. 아래의 내용은 블로그에서 일부내용을 가져와 약간의 설명을 덧붙인 것이다.

먼저, 고유값을 간략하게 설명하자면, x에 대한 linear transformation을 한 Ax을 어떤 스칼라값 lambda와 x의 곱을 나타낼 수 있으며, 이때의 lambda를 고유값(eigenvalue)이라 한다. 어떤 일차 변환 사상을 하는 행렬 A를 스칼라값으로 대신 나타낼 수 있으므로, 고유값은 고유벡터의 방향으로 얼만큼 행렬이 변하는지를 나타내는 값으로 생각할 수 있는 것이다.


공돌이의 수학노트

보통, 위의 수식(5)을 통해 표현한다. 여기에 우리가 앞서 배운 quadratic form을 적용해보면, (6)의 식이 나오게 된다. 여기서 중요한 점은, lambda가 스칼라 값이기 때문에 행렬곱 |x|^2 앞으로 뺄 수 있게 되고, |x|^2는 음이 아니기 때문에, 자동적으로 lambda의 부호가 전체 식의 부호를 결정하게 된다. 즉, A의 고유값이 행렬 A의 definitiveness를 결정하게 된다는 것이다. 예를 들어, 행렬 A가 대칭행렬일 때 모든 고유값이 양수라면, A는 positive definite matrix이다.

(고유값이 양수라면, 주어진 행렬이 수행하는 변환과 같은 방향으로 커지거나 작아지는 변환을 수행하게된다. 즉, 뒤집어지는 변환을 하는 행렬은 양의 정부호 행렬이 될 수 없다.)







hessian 행렬과 convexity 부분은 다음 포스팅에서 살펴보도록 하자!

keyword
작가의 이전글[LM] 그림으로 설명하는 트랜스포머