SPD (Symmetric Positive Definite) 행렬이 중요한 이유는 무엇입니까?


20

SPD (symmetric positive definite) 행렬의 정의를 알고 있지만 더 이해하고 싶습니다.

왜 그렇게 직관적으로 중요합니까?

여기 내가 아는 것입니다. 또 뭐요?

  • 주어진 데이터에 대해 공분산 행렬은 SPD입니다. 공분산 행렬은 중요한 측정 항목 입니다. 직관적 인 설명 은이 게시물 을 참조하십시오 .

  • 이차 형태 A가 SPD12xAxbx+c이면 2 xAxbx+c는 볼록합니다. 볼록 함은 로컬 솔루션이 글로벌 솔루션인지 확인하는 데 유용한 기능입니다. 볼록 문제의 경우 해결해야 할 좋은 알고리즘이 많이 있지만 비 볼록 문제는 아닙니다.A

  • 경우 A SPD는, 차 형태에 대한 최적화 솔루션은

    minimize   12xAxbx+c
    와 선형 시스템
    Ax=b
    에 대한 해는 동일합니다. 따라서 두 가지 고전적인 문제 사이에서 변환을 실행할 수 있습니다. 한 도메인에서 발견 된 트릭을 다른 도메인에서 사용할 수 있기 때문에 이것은 중요합니다. 예를 들어 켤레 그라디언트 방법을 사용하여 선형 시스템을 해결할 수 있습니다.
  • Cholesky 분해와 같은 SPD 매트릭스에 더 잘 작동하는 좋은 알고리즘 (빠른 수치 적 안정)이 많이 있습니다.

편집 : 나는 SPD 매트릭스의 정체성을 요구하려고 시도하지 않고, 중요성을 보여주기 위해 속성 뒤에 직관을 요구합니다. 예를 들어 @Matthew Drury에서 언급했듯이 행렬이 SPD 인 경우 고유 값은 모두 양의 실수이지만 모든 양의 문제는 왜됩니까? @Matthew Drury는 흐름에 대한 훌륭한 답변을 얻었으며 이것이 내가 찾던 것입니다.


7
고유 값은 모두 양의 실수입니다. 이 사실은 다른 많은 것들의 기초가됩니다.
Matthew Drury

4
@Matthew보다 조금 더 나아가려면 적절한 기준을 선택하면 이러한 모든 행렬이 동일 하고 항등 행렬과 같습니다. 다시 말해, 각 차원마다 (실제 벡터 공간의 경우) 정확히 양의 2 차 이차 형태가 있으며 유클리드 거리와 동일합니다.
whuber

2
실제 대칭 행렬의 고유 값을 표시하는 많은 기본 방법에서 직관을 찾을 수 있습니다. mathoverflow.net/questions/118626/… 특히 2 차 형식 는 레일리 지수에서 자연스럽게 발생합니다. 대칭 행렬은 고유 값이 실제 인 큰 행렬의 행렬을 나타내는 자연스러운 방법을 제공합니다. Courant minimax 정리를 참조하십시오 : en.wikipedia.org/wiki/Courant_minimax_principlexTAx
Alex R.

4
이것은 지나치게 광범위 해 보입니다. 아직 세 가지 답변이 없다면 그 근거로 닫았을 것입니다. 구체적으로 알고 싶은 것에 대해 더 많은 지침을 제공하십시오 (직관을 요구하는 것은 사람들이 이와 같은 경우에 추측하기에는 너무 개인적 / 개별적입니다)
Glen_b-복지국 Monica

1
통계표에서 psd가 아닌 행렬을 발생 시키는 상황 에서 어려움을 겪고 있습니다. . 내가 생각할 수있는 모든 사각형 대칭 행렬은 공분산, 정보 또는 투영 행렬입니다. (응용 수학의 다른 곳에서, 비 psd 매트릭스는 문화적 규범, 예를 들어 PDE의 유한 요소 매트릭스 일 수 있습니다.)
StasK

답변:


15

(실수) 대칭 행렬은 대응하는 고유 값이 모두 실수 인 완전한 직교 고유 벡터 세트를 갖습니다. 비대칭 행렬의 경우 실패 할 수 있습니다. 예를 들어, 2 차원 공간에서의 회전에는 실수에 고유 벡터 또는 고유 값이 없으므로 복소수에 대한 벡터 공간으로 전달하여 찾아야합니다.

