Это часть серии, посвященной анализу основных компонентов (PCA), и это еще не все.

Здесь мы более подробно обрисовываем элементы, необходимые для реализации PCA.

Помимо отсутствия некоторых наворотов, эта реализация не самая эффективная. Численная стабильность и улучшенные свойства памяти / вычислений означают, что алгоритм кодируется с использованием SVD (факторизация матрицы, отличная от спектрального разложения) для наиболее популярных реализаций, подробнее об этом позже.

Мы добавим несколько дополнительных операций:

  • средние центрирующие переменные
  • Масштабирование переменных к единичной дисперсии

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

Матрица данных

Матрица данных представляет собой n наблюдений вектора X длины p из стабильного процесса генерации данных. (Статистически мы можем предположить, что строки X независимы и одинаково распределены.)

Мы можем рассматривать столбцы X как n наблюдений одной и той же переменной. Эти столбцы имеют отклонения, соответствующие

Среднее центрирование

Центрирование переменных - это просто вычитание среднего значения переменных, среднего значения столбца из матрицы данных. Операция:

Новая центрированная матрица данных предпочтительна по числовым причинам и причинам манипуляции.

Масштабирование переменных до отклонения единиц измерения

Масштабирование переменных для получения единичной дисперсии действительно уменьшает часть информации в матрице данных. Операция:

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

Масштабирование может не потребоваться, если все переменные имеют отклонения примерно одинакового порядка.

Ковариационная матрица

Ковариационная матрица матрицы данных с нулевым центрированием имеет вид

ковариация (X) = ( 1 / (n-1)) * XX`, где X` используется для обозначения транспонирования матрицы X

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

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

Ковариационная матрица также называется матрицей разброса, в зависимости от контекста.

Спектральное разложение

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

Эта факторизация позволяет проецировать исходные данные на нижнее k-пространство с использованием главных компонентов.

Разложение СВД

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

Используя линейную алгебру, можно показать, что компоненты PCA можно рассматривать как:

  • Собственные векторы ковариационной матрицы
  • правые сингулярные векторы SVD-факторизации матрицы данных, X = USV

и масштабированная дисперсия компонентов задается как S,, а также возведенные в квадрат масштабированные собственные значения ковариационной матрицы.

Факторизация SVD, как правило, выполняется быстрее, создает меньше численных проблем (потому что промежуточная ковариационная матрица не нужна, и почти коллинеарные переменные не вызывают для нее проблем).

На практике SVD используется при вычислении PCA для больших реалистичных наборов данных.