Геометрическое понимание СПС в предметном (двойственном) пространстве


19

Я пытаюсь получить интуитивное понимание того, как анализ главных компонентов (PCA) работает в предметном (двойном) пространстве .

Рассмотрим двумерный набор данных с двумя переменными, x1 и x2 , и n точками данных (матрица данных X имеет n×2 и предполагается, что она центрирована). Обычное представление PCA состоит в том, что мы рассматриваем n точек в R2 , записываем ковариационную матрицу 2×2 и находим ее собственные векторы и собственные значения; первый ПК соответствует направлению максимальной дисперсии и т. д. Вот пример с ковариационной матрицей C=(4222), Красные линии показывают собственные векторы, масштабированные квадратными корнями соответствующих собственных значений.

PCA в пробном пространстве

Теперь рассмотрим, что происходит в предметном пространстве (я узнал этот термин из @ttnphns), также известном как двойное пространство (термин, используемый в машинном обучении). Это мерное пространство, где выборки наших двух переменных (два столбца из X ) образуют два вектора x 1 и x 2 . Квадратная длина каждого переменного вектора равна его дисперсии, косинус угла между двумя векторами равен корреляции между ними. Это представление, кстати, очень стандартно при лечении множественной регрессии. В моем примере предметное пространство выглядит так (я показываю только 2D-плоскость, натянутую на два переменных вектора):nXx1x2

СПС в предметном пространстве 1

Главные компоненты, являющиеся линейными комбинациями двух переменных, образуют два вектора и p 2 в одной плоскости. Мой вопрос: каково геометрическое понимание / интуиция того, как формировать векторы переменных главных компонент, используя оригинальные векторы переменных на таком графике? Учитывая x 1 и x 2 , какая геометрическая процедура даст p 1 ?p1p2x1x2p1


Ниже мое текущее частичное понимание этого.

Прежде всего, я могу вычислить основные компоненты / оси с помощью стандартного метода и построить их на том же рисунке:

СПС в предметном пространстве 2

Кроме того, мы можем отметить, что выбрано таким, что сумма квадратов расстояний между x i (голубыми векторами) и их проекциями на p 1 минимальна; эти расстояния являются ошибками реконструкции и показаны черными пунктирными линиями. Эквивалентно, p 1 максимизирует сумму квадратов длин обеих проекций. Это полностью определяет p 1 и, конечно, полностью аналогично аналогичному описанию в основном пространстве (см. Анимацию в моем ответе «Осмысление анализа главных компонент, собственных векторов и собственных значений»). Смотрите также первую частьответа @ ttnphns'es здесь.p1xip1p1p1

Тем не менее, это не достаточно геометрический! Это не говорит мне, как найти такой и не указывает его длину.p1

Я предполагаю, что , x 2 , p 1 и p 2 все лежат на одном эллипсе с центром в 0, где p 1 и p 2 являются его основными осями. Вот как это выглядит в моем примере:x1x2p1p20p1p2

введите описание изображения здесь

Q1: как доказать это? Прямая алгебраическая демонстрация кажется очень утомительной; как увидеть, что это должно быть так?

Но есть много разных эллипсов с центром в и проходящих через x 1 и x 2 :0x1x2

введите описание изображения здесь

Q2: Что определяет «правильный» эллипс? Моим первым предположением было, что это эллипс с максимально длинной главной осью; но это кажется неправильным (есть эллипсы с главной осью любой длины).

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


Правда ли, что существует много возможных эллипсов, которые центрированы в начале координат (где x1 и x2 пересекаются) и контактируют с дальними концами x1 & x2? Я бы подумал, что будет только один. Конечно, их может быть много, если вы расслабите один из этих трех критериев (центр и два конца).
gung - Восстановить Монику

Есть множество эллипсов с центром в начале координат, проходящих через два вектора. Но для неколлинеарных векторов и ( c , d ) есть только один, который является единичным кругом в двойственном базисе. Это локус x ( a , b ) + y ( c , d ), где | ( a c b d ) - 1 ( x y ) | 2 = 1.(a,b)(c,d)x(a,b)+y(c,d)
|(acbd)1(xy)|2=1.
Из его главных осей можно многому научиться.
whuber