행렬이 추가로 양의 정한 경우이 고유 값은 모두 양의 실수입니다. 가 단위 길이를 가진 고유 벡터이고 λ 에 해당하는 고유 값 인 경우이 사실은 첫 번째보다 훨씬 쉽습니다.vλ

λ=λvtv=vtAv>0

마지막 평등은 양의 정의의 정의를 사용합니다.

직관을 위해 여기서 중요한 것은 선형 변환의 고유 벡터와 고유 값이 변환을 가장 쉽게 이해할 수있는 좌표계를 설명한다는 것입니다. 선형 좌표 변환은 표준 좌표계와 같은 "자연적인"기준으로 이해하기가 매우 어려울 수 있지만, 각각의 변형은 모든 방향에서 스케일링으로 작용하는 고유 벡터의 "선호 된"기준을 따릅니다. 이것은 변환의 지오메트리를 훨씬 더 이해하기 쉽게 만듭니다.

예를 들어, 함수 의 국소 극도에 대한 2 차 미분 테스트 는 종종 2 차 미분 행렬의 입력과 일부 결정 요인을 포함하는 일련의 신비한 조건으로 제공됩니다. 실제로 이러한 조건은 단순히 다음과 같은 기하학적 관찰을 인코딩합니다.R2R

  • 2 차 도함수의 행렬이 양수이면, 지역 최소값입니다.
  • 이차 미분 행렬이 음수이면, 극대값입니다.
  • 그렇지 않으면, 당신은 안장 지점이 아닙니다.

위에서 고유 한 기하 추론으로 이것을 이해할 수 있습니다. 임계점에서 첫 번째 미분은 사라 지므로 여기서 함수의 변화율은 두 번째 미분에 의해 제어됩니다. 이제 우리는 기하학적으로 추론 할 수 있습니다

  • 첫 번째 경우에는 두 개의 고유 방향이 있으며, 따라 가면 기능이 증가합니다.
  • 두 번째, 두 고유 방향, 그리고 당신이 이동하면 기능이 감소합니다.
  • 마지막으로 두 가지 고유 방향이 있지만 그중 하나에서는 기능이 증가하고 다른 하나에서는 감소합니다.

고유 벡터는 전체 공간에 걸쳐 있기 때문에, 다른 방향은 고유 방향의 선형 조합이므로, 이들 방향의 변화율은 고유 방향의 변화율의 선형 조합이다. 사실, 이것은 모든 방향으로 유지됩니다 (더 높은 차원 공간에 정의 된 함수를 차별화 할 수 있음을 의미합니다). 이제 머리에 작은 그림을 그리면 초보자 미적분학 텍스트에서 매우 신비한 무언가가 의미가 있습니다.

이것은 글 머리 기호 중 하나에 직접 적용됩니다.

이차 형태 A가 SPD 이면 2 xAxbx+c는 볼록합니다. Convex는 로컬 솔루션이 글로벌 솔루션인지 확인할 수있는 좋은 속성입니다.12xAxbx+cA

2 차 도함수의 행렬은 모든 곳에서 이며, 이는 양의 양의 정한입니다. 기하학적으로, 이것은 우리가 어떤 고유 방향으로 멀리 이동하면 (따라서 다른 방향은 고유 방향의 선형 조합이기 때문에 어떤 방향이든) 함수 자체는 접하는 평면 위로 구부러집니다 . 이것은 전체 표면이 볼록한 것을 의미합니다.A


5
그래픽으로 보는 방법 : 가 SPD 인 경우 연관된 2 차 형태의 윤곽선은 타원체입니다. A
JM은 통계가 아니다

7
@JM의 특징은 매우 지각 적입니다. 타원 형상에 대해 특별한 점이 궁금한 사람은 변장하는 완벽한 구에 불과합니다. 측정 단위는 주축을 따라 다를 수 있으며 타원체는 데이터가 설명 된 좌표에 따라 회전 할 수 있습니다 그러나 많은 목적, 특히 개념적인 목적으로 이러한 차이는 중요하지 않습니다.
whuber

그것은 Newton의 방법을 기하학적으로 이해하는 나의 방법과 관련이 있습니다. 타원체로 설정된 현재 레벨에 가장 근접한 다음 타원체가 원인 좌표계를 취한 다음 해당 좌표계의 원에 직교하게 이동하십시오.
Matthew Drury

