3x3 korelasyon matrisinin tamamlanması: verilen üç katsayının iki katsayısı


20

Bir röportajda bana bu soru soruldu.

Diyelim ki formda bir korelasyon matrisi var

[10.60.80.61γ0.8γ1]

Bu korelasyon matrisi göz önüne alındığında gama değerini bulmam istendi.
Özdeğerlerle bir şeyler yapabileceğimi düşündüm, çünkü bunların hepsi 0'dan büyük veya 0'a eşit olmalıdır (Matrix pozitif semidefinite olmalıdır) - ama bu yaklaşımın cevabı vereceğini düşünmüyorum. Bir numara eksik.

Lütfen bunun için bir ipucu verebilir misiniz?


Yorumlar uzun tartışmalar için değildir; bu sohbet sohbete taşındı .
whuber

1
Bu siteyi aramak, doğrudan alakalı formülleri içeren (birkaç) iş parçacığından birine yol açtı: stats.stackexchange.com/questions/5747 . Felix s'nin cevabında bazı yararlı noktalar da var .
whuber

Yanıtlar:


21

Zaten biliyoruz arasına bağlanır [ - 1 , 1 ] korelasyon matrisi yarı kesin pozitif olması ve dolayısıyla ana minör negatif olmaması gerekirγ[1,1]

Böylece,

1(1γ2)0.6(0.60.8γ)+0.8(0.6γ0.8)0γ2+0.96γ0γ(γ0.96)0 and 1γ10γ0.96

4
@novice Sylvester'ın Kriteri hakkında okumak isteyebilirsiniz
rightskewed

Mükemmel cevap. Aşağıdakileri ekleyeceğim: Gama elde etmenin popüler yolu, yukarıdaki denklemleri çözerken mümkün olan en küçük nükleer normun (aka ky-fan normu) korelasyon matrisine yol açacak gama bulmaya çalışmaktır. Daha fazla bilgi için "matris tamamlama", "sıkıştırıcı algılama" konusuna bakın veya bit.ly/2iwY1nW konusundaki bu rapora göz atın .
Mustafa S Eisa

1
Bunun bir kanıtı olması için, diğer yönde bir sonuca ihtiyacınız vardır: eğer önemsiz olmayan tüm küçükler ve matrisin belirleyici 0 ise , matris pozitif semidefinite olur. >00
Federico Poloni

10

İşte daha basit (ve belki de daha sezgisel) bir çözüm:

Kovaryansı, soyut bir vektör uzayı üzerinde bir iç ürün olarak düşünün . Daha sonra, korelasyon matrisi girişlerdir vektörler için v 1 , v 2 , hac 3 , köşebendin haccosvi,vjv1v2v3 belirtmektediraçısıarasındaki v ı ve v j .vi,vjvivj

