Мені подобається контролювати об’єкти, які я створюю, навіть коли вони можуть бути довільними.
Тоді розглянемо, що всі можливі матриць коваріації Σ можна виразити у виглядіn×nΣ
Σ=P′ Diagonal(σ1,σ2,…,σn) P
де - ортогональна матриця і σ 1 ≥ σ 2 ≥ ⋯ ≥ σP .σ1≥σ2≥⋯≥σn≥0
Геометрично це описує структуру коваріації з діапазоном основних компонентів розмірів . Ці компоненти вказують в напрямках рядків P . Див. Малюнки, присвячені аналізу основного компонента, власних векторів та власних значень для прикладів з n = 3 . Встановлення σ i встановить величини коваріацій та їх відносні розміри, тим самим визначивши будь-яку бажану еліпсоїдальну форму. Ряди Р орієнтують осі фігури, як вам зручніше.σiPn=3σiP
Одна алгебраїчна та обчислювальна перевага цього підходу полягає в тому, що при ,σn>0 легко інвертується (що є звичайною операцією на коваріаційних матрицях):Σ
Σ−1=P′ Diagonal(1/σ1,1/σ2,…,1/σn) P.
σin2n
n <- 5
p <- qr.Q(qr(matrix(rnorm(n^2), n)))
n
ΣPσicrossprod
R
σ=(σ1,…,σ5)=(5,4,3,2,1)
Sigma <- crossprod(p, p*(5:1))
σP′
svd(Sigma)
Зворотний Sigma
звичайно отримується лише шляхом зміни множення наσ
Tau <- crossprod(p, p/(5:1))
zapsmall(Sigma %*% Tau)
n×nσi≠01/σiσi