3
variable space (I borrowed this term from ttnphns)- @amoeba, вы должны ошибаться. Переменные как векторы в (изначально) n-мерном пространстве называются предметным пространством (n предметов как оси «определяют» пространство, в то время как p-переменные «охватывают» его). Переменное пространство , наоборот, наоборот - то есть обычный график рассеяния. Так устанавливается терминология в многомерной статистике. (Если в машинном обучении все по-другому - я этого не знаю, - тогда это гораздо хуже для учащихся.)
ttnphns

Обратите внимание, что оба являются векторными пространствами: векторы (= точки) - это то, что охватывает, оси - это то, что определяет направления и несут метки измерения. Обратите внимание также на диалектику: оба «пространства» на самом деле являются одним и тем же пространством (только сформулированы по-разному для текущей цели). Это видно, например, на последней картинке в этом ответе . Когда вы накладываете две формулировки, вы получаете биплот или двойной пробел.
ttnphns

My guess is that x1, x2, p1, p2 all lie on one ellipseКакая здесь может быть эвристическая помощь от эллипса? Я в этом сомневаюсь.
ttnphns

Ответы:


5

Все резюме отображаемые в вопросе, зависят только от его вторых моментов; или, что то же самое, на матрицу X ' X . Потому что мы думаем о X как о облаке точек - каждая точка - это рядXXXX --мы может спроситьчто простые операции по этим вопросам сохранения свойств X ' X .XXX

Один из них - умножить влево на матрицу U n × n , что приведет к получению другого nXn×nU матрицы U X . Чтобы это работало, важно, чтобыn×2UX

XX=(UX)UX=X(UU)X.

Равенство гарантируется, когда являетсяUU единичная матрица: то есть, когда U являетсяортогональной.n×nU

Хорошо известно (и легко показать), что ортогональные матрицы являются продуктами евклидовых отражений и вращений (они образуют группу отражений в ). Выбирая ротациюумом, мы можем значительно упростить X . Одна идея состоит в том, чтобы сосредоточиться на вращениях, которые затрагивают только две точки в облаке одновременно. Это особенно просто,потому что мы можем их визуализировать.RnX

В частности, пусть и ( х J , у J ) две различные точки , отличные от нуля в облаке, составляя на строки I и J на X . Вращение пространства столбцов R n, затрагивающее только эти две точки, преобразует их в(xi,yi)(xj,yj)ijXRn