O görselleştirmek zor değil tarafından sınırlanan | V 1 , v 2± v 1 , hac 3| . Bunu kosinüsüne bağlanmış ( γ ) bu şekilde bir cos [v 1 , v 2± h 1 , hacim 3] . Temel trigonometri daha sonra γ [ 0.6 ×v2,v3|v1,v2±v1,v3|γcos[v1,v2±v1,v3] .γ[0.6×0.80.6×0.8,0.6×0.8+0.6×0.8]=[0,0.96]

Düzenleme: Not bu son satırında gerçekten cos v 1 , v 2çünkü h 1 , hac 3sin h 1 , hac 3sin 0.6×0.80.6×0.8- 0.6 ve0.8'inikinci görünümü 0.6 2 + 0.8 2 =1sayesinde tesadüf ile gerçekleşircosv1,v2cosv1,v3sinv1,v3sinv1,v20.62+0.82=1.


1
+1, Meşru bir geometrik akıl yürütme (bunu söyleyerek, hesaplamalarınızı yine de kontrol etmedim). Bu tam olarak soruya yorumlarda önerdiğim şey (ne yazık ki, tüm yorumlar moderatör tarafından sohbet etmek için taşındı, yukarıdaki bağlantıya bakın).
ttnphns

Bana öyle geliyor ki, tüm korelasyonların negatif olmaması gerektiğini kanıtladınız, çünkü hesaplamanız her zaman alt sınır için sıfır verecektir. Eğer durum böyle değilse, hesaplamanızın genel olarak nasıl çalıştığını açıklayabilir misiniz? Anlamıyorum belki ya - - Gerçekten güvenmediğiniz üç veya daha fazla boyutta her zaman bir bulabilirsiniz, çünkü bağlı olan ikisi için v 1v 2 = v 1v 3 = 0 ve sonra sınırınız v 2v 3 her zaman sıfır demektir! (cc @ttnphns)v1v1v2=v1v3=0v2v3
whuber

@whuber: Karışıklık için üzgünüm. Hesaplama gelmez değil her zaman alt limit için sıfır ver. Cevabımı değiştirdim.
yangle

Son endişeme nasıl yanıt veriyorsunuz? Görünüşe göre sınırlarınız yanlış.
whuber

@whuber: Sizin durumunuzda, ⟨v1, v2⟩ = ⟨v1, v3⟩ = π / 2, dolayısıyla sınır | | 1v1, v2⟩ ± ⟨v1, v3⟩ | [0, π] beklendiği gibi. Bağlı cos⟨v1, v2⟩cos⟨v1, v3⟩∓sin⟨v1, v3⟩sin⟨v1, v2⟩ on γ da [-1, 1] olarak çalışır.
yangle

4

İşte cevabın ilk yorumunda ne demek istediğimi ve @yangle hakkında konuştuğumu algıladığım şey (hesaplamalarını takip etmeme / kontrol etmeme rağmen).

"Matris pozitif semidefinite olmalıdır" değişken vektörlerin Öklid uzayında bir demet olduğunu ima eder . Vektör üç uzunlukları 1. 3 birim vektörleri XYZ düşünün unutmayın olacak şekilde sabitlenir, çünkü bağıntı matrisinin durumda kovaryans matrisinin daha kolay olan açısının kosinüsü . Böylece, cos α = r x y = 0.6 ve cos β = r y z = 0.8'dir . Cos γ = r'nin sınırları ne olabilirrcosα=rxy=0.6cosβ=ryz=0.8cosγ=rxz? Bu korelasyon Z tarafından Y'yi çevreleyen herhangi bir değeri alabilir ( açısını onunla tutmak ):ryz=0.8

enter image description here

Döndükçe, iki pozisyon nihai wrt X olarak dikkat çekicidir, her ikisi de Z XY düzlemine düştüğü zamandır. Biri X ve Y arasında, diğeri Y'nin karşı tarafındadır. Bunlar mavi ve kırmızı vektörlerle gösterilir. Her iki konumda da tam olarak XYZ (korelasyon matrisi) konfigürasyonu tekildir. Ve bunlar minimum ve maksimum açıdır (bu nedenle korelasyon) Z, wrt X'e ulaşabilir.

Bir düzlemdeki açıların toplamını veya farkını hesaplamak için trigonometrik formülü seçerek, var:

sınırlar olarak.cosγ=rxyryz(1rxy2)(1ryz2)=[0,0.96]

Bu geometrik görünüm sadece @rightskewed'in cebirsel terimlerle (küçükler vb.) İfade ettiği şeye bir başka (ve 3D durumda spesifik ve daha basit) bir görünümdür.


X, Y, Z rasgele değişkenler ise, bunları 3B uzayda vektörlerle nasıl eşlersiniz (Sadece 1B uzayda vektörler olabilir). Ayrıca RV'ler Nx1 ise, o zaman N boyutlu uzayda vektörler olacak mı?
acemi

@novice Evet, başlangıçta Nd uzayında 3 vektördür, ancak yalnızca 3 boyut gereksizdir. Lütfen cevaptaki 2. bağlantıyı takip edin ve açıklandığı konu alanına ilişkin daha fazla referansı okuyun .
ttnphns

4

Ana reşit olmayanlarla oynamak, 3 x 3 veya belki 4 x 4 problemlerde iyi olabilir, ancak daha yüksek boyutlarda gaz ve sayısal kararlılık biter.

Bunun gibi tek bir "serbest" parametre problemi için, matris psd'yi yapan tüm değerlerin kümesinin tek bir aralık olacağını görmek kolaydır. Bu nedenle, bu tür minimum ve maksimum değerleri bulmak yeterlidir. Bu, bir çift doğrusal SemiDefinite Programlama (SDP) probleminin sayısal olarak çözülmesi ile kolayca gerçekleştirilebilir:

  1. minimize mat matris tabi psd olduğunu.
  2. maksimize γ matris tabi psd olduğunu.

Örneğin, bu problemler MATLAB altında YALMIP kullanılarak formüle edilebilir ve sayısal olarak çözülebilir.

  1. gama = sdpvar; A = [1,6 .8; .6 1 gama; .8 gama 1]; optimize et (A> = 0, gama)
  2. optimize et (A> = 0, -gamma)

Hızlı, kolay ve güvenilir.

BTW, soruyu soran smarty pantolon görüşmecisi, iyi geliştirilmiş ve pratik problemleri güvenilir bir şekilde çözmek için sofistike ve kullanımı kolay sayısal optimize edicilere sahip SemiDefinite Programlamanın bu sorunu çözmek için kullanılabileceğini bilmiyorsa ve çok daha fazlası zor varyantlar, ona bunun artık 1870 olmadığını söyleyin ve modern hesaplama gelişmelerinden yararlanmanın zamanı geldi.


4

Aşağıdaki dışbükey setini ele alalım

{(x,y,z)R3:[1xyx1zyz1]O3}

3

enter image description here

Bu eliptopun tanımlanan düzlemlerle kesişimix=0.6 ve tarafındany=0.8, uç noktaları sarı renkli bir çizgi segmenti elde ediyoruz

enter image description here

Elipsin sınırı, tarafından tanımlanan kübik bir yüzeydir.

det[1xyx1zyz1]=1+2xyz-x2-y2-z2=0

Eğer x=0.6 ve y=0.8, daha sonra yukarıdaki kübik denklem ikinci dereceden denkleme kaynar

0.96z-z2=z(0.96-z)=0

Dolayısıyla, eliptopun iki düzlemle kesişimi,

{(0.6,0.8,t)|0t0.96}

1

Her pozitif yarı tanımlanmış matris bir korelasyon / kovaryans matrisidir (ve tersi de geçerlidir).

Bunu görmek için, pozitif yarı tanımlı bir matrisle başlayın bir ve öz-ayrışmalarını alır (spektral teoremde var olur, çünkü bir simetrik) bir=UDUT where U is a matrix of orthonormal eigenvectors and D is a diagonal matrix with eigen values on the diagonal. Then, let B=UD1/2UT where D1/2 is a diagonal matrix with the square root of eignevalues on the diagonal.

Then, take a vector with i.i.d. mean zero and variance 1 entries, x and note that Bx also has mean zero, and covariance (and correlation) matrix A.

Now, to see every correlation/covariance matrix is positive semi-definite is simple: Let R=E[xxT] be a correlation matrix. Then, R=RT is easy to see, and aTRa=E[(aTx)2]0 so the Rayleigh quotient is non-negative for any non-zero a so R is positive semi-definite.

Now, noting that a symmetric matrix is positive semi-definite if and only if its eigenvalues are non-negative, we see that your original approach would work: calculate the characteristic polynomial, look at its roots to see if they are non-negative. Note that testing for positive definiteness is easy with Sylvester's Criterion (as mentioned in another answer's comment; a matrix is positive definite if and only if the principal minors all have positive determinant); there are extensions for semidefinite (all minors have non-negative determinant), but you have to check 2n minors in this case, versus just n for positive definite.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.