1
(활성) 구속 조건이있는 경우 고유 값 및 고유 지향 스필을 수행하기 전에 활성 구속 조건의 야곱으로 투영해야합니다. Hessian이 psd 인 경우 (임의의) 투영은 psd이지만 대화는 반드시 사실 일 필요는 없으며 종종 그렇지 않습니다. 내 대답을 참조하십시오.
Mark L. Stone

10

실제 대칭 행렬의 고유 값이 모두 실제임을 보여주는 많은 기본 방법에서 직관을 찾을 수 있습니다. 증명 / 118640 # 118640

특히, 2 차 형태 는 레일리 몫에서 자연적으로 발생하고, 대칭 행렬은 고유 값이 실제 인 큰 계열의 행렬을 나타내는 가장 자연스러운 방법을 제공한다. Courant minimax 정리를 참조하십시오 : https://en.wikipedia.org/wiki/Courant_minimax_principlexTAx

: 대칭형 엄격히 긍정적 명확한 행렬은 단지 유도 규범 함께 적지 않은 내적을 정의 할 수 행렬 설정된 . 이것은 모든 x , yx 2 =에 대한 실수 벡터 x , y d ( x , y ) = d ( y , x )에 대한 정의에 의한 것입니다.d(x,y)=x,Ay=xTAyx,y d(x,y)=d(y,x)x,y 에 대한 X 0 . 이런 식으로 대칭 포지티브 한정 행렬은 좌표 변환을위한 이상적인 후보로 볼 수 있습니다.x2=xTAx>0x0

후자의 특성은 지원 벡터 시스템, 특히 커널 방법 및 커널 트릭 에서 절대적으로 중요 합니다. 여기서 커널은 올바른 내부 제품을 유도하기 위해 대칭이어야합니다. 실제로 Mercer의 정리 는 대칭 행렬의 직관적 인 속성을 기능 공간으로 일반화합니다.


9

최적화와 관련하여 (최적화 태그로 질문에 태그를 추가했기 때문에) SPD 매트릭스는 간단한 한 가지 이유로 매우 중요합니다. SPD Hessian은 검색 방향이 하강 방향임을 보장합니다. 제한없는 최적화를위한 뉴턴 방법의 도출을 고려하십시오. 먼저, 의 Taylor 확장을 만듭니다 .f(x+Δx)

f(x+Δx)f(x)+ΔxTf(x)+12ΔxT2f(x)Δx

다음으로 우리는 대한 미분을 취합니다 .Δx

f(x+Δx)f(x)+2f(x)Δx

마지막으로 미분 값을 0으로 설정하고 구합니다 .Δx

Δx=2f(x)1f(x)

가 SPD 라고 가정하면 다음과 같은 이유로 Δ x 가 하강 방향 임을 쉽게 알 수 있습니다 .2f(x)Δx

f(x)TΔx=f(x)T2f(x)1f(x)<0

뉴턴의 방법을 사용할 때, 비 SPD Hessian 매트릭스는 일반적으로 SPD로 "nudge"됩니다. SPD가 아닌 Hessian을 감지하고 올바른 방향으로 적절하게 "nudge"하고 결과를 인수 분해하는 Cholesky factorization과 동일한 비용을 갖는 수정 된 Cholesky라는 깔끔한 알고리즘이 있습니다. Quasi-Newton 방법은 근사 Hessian을 SPD로 설정하여이 문제를 방지합니다.

게다가, 대칭의 무한 시스템은 요즘 많은 관심을 받고 있습니다. 이들은 제한된 최적화를위한 내부 포인트 방법의 맥락에서 나타납니다.


큰 답변을 주셔서 감사합니다. 줄 검색 방법에서 적절한 방향이 중요하다는 것을 알고 있습니다. 신뢰 영역 방법에서, 적절한 방향이 중요합니까?
Haitao Du

1
신뢰 영역 방법에는 여전히 중요합니다. 트러스트 영역 방법은 기본적으로 단계 크기를 먼저 경계 한 다음 단계 방향을 해결하여 작동합니다. 단계가 목적 함수 값의 원하는 감소를 달성하지 못하면 단계 크기의 한계를 줄이고 다시 시작합니다. 단계 방향을 생성하기위한 알고리즘이 단계 방향이 하강 방향임을 보장하지 않는다고 가정하십시오. 트러스트 영역의 반경이 0이 되더라도 단계 방향이 하강 방향이 아니므로 허용 가능한 단계를 생성 할 수 없습니다 (하나라도 존재하더라도).
Bill Woessner

