Является ли каждая ковариационная матрица положительно определенной?


48

Я думаю, что ответ должен быть да, но я все еще чувствую, что-то не так. В литературе должны быть общие результаты, кто-нибудь может мне помочь?


2
Каждая ковариационная матрица является положительной полуопределенной. Это означает, что каждая ковариационная матрица должна иметь неотрицательные собственные значения. Если ни одно из собственных значений не равно нулю, то ковариационная матрица дополнительно является положительно определенной.
Кака


4
@Jingjings: я вижу в вашем профиле, что вы никогда не голосовали и не принимали никаких ответов; это очень замечательно, учитывая, что у вас много хороших вопросов и много хороших ответов. Я полагаю, вы не знаете, как это работает. Идея состоит в том, чтобы вы одобряли любой ответ, который вы считаете полезным, и принимаете любой ответ, который, по вашему мнению, решит вашу проблему. Похоже, вы можете высказать много ответов, а также принять некоторые из них.
амеба говорит восстановить монику

Ответы:


47

Нет.

Рассмотрим три переменные, , Y и Z = X + Y . Их ковариационная матрица M не является положительно определенной, поскольку существует вектор z ( = ( 1 , 1 , - 1 ) ), для которого z M z не является положительным.ИксYZзнак равноИкс+YMZзнак равно(1,1,-1)'Z'MZ

Ковариационные матрицы популяции являются положительными полуопределенными.

(См. Свойство 2 здесь .)

То же самое в целом должно применяться к ковариационным матрицам полных выборок (без пропущенных значений), поскольку их также можно рассматривать как форму дискретной ковариации населения.

Однако из-за неточности числовых вычислений с плавающей точкой даже алгебраически положительно определенные случаи могут иногда вычисляться, чтобы не быть даже положительно полуопределенными; хороший выбор алгоритмов может помочь с этим.

В более общем смысле, выборочные ковариационные матрицы - в зависимости от того, как они справляются с отсутствующими значениями в некоторых переменных - могут быть или не быть положительными полуопределенными, даже в теории. Например, если используется попарное удаление, то нет гарантии положительной полуопределенности. Кроме того, накопленная числовая ошибка может привести к тому, что выборочные ковариационные матрицы, которые должны быть условно положительными, полуопределенными, могут быть неверными.

Вот так:

 x <- rnorm(30)
 y <- rnorm(30) - x/10 # it doesn't matter for this if x and y are correlated or not
 z <- x+y
 M <- cov(data.frame(x=x,y=y,z=z))
 z <- rbind(1,1,-1)
 t(z)%*%M%*%z
              [,1]
[1,] -1.110223e-16

Это произошло в первом примере, который я попробовал (я, вероятно, должен предоставить семя, но не так уж и редко, что вам нужно попробовать много примеров, прежде чем вы его получите).

Результат получился отрицательным , хотя он должен быть алгебраически нулевым. Другой набор чисел может дать положительное число или «точный» ноль.

-

Пример умеренного отсутствия, приводящего к потере положительной полуопределенности посредством парного удаления:

z <- x + y + rnorm(30)/50  # same x and y as before.
xyz1 <- data.frame(x=x,y=y,z=z) # high correlation but definitely of full rank 

xyz1$x[sample(1:30,5)] <- NA   # make 5 x's missing  

xyz1$y[sample(1:30,5)] <- NA   # make 5 y's missing  

xyz1$z[sample(1:30,5)] <- NA   # make 5 z's missing  

cov(xyz1,use="pairwise")     # the individual pairwise covars are fine ...

           x          y        z
x  1.2107760 -0.2552947 1.255868
y -0.2552947  1.2728156 1.037446
z  1.2558683  1.0374456 2.367978

 chol(cov(xyz1,use="pairwise"))  # ... but leave the matrix not positive semi-definite

Error in chol.default(cov(xyz1, use = "pairwise")) : 
  the leading minor of order 3 is not positive definite

 chol(cov(xyz1,use="complete")) # but deleting even more rows leaves it PSD

          x          y          z
x 0.8760209 -0.2253484 0.64303448
y 0.0000000  1.1088741 1.11270078
z 0.0000000  0.0000000 0.01345364

1
+1: Но как комментарий, в основном для вас формулировка: как вы представляете, похоже, что PSD-ность не гарантируется в общем случае. Как показано в ответе sjm.majewski, вам нужен «патологический» случай (не полный ранг), и вы столкнетесь с этой проблемой. (Я полностью согласен с числовым комментарием.) Можете ли вы описать проблему с большим количеством пропущенных значений, когда вы даже не можете гарантировать PSD, даже если учли числовые ошибки? (Я предполагаю, что вы не обеспокоены редкостью измерений и т. Д., Когда говорите это)
usεr11852 говорит Reinstate Monic

2
Конечно, это происходит только тогда, когда он не имеет полного ранга (или очень близко к нему). Посмотрите на определение PSD (и упоминание @ sjm.majewski об отношении к дисперсии), и это очень ясно. Но определять его как патологическое кажется странным, поскольку такие ситуации с неполным рангом случаются на практике постоянно. Это не простая педантичность - она ​​влияет на реальные наборы данных каждый день, и в результате здесь возникают регулярные вопросы. Я расскажу об отсутствии и парном удалении выше, потому что здесь нет места для этого.
Glen_b

2
N<пN<п

27

Σя,Jзнак равно1NYяYJСоv(Икся,ИксJ)знак равноВaр(Σязнак равно1NYяИкся)0
YяИкся

Y1знак равно1,Y2знак равно1,Y3знак равно-1Икс1знак равноИкс,Икс2знак равноY,Икс3знак равноZзнак равноИкс+YΣязнак равно13YяИксязнак равно00


Приятно! Upvote;)
Старик в море.

Это должен быть принятый ответ. Вопрос только о «ковариационных матрицах», которые обычно относятся к ковариационной матрице совокупности случайных величин, а не к выборке.
user3303

Могу я спросить, какую формулу вы использовали в своем ответе?
Aqqqq

Если вы имеете в виду формулу с дисперсией и ковариациями, то вы можете вывести ее из формулы для квадрата суммы (то есть квадрат суммы равен сумме произведений для всех пар).
sjm.majewski
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.