{(xi,yi)=(cos(θ)xi+sin(θ)xj,cos(θ)yi+sin(θ)yj)(xj,yj)=(sin(θ)xi+cos(θ)xj,sin(θ)yi+cos(θ)yj).

То, что это составляет, - это рисование векторов и ( y i , y j ) в плоскости и поворот их на угол θ . (Обратите внимание, как здесь смешиваются координаты! Х совпадают друг с другом, а у - вместе. Таким образом, эффект этого вращения в R n обычно не будет выглядеть как вращение векторов ( x i , у и ) и(xi,xj)(yi,yj)θxyRn(xi,yi)(xj,yj) как нарисовано в R2 )

Выбрав правильный угол, мы можем обнулить любой из этих новых компонентов. Чтобы быть конкретным, давайте выберем так, чтобыθ

{cos(θ)=±xixi2+xj2sin(θ)=±xjxi2+xj2.

Это делает . Выберите знак, чтобы сделать y j0 . Назовем эту операцию, которая изменяет точки i и j в облаке, представленном X , γxj=0yj0ijX .γ(i,j)

Рекурсивное применение к X приведет к тому, что первый столбец X станет ненулевым только в первой строке. Геометрически мы переместим все, кроме одной точки облака, на ось y . Теперь мы можем применить один поворот, потенциально включающий в себя координаты 2 , 3 , , n в - 1γ(1,2),γ(1,3),,γ(1,n)XXy2,3,,n , чтобы сжать этиnRnn1указывает на одну точку. Эквивалентное был уменьшен до блочной формыX

X=(x1y10z),

с и z оба вектора столбцов с n - 1 координатами, таким образом, что0zn1

XX=((x1)2x1y1x1y1(y1)2+||z||2).

This final rotation further reduces X to its upper triangular form

X=(x1y10||z||0000).

In effect, we can now understand X in terms of the much simpler 2×2 matrix (x1y10||z||) created by the last two nonzero points left standing.

To illustrate, I drew four iid points from a bivariate Normal distribution and rounded their values to

X=(0.090.120.310.630.740.231.80.39)

This initial point cloud is shown at the left of the next figure using solid black dots, with colored arrows pointing from the origin to each dot (to help us visualize them as vectors).

Figure

The sequence of operations effected on these points by γ(1,2),γ(1,3), and γ(1,4) results in the clouds shown in the middle. At the very right, the three points lying along the y axis have been coalesced into a single point, leaving a representation of the reduced form of X. The length of the vertical red vector is ||z||; the other (blue) vector is (x1,y1).

Notice the faint dotted shape drawn for reference in all five panels. It represents the last remaining flexibility in representing X: as we rotate the first two rows, the last two vectors trace out this ellipse. Thus, the first vector traces out the path

(1)θ  (cos(θ)x1,cos(θ)y1+sin(θ)||z||)

while the second vector traces out the same path according to

(2)θ  (sin(θ)x1,sin(θ)y1+cos(θ)||z||).

We may avoid tedious algebra by noting that because this curve is the image of the set of points {(cos(θ),sin(θ)):0θ<2π} under the linear transformation determined by

(1,0)  (x1,0);(0,1)  (y1,||z||),

it must be an ellipse. (Question 2 has now been fully answered.) Thus there will be four critical values of θ in the parameterization (1), of which two correspond to the ends of the major axis and two correspond to the ends of the minor axis; and it immediately follows that simultaneously (2) gives the ends of the minor axis and major axis, respectively. If we choose such a θ, the corresponding points in the point cloud will be located at the ends of the principal axes, like this:

Figure 2

Because these are orthogonal and are directed along the axes of the ellipse, they correctly depict the principal axes: the PCA solution. That answers Question 1.


The analysis given here complements that of my answer at Bottom to top explanation of the Mahalanobis distance. There, by examining rotations and rescalings in R2, I explained how any point cloud in p=2 dimensions geometrically determines a natural coordinate system for R2. Here, I have shown how it geometrically determines an ellipse which is the image of a circle under a linear transformation. This ellipse is, of course, an isocontour of constant Mahalanobis distance.

Another thing accomplished by this analysis is to display an intimate connection between QR decomposition (of a rectangular matrix) and the Singular Value Decomposition, or SVD. The γ(i,j) are known as Givens rotations. Their composition constitutes the orthogonal, or "Q", part of the QR decomposition. What remained--the reduced form of X--is the upper triangular, or "R" part of the QR decomposition. At the same time, the rotation and rescalings (described as relabelings of the coordinates in the other post) constitute the DV part of the SVD, X=UDV. The rows of U, incidentally, form the point cloud displayed in the last figure of that post.

Finally, the analysis presented here generalizes in obvious ways to the cases p2: that is, when there are just one or more than two principal components.


Though your answer may be exemplary on it own it is unclear - to me - how it relates to the question. You are speaking throughout about the data cloud X (and vectors you rotate are data points, rows of X). But the question was about the reduced subject space. In other words, we don't have any data X, we have only 2x2 covariance or scatter matrix X'X.
ttnphns

(cont.) We represent the 2 variables summarized by it as 2 vectors with lengths = sqrt(diagonal elements) and angle = their correlation. Then the OP askes how can we purely geometrically solve for the principal components. In other words, OP wants to explain geometrically eigendecomposition (eigenvalues & eigenvectors or, better, loadings) of 2x2 symmetric covariance matrix.
ttnphns

(cont.) Please look on the second picture there. What the OP of the current question seeks for is to find geometric (trigonometric etc) tools or tricks to draw the vectors P1 and P2 on that pic, having only vectors X and Y as given.
ttnphns

1
@ttnphns. It doesn't matter what the starting point is: the first half of this answer shows that you can reduce any point cloud X to a pair of points which contain all the information about XX. The second half demonstrates that pair of points is not unique, but nevertheless each lies on the same ellipse. It gives an explicit construction of that ellipse beginning with any two-point representation of XX (such as the pair of blue vectors shown in the question). Its major and minor axes yield the PCA solution (the red vectors).
whuber

1
Thanks, I'm beginning to understand your thought. (I wish you added subtitles / synopsis right in your answer about the two "halves" of it, just to structure it for a reader.)
ttnphns
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.