줄 검색 방법은 기본적으로 동일한 동작을 나타냅니다. 검색 방향이 하강 방향이 아닌 경우 라인 검색 알고리즘은 허용 가능한 스텝 길이를 찾지 못할 수 있습니다. :-)
Bill Woessner

좋은 답변, 조각 연결을 도와 주셔서 감사합니다.
Haitao Du

9

기하학적으로, 양의 한정 행렬은 메트릭을 정의합니다 ( 예 : Riemannian 메트릭). 따라서 즉시 기하학적 개념을 사용할 수 있습니다.

xyA

d(x,y)=(xy)TA(xy)

Rn

x,y=xTAy
ARn


1
A=I

6

대칭 양수 한정 행렬이 왜 그렇게 중요한지를 설명하는 몇 가지 답변이 이미 있으므로, 그 답변 중 일부의 저자를 포함하여 일부 사람들만큼 중요하지 않은 이유를 설명하는 답변을 제공 할 것입니다. 간단하게하기 위해 대칭 행렬에만 초점을 맞추고 Hessians와 최적화에 중점을 둘 것입니다.

하나님 께서 세상을 볼록하게 만드셨다면, 볼록 최적화는없고 최적화 만있을 것입니다. 마찬가지로 (대칭) 양의 한정 행렬이없고 (대칭) 행렬 만있을 것입니다. 그러나 그것은 사실이 아닙니다.

2 차 프로그래밍 문제가 볼록한 경우 "쉽게"해결할 수 있습니다. 볼록하지 않은 경우에도 브랜치 및 바인딩 된 방법을 사용하여 전역 최적을 찾을 수 있습니다 (그러나 더 많은 메모리가 소요될 수 있음).

Newton 방법이 최적화에 사용되고 일부 반복에서 Hessian이 무한정 인 경우,이를 긍정적으로 한정 할 필요는 없습니다. 라인 검색을 사용하는 경우, 음의 곡률 방향을 찾고 라인 검색을 따라 실행할 수 있으며, 트러스트 영역을 사용하는 경우 트러스트 영역 문제의 솔루션이 하강 할 정도로 충분히 작은 트러스트 영역이 있습니다.

Quasi-Newton 방법의 경우 BFGS (문제가 제한되는 경우 감쇠) 및 DFP는 Hessian 또는 역 Hessian 근사값의 양의 유한성을 유지합니다. SR1 (Symmetric Rank One)과 같은 다른 Quasi-Newton 방법은 반드시 양의 한정 성을 유지하지는 않습니다. Hessian이 실제로 최적의 경로를 따라 긍정적으로 결정되지 않은 경우 Quasi-Newton 근사값을 긍정적으로 결정하도록 강제하는 것은 많은 문제에 대해 SR1을 선택하는 좋은 이유입니다. 목적 함수에 2 차 근사값이 발생할 수 있습니다. 대조적으로, SR1 업데이트 방법은 "거위처럼 느슨하다"고 진행되는 과정에서 그 명확성을 변형시킬 수 있습니다.

비선형 적으로 제한된 최적화 문제의 경우 실제로 중요한 것은 목적 함수의 Hessian이 아니라 Lagrangian의 Hessian입니다. 라그랑지안의 헤 시안은 (최적의) 최적에서도 무한정 일 수 있으며, 실제로 라그랑지안의 헤 시안이 양의 반이 필요한 활성 (선형 및 비선형) 구속 조건의 야 코비안의 영 공간으로 투영 된 것입니다. 최적으로 정해져 있습니다. BFGS를 통해 Lagrangian의 Hessian을 모델링하여 긍정적으로 한정하면 모든 곳에서 끔찍한 일이 될 수 있으며 제대로 작동하지 않을 수 있습니다. 반대로 SR1은 고유 값을 실제로 "보는"것에 맞게 조정할 수 있습니다.

이 모든 것에 대해 말할 수있는 것이 더 많지만, 이것은 당신에게 맛을주기에 충분합니다.

