Пусть матрица данных имеет размер n × p , где n - количество выборок, а p - количество переменных. Предположим, что он центрирован , то есть средние значения столбцов вычтены и теперь равны нулю.Xn×pnp
Тогда ковариационная матрица C задается как C = X ⊤ X / ( n - 1 ) . Это симметричная матрица, поэтому она может быть диагонализирована: C = V L V ⊤ , где V - матрица собственных векторов (каждый столбец - собственный вектор), а L - диагональная матрица с собственными значениями λ i в порядке убывания на диагонали. , Собственные векторы называются главными осями или главными направлениями.p×pCC=X⊤X/(n−1)
C = V L V⊤,
ВLλяданных. Проекции данных по основным осям называются
главными компонентами , также известными как
оценки ПК ; их можно рассматривать как новые, преобразованные переменные.
-го основного компонента задается
J -го столбца
X V . Координаты
я -й точка данных в новом пространстве ПК задаются
я -й строкой
X V .
JJX VяяX V
Если мы теперь выполним разложение сингулярным значениям , мы получим разложение X = U S V ⊤ , где U - унитарная матрица, а S - диагональная матрица особых значений s i . Отсюда легко увидеть, что C = V S U ⊤ U S V ⊤ / ( n - 1 ) = V S 2Икс
X = U S V⊤,
USsячто означает, что правые сингулярные векторы
Vявляются главными направлениями и что сингулярные значения связаны с собственными значениями ковариационной матрицы через
λi=s 2 i /(n-1). Основные компоненты задаются
XV=USV⊤V=US.
C = V S U⊤U S V⊤/(n−1)=VS2n−1V⊤,
Vλi=s2i/(n−1)XV=USV⊤V=US
Обобщить:
- Если , то столбцы V являются главными направлениями / осями.X=USV⊤V
- Столбцы являются основными компонентами («баллы»).US
- Сингулярные значения связаны с собственными значениями ковариационной матрицы через . Собственные значения λ i показывают дисперсии соответствующих ПК.λi=s2i/(n−1)λя
- Стандартизированные оценки даны столбцами и нагрузки даны столбцамиVS/ √n - 1-----√U . Смотрите, например,здесьиздесь,почему «нагрузки» не следует путать с основными направлениями.VS/n−1−−−−−√
- Вышеприведенное верно только в том случае, если центрирован. XТолько тогда ковариационная матрица равна .X⊤X/(n−1)
- Вышеприведенное верно только для имеющих выборки в строках и переменные в столбцах. Если переменные находятся в строках, а выборки в столбцах, то U и V обмениваются интерпретациями.XUV
- Если кто-то хочет выполнить PCA на корреляционной матрице (вместо ковариационной матрицы), то столбцы должны быть не только центрированы, но и стандартизированы, то есть разделены на их стандартные отклонения.X
- Чтобы уменьшить размерность данных от до K < р , выберите K первые столбцы U и K × K верхняя левая часть S . Их произведение U k S k является требуемой матрицей n × k, содержащей первые k ПК.pk<pkUk×kSUkSkн × кК
- Кроме умножение первого ПК с помощью соответствующих главных осей V ⊤ к дает Й к = U ⊤ к S ⊤ к V ⊤ к матрице , которая имеет оригинальный п × р размера , но более низкий ранг (ранг к ). Эта матрица X k обеспечивает реконструкцию исходных данных с первых k ПК. У этого есть самая низкая возможная ошибка реконструкции, см. Мой ответ здесь .КВ⊤КИксК= U⊤КS⊤КВ⊤Кn × pКИксКК
- Строго говоря, имеет размер n × n, а V имеет размер p × p . Однако, если n > p, то последние n - p столбцов U произвольны (и соответствующие строки S имеют постоянный ноль); Поэтому следует использовать размер экономики (или тонкий ) СВД , который возвращает U из п × р размера, опуская бесполезные колонны. При больших n ≫ p матрица UUn × nВр × рn > pн - рUSUn × pн ≫ рUв противном случае было бы излишне огромным. То же самое относится к противоположной ситуации .н ≪ р
Дальнейшие ссылки