편집 : 내가 두 단락을 쓴 것은 맞습니다. 그러나 선형 제한 문제에도 적용된다는 점을 잊었습니다. 선형 제약 문제의 경우, 라그랑지안의 헤 시안은 목적 함수의 헤 시안에 불과합니다. 따라서 극소값에 대한 2 차 최적 조건은 목적 함수의 Hessian이 활성 구속 조건의 Jacobian의 영 공간으로 투영되는 것은 양의 반정의입니다. 가장 주목할만한 것은 목적 함수의 Hessian이 (필수적으로) 최적의 psd가 될 필요는 없으며, 선형 적으로 제한된 문제 일지라도 종종 그렇지 않다는 것입니다.



@ GeoMatt22 @ $$에 베팅하지 않습니다. 반면에 손실 함수를 작성 (선택)하려는 경우 쇼 보트 이외의 다른 목적이없는 경우 볼록하지 않은 것을 만들 필요가 없습니다. 재량은 용기의 좋은 부분입니다.
Mark L. Stone

@ Mark L. Stone : 흥미 롭습니다! 그런 것들에 관해 읽을 수있는 문헌을 참고해 주시겠습니까?
kjetil b halvorsen

@kjetil b halvorsen. 음의 곡률 방향으로 줄 검색 folk.uib.no/ssu029/Pdf_file/Curvilinear/More79.pdf . 신뢰 지역은 많은 책과 논문에서 다룹니다. 지역을 신뢰하기위한 좋은 소개가있는 잘 알려진 책은 amazon.com/…입니다 . .. 현재 다소 오래된 몬스터 책은 epubs.siam.org/doi/book/10.1137/1.9780898719857 입니다. 최적 조건에 대한 내 마지막 단락에 관해서는, 2 차 KKT 조건에 읽을
마크 L. 스톤

@kjetil b halvorsen 나는 볼록하지 않은 이차 프로그램의 세계적인 최적의 발견을 다루지 않았다. CPLEX와 같이 광범위하게 사용 가능한 소프트웨어가이를 수행 할 수 있습니다 ( ibm.com/support/knowledgecenter/SS9UKU_12.6.1/… 참조) . 물론 항상 빠르지는 않으며 메모리가 필요할 수 있습니다. 나는 수백 개의 중요한 크기의 음의 고유 값을 갖는 수만 개의 변수로 일부 QP 최소화 문제를 전체적으로 최적화했습니다.
Mark L. Stone

5

SPD가 중요한 여러 가지 이유를 이미 언급했지만 여전히 질문을 게시했습니다. 그래서, 당신은이 질문에 먼저 대답해야 할 것 같습니다 : 왜 양이 중요합니까?

내 대답은 우리의 경험이나 모델과 조화를 이루기 위해서는 양이 양이어야한다는 것입니다. 예를 들어, 공간에서 항목 사이의 거리는 양수 여야합니다. 좌표는 음수 일 수 있지만 거리는 항상 음수가 아닙니다. 따라서 데이터 세트와 데이터를 처리하는 알고리즘이 있으면 음수 거리를 공급할 때 분류되는 알고리즘으로 끝날 수 있습니다. "내 알고리즘에는 항상 양의 거리 입력이 필요합니다."라고 말하면 불합리한 수요처럼 들리지 않습니다.

i(xiμ)2/n
xi

따라서 분산-공분산 행렬은 양의 반정의, 즉이 비유에서 "음이 아닌"입니다. 이 조건을 필요로하는 알고리즘의 예는 Cholesky 분해이며 매우 편리합니다. 종종 "행렬의 제곱근"이라고합니다. 따라서 음수가 아닌 실수가 필요한 실수의 제곱근처럼 Cholesky는 음이 아닌 행렬을 원합니다. 공분산 행렬을 다룰 때 항상 이러한 제약 조건을 찾을 수는 없습니다.

이것이 바로 공리주의 적 답변입니다. 비 음성 또는 SPD와 같은 제약 조건을 통해 입력이 이러한 제약 조건을 충족 할 때 사용할 수있는보다 효율적인 계산 알고리즘 또는 편리한 모델링 도구를 구축 할 수 있습니다.


3

양의 반음계 행렬이 중요한 이유에 대해 언급되지 않은 두 가지 이유가 더 있습니다.

  1. 그래프 라플라시안 행렬은 대각선이 지배적이므로 PSD입니다.

  2. 양의 반 정밀도는 대칭 행렬 세트에서 부분 순서를 정의합니다 (이것은 반정의 프로그래밍의 기초입니다).

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.