Анализ главных компонентов Энциклопедия алгоритмов PCA

алгоритм

Анализ главных компонентов позволяет использовать низкоразмерные данные для представления наиболее важных особенностей многомерных сложных данных. Идея PCA состоит в том, чтобыnnкарты пространственных признаков вkkмногомерное пространствоk<nk<n,ЭтотkkРазмерный объект — это совершенно новый ортогональный объект, построенный заново.kkразмерные характеристики, а не простоnnУдалить остальное из размерных признаковnkn-kразмерные особенности. На основе исходного PCA, по характеристикам данных, исследователи предлагают различные варианты PCA, но основная идея одна и та же. Например, PCA ядра для нелинейных данных, CCIPCA для данных последовательности, 2DPCA, 2D2DPCA и BDPCA для данных двумерного изображения и т. д. Далее сначала подробно представлена ​​идея PCA, а затем кратко представлены другие версии алгоритма PCA.

1. Принцип ППШ

(Этот раздел относится кВнедрение алгоритма анализа главных компонентов (PCA) с нуля) PCA можно определить как ортогональную проекцию данных на низкоразмерное линейное пространство, называемое основным подпространством, так что дисперсия проецируемых данных максимальна (Hotelling, 1933), теория максимальной дисперсии. Эквивалентно, ее также можно определить как линейную проекцию, минимизирующую среднюю стоимость проекции, т. е. теорию минимальной ошибки. Средняя стоимость проекций — это средний квадрат расстояния между точками данных и их проекциями (Пирсон, 1901).

1.1 Теория максимальной дисперсии

При обработке сигналов считается, что сигнал имеет большую дисперсию, а шум — малую.Отношение сигнал/шум — это отношение дисперсии между сигналом и шумом.Чем больше, тем лучше. Из-за того, что мы думаем, лучшийkkразмерные характеристикиnnРазмерные точки выборки преобразуются вkkТогда выборочная дисперсия в каждом измерении будет максимально большой.

Сначала рассмотрим одномерное пространство(k=1)(k=1)проекция на. мы можем использоватьnnразмерный векторuuОпределяет направление этого пространства. Для удобства и без ограничения общности будем считать, что единичный вектор выбран таким, чтоuTu=1u^T u=1.在这里插入图片描述

(Предполагая, что данные имеют нулевое среднее значение) Как показано на рисунке выше, красная точка представляет исходную точку выборки.x(i)x^{(i)},uuНаклон синей линии также является вектором направления линии и единичным вектором.Синяя точка на линии представляет исходную точку выборки.x(i)x^{(i)}существуетuuпроекция на. Легко узнать, что расстояние точки проекции от начала координат равноx(i)Tux^{(i)T} u, поскольку среднее значение каждого измерения этих исходных точек выборки равно 0, оно проецируется наuuСреднее значение точек выборки по-прежнему равно 0.

Предположим, исходный набор данныхXm×nX_{m\times n}, наша цель — найти оптимальное проекционное пространствоWn×k=(w1,w2,...,wk)W_{n\times k}=(w_1, w_2, ..., w_k)wiw_iявляется единичным вектором иwiw_iявляется единичным вектором иwiw_iиwj(ij)w_j(i\neq j)Ортогональный, что лучшеWW? является проекцией исходной точки выборки наWWПосле вышеизложенного дисперсия прогнозируемых точек выборки максимальна.

Поскольку среднее значение после проекции равно 0, общая дисперсия после проекции равна:1mi=1m(x(i)Tw)2=1mi=1mwTx(i)x(i)Tw=i=1mwT(1mx(i)x(i)T)w\frac{1}{m}\sum_{i=1}^m (x^{(i)T}w)^2=\frac{1}{m}\sum_{i=1}^m w^Tx^{(i)} x^{(i)T}w=\sum_{i=1}^m w^T(\frac{1}{m}x^{(i)}x^{(i)T})w

в1mx(i)x(i)T\frac{1}{m}x^{(i)}x^{(i)T}исходный набор данныхXXковариационная матрица (посколькуx(i)x^{(i)}имеет среднее значение 0, из-за несмещенной оценки общая ковариационная матрица делится наm1m-1, то есть в м).

Помнитеλ=1mi=1m(x(i)Tw)2,Σ=1mx(i)x(i)T\lambda=\frac{1}{m}\sum_{i=1}^m (x^{(i)T}w)^2,\Sigma=\frac{1}{m}x^{(i)}x^{(i)T}, то естьλ=wTΣw\lambda=w^T\Sigma w

Умножьте обе части вышеприведенного уравнения влевоww, отмечаяwwT=1ww^T=1(единичный вектор), затемλw=Σw\lambda w=\Sigma wтакwwэто матрицаΣ\SigmaСобственные векторы, соответствующие собственным значениям .

Чтобы максимизировать общую дисперсию после прогнозирования, то естьλ\lambdaсамый большой и, следовательно, лучший вектор проекцииwwявляется собственным значениемλ\lambdaСобственный вектор, соответствующий наибольшему, поэтому, когда мы устанавливаемwwКогда он установлен равным вектору с наибольшим собственным значением, дисперсия достигает своего максимального значения. Этот вектор признаков называется первым главным компонентом.

Мы можем определить дополнительные основные компоненты поэтапным образом, выбирая новое направление как тот, который максимизирует прогнозную дисперсию между всеми возможными направлениями, которые являются ортогональными тем, которые уже рассматриваются. если мы рассмотримkkОбщий случай размерного проекционного пространства, тогда оптимальная линейная проекция, которая максимизирует дисперсию проецируемых данных, задается матрицей ковариации данныхΣ\Sigmaизkkсобственные векторыw1,...,wkw_1, ..., w_kопределение, соответствующееkkнаибольшее собственное значениеλ1,...,λk\lambda_1,...,\lambda_k. Это легко доказать по индукции.

Следовательно, нам нужно только выполнить разложение по собственным значениям ковариационной матрицы, чтобы получить предварительную оценку.kkСобственный вектор, соответствующий большому собственному значению, является лучшимkkОсобенности реставрации, и этоkkФункции обновления являются ортогональными. прежде чем получитьkkКусокuuПозже исходный набор данныхXXНовые образцы можно получить путем трансформации.在这里插入图片描述

1.2 Теория наименьших квадратов ошибок

在这里插入图片描述Как показано на рисунке выше, предполагая такую ​​двумерную точку выборки (красная точка), в соответствии с теорией максимальной дисперсии, которую мы объяснили ранее, наша цель состоит в том, чтобы найти прямую линию, чтобы дисперсия точки, спроецированная из выборки указать на прямую или плоскость является самым большим. Суть в том, чтобы найти прямую или плоскость, поэтому мерой того, хороша ли прямая, является не только метод максимизации дисперсии. Вспоминая линейную регрессию, которую мы впервые изучили, цель состоит в том, чтобы найти линейную функцию, чтобы прямая линия лучше всего соответствовала точкам выборки, поэтому можем ли мы считать, что лучшая прямая линия — это прямая линия после регрессии? Во время регрессии наш метод наименьших квадратов измеряет расстояние между точками выборки и осью линии. Например, в этой задаче функцияxx, метка классаyy. Метод наименьших квадратов измеряет расстояние во время регрессииdd. Если метод регрессии используется для измерения наилучшей прямой линии, то регрессия выполняется непосредственно на исходной выборке, которая не имеет ничего общего с выбором признаков.

Поэтому мы намерены использовать другой метод оценки качества линии, используя расстояние от точки до линииd'из'измерять.

Естьmmточки выборкиx(1),...,x(m)x^{(1)},...,x^{(m)}, каждая точка выборкиnnизмерение. точка выборкиx(i)x^{(i)}Проекция на прямую записывается какx(1)''x^{(1)''}, то мы хотим минимизироватьi=1m(x(i)'x(i))2\sum_{i=1}^m (x^{(i)'}-x^{(i)})^2

Эта формула называется наименьшей квадратичной ошибкой.

Сначала мы определяем точку, через которую проходит линия, предполагая, что мы хотим найти точку в пространствеx0x_0представлять этоmmТочка выборки, слово «представитель» не определяется количественно, поэтому, если мы хотим провести количественную оценку, нам просто нужно найтиnnточка измеренияx0x_0, так чтоJ0(x0)=i=1m(x(i)'x(i))2J_0(x_0)=\sum_{i=1}^m (x^{(i)'}-x^{(i)})^2минимум. вJ0(x0)J_0(x_0)функция оценки квадрата ошибки. Предположениеx\overline{x}заmmСреднее значение выборочных точек, т. е.x=1mi=1mx(i)\overline{x}=\frac{1}{m}\sum_{i=1}^m x^{(i)}ноJ0(x0)=i=1m(x0x(i))2=i=1m((x0x)(x(i)x))2=i=1m(x0x)22i=1m(x0x)T(x(i)x)+i=1m(x(i)x)2=i=1m(x0x)22(x0x)Ti=1m(x(i)x)+i=1m(x(i)x)2=i=1m(x0x)2+i=1m(x(i)x)2J_0(x_0)=\sum_{i=1}^m(x_0-x^{(i)})^2\\=\sum_{i=1}^m((x_0-\overline{x})-(x^{(i)}-\overline{x}))^2\\=\sum_{i=1}^m(x_0-\overline{x})^2-2\sum_{i=1}^m(x_0-\overline{x})^T(x^{(i)}-\overline{x})+\sum_{i=1}^m(x^{(i)}-\overline{x})^2\\=\sum_{i=1}^m(x_0-\overline{x})^2-2(x_0-\overline{x})^T\sum_{i=1}^m(x^{(i)}-\overline{x})+\sum_{i=1}^m(x^{(i)}-\overline{x})^2\\=-\sum_{i=1}^m(x_0-\overline{x})^2+\sum_{i=1}^m(x^{(i)}-\overline{x})^2

Очевидно, что второй член приведенного выше уравнения совпадает сx0x_0неактуально, следовательно,J0(x0)J_0(x_0)существуетx\overline{x}имеет минимальное значение.

Далее определяем вектор направления линии. Мы уже знаем, что прямая проходит через точкуx\overline{x}, предполагая, что направление линии является единичным векторомe\overrightarrow{e}. Тогда любая точка на прямойx(i)'x^{(i)'}имеют:x(i)'=x+aiex^{(i)'}=\overline{x}+a_i \overrightarrow{e},в,aia_iдаx(i)'x_{(i)'}к точкеx\overline{x}расстояние.

Мы переопределяем ошибку наименьшего квадрата:在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

В этот момент точки сгруппированы вокруг новой оси, потому что для этого мы используем метод наименьших квадратов. Кроме того, в книге PRML есть подробная разработка с точки зрения линейного подпространства, и заинтересованные читатели могут ознакомиться с ней.

преимущество:

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

Технология PCA может использоваться для уменьшения размерности данных, и в то же время можно отсортировать важность вновь полученного «осевого» вектора, а наиболее важную часть на переднем плане можно взять в соответствии с потребностями, и последнее измерение может быть опущено, что может привести к уменьшению размерности и, таким образом, упростить модель или эффект сжатия данных. При этом информация исходных данных сохраняется в наибольшей степени.

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

Метод расчета прост и легко реализуем на компьютере.

недостаток:

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

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

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

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

1.3 Разложение по собственным значениям при многомерных данных

В реальной жизни из-за высокоразмерных характеристик выборки (каждый пиксель распознавания изображения является размерностью) это приведет к ковариационной матрицеΣ\SigmaЭто очень большой, и компьютер трудно хранить и вычислять Как сделать разложение по собственным значениям для многомерных данных? мы знаемΣ=XXT\Sigma=XX^T, рассмотрим матрицу подстановкиP=XTXP=X^T X, если выборок 100, размерностей 10000, тоΣ\Sigmaпредставляет собой 10000-мерную квадратную матрицу, иPPПросто 100-мерная квадратная матрица. Делаем следующий вывод:Pv=λvXTXv=λvXXTXv=XλvΣ(Xv)=λ(Xv)Pv=\lambda v\\X^TXv=\lambda v\\XX^TXv=X\lambda v\\\Sigma(Xv)=\lambda(Xv)поэтому, спросивPPСобственные значения и собственные векторы , чьи собственные значения равныΣ\SigmaСобственные значения , собственные векторы которых умножаются на случайный векторXXэтоΣ\Sigma, чтобы завершить разложение по собственным значениям многомерных данных (можно получить только некоторые из первых нескольких главных компонент).

Проверять:ATAA^TAиAATAA^Tсобственные значения равны? Дополнение: В общем,ABABиBABAСобственные значения00Количество собственных значений.

Если существует обратимая матрицаPPсделать,P1AP=BP^{-1}AP=B, то матрицаAAс матрицейBBсходство. Если две матрицы подобны, то они имеют одинаковый ранг, один и тот же определитель, одинаковую трассу (сумму всех собственных значений или сумму элементов главной диагонали), и обе имеют одинаковые собственные значения (может быть, еще несколько нулей) собственные значения).在这里插入图片描述

在这里插入图片描述

2. Алгоритм инкрементного анализа главных компонентов CCIPCA [1]

Откровенный инкрементальный анализ основных компонентов без ковариаций Прямой бесковариационный инкрементный анализ основных компонентов.

Предположим, что последовательность входных векторовu'(t),t=1,2,...u'(t),t=1,2,...;nnСреднее значение входного изображения равноm(n)=1nt=1nu'(t)m(n)=\frac{1}{n}\sum_{t=1}^n u'(t), его ковариационная матрицаA(n)=\frac{1}{n}\sum_{t=1}^n[u'(t)-m(n)][u'(t)-m(n)]^T=\frac{1}{n}\sum_{i=1}^n u(t)u(t)^T \tag{1}здесьu(t)=u'(t)m(n)u(t)=u'(t)-m(n)

u(n)u(n)ПервыйiiФормулы для вычисления собственных значений и собственных значений и собственных векторов:λixi(n)=A(n)xi(n)\lambda_ix_i(n)=A(n)x_i(n)xi(n)x_i(n)во-первыхnnНомер, который нужно запрашивать при входеiiвектор признаков,λi\lambda_iявляется соответствующим собственным значением . Чтобы ускорить итерацию алгоритма CCIPCA, вся итерация представляет собой произведение собственного значения и собственного вектораλixi\lambda_ix_iвыполнено, пустьnnпри вводеv_i(n)=\lambda_ix_i(n)=A(n)x_i(n) \tag{2}Подставим (1) в (2), получимv_i(n)=\frac{1}{n}\sum_{t=1}^n u(t)u(t)^T x_i(n)\tag{3}Если произведение собственного значения и собственного вектора получено путем итерацииviv_i, поскольку собственные векторы нормализованы, поскольку формула (2) является модулем (внутренний продукт, открытый корень), она может быть полученаλi=vi,xi=vivi\lambda_i=||v_i||,x_i=\frac{v_i}{||v_i||}. Итерация принимает формулу (3), положимvi(n1)vi(n1)\frac{v_i(n-1)}{||v_i(n-1)||}примерноxi(n)x_i(n)Подставив в (3), основную итеративную формулу CCIPCA можно получить преобразованием,v_i(n)=\frac{n-1}{n}v_i(n-1)+\frac{1}{n}u(n)u(n)^T\frac{v_i(n-1)}{||v_i(n-1)||} \tag{4}

вn1n\frac{n-1}{n}значение итерации предыдущего шагаvi(n1)v_i(n-1)Вес второго предмета1n\frac{1}{n}Эквивалентно размеру шага корректировки итерации.u(n)u(n)как первыйnnитеративный вектор новых пар входных данныхvi(n)v_i(n)корректировка, в итерацияхvi(n)v_i(n)постепенно приближаться к желаемомуiiвектор признаков. Уравнение (4) можно использовать для итерации собственных векторов с разными порядковыми номерами, только входной векторu(n)u(n)разные. При нахождении собственного вектора, соответствующего наибольшему собственному значению,u(n)u(n)Непосредственно собирают для глаз роботовnnданные. При поиске собственных векторов 2-й, 3-й и даже более высокой размерности требуется следующая обработка: первый собственный вектор получен путем итерации.u1(n)=u(n)u_1(n)=u(n), и положиu1(n)u_1(n)Спроецируйте на предыдущий собственный вектор, который был получен (теперь первый собственный вектор), и получите остаточное изображениеu2(n)u_2(n), выраженный следующим образом,u2(n)=u1(n)u1T(n)v1(n)v1(n)v1(n)v1(n)u_2(n)=u_1(n)-u_1^T(n)\frac{v_1(n)}{||v_1(n)||}\frac{v_1(n)}{||v_1(n)||} u2(n)u_2(n)В качестве исходных данных для нахождения второго собственного вектора аналогичным образом могут быть получены 3-й, 4-й, .... собственные векторы. Поскольку остаточное изображение и изображение, восстановленное предыдущим собственным вектором, ортогональны, можно получить все взаимно ортогональные собственные векторы. Кроме того, каждый раз, когда вводится новый фрагмент данных, среднее значение также должно обновляться.Для формулы (1) введите первоеnnСреднее значение изображений следующее:m(n)=n1nm(n1)+1nu'(n)m(n)=\frac{n-1}{n}m(n-1)+\frac{1}{n}u'(n) 在这里插入图片描述

3. KPCA

Супер всеобъемлющий блог о KPCA

  • оригинальный ППШ

XXTwi=λiwiXX^T w_i=\lambda_i w_i

  • использовать функциюΦ\Phiпреобразовать данныеXXкарта в многомерное пространствоΦ(X)\Phi(X)

Φ(X)Φ(X)Twi=λiwi\Phi(X)\Phi(X)^T w_i=\lambda_i w_i

  • сделатьwi=k=1NαiΦ(xi)=Φ(X)αw_i = \sum_{k=1}^N \alpha_i\Phi(x_i) = \Phi(X)\alphaпридется

Φ(X)Φ(X)TΦ(X)α=λiΦ(X)α\Phi(X)\Phi(X)^T \Phi(X) \alpha=\lambda_i \Phi(X)\alpha

  • Умножьте обе части влевоΦ(X)T\Phi(X)^Tпридется

Φ(X)TΦ(X)Φ(X)TΦ(X)α=λiΦ(X)TΦ(X)α\Phi(X)^T\Phi(X)\Phi(X)^T \Phi(X) \alpha=\lambda_i \Phi(X)^T \Phi(X)\alpha

  • Из свойств функции ядра мы можем получитьK=Φ(X)TΦ(X)K=\Phi(X)^T \Phi(X)

KKα=λiKαKα=λiαKK \alpha=\lambda_i K\alpha \\ \Rightarrow K\alpha=\lambda_i \alpha

Обратите внимание, что вектор признаковwiw_iдолжно быть дальшеΦ(X)α\Phi(X)\alphaРассчитано. но,Φ(X)\Phi(X)Это невозможно вычислить, поэтому нет возможности получить собственные векторы.

Здесь мы анализируем, можно ли его использовать напрямуюα\alphaЧтобы уменьшить размерность данных, ответ положительный.

Если приходят новые данныеxx, необходимо использовать приведенные выше результаты для получения данных уменьшения размерностиx^\hat{x}:

x^=wiTx=(Φ(x)α)TΦ(x)=αTΦ(X)TΦ(x)=[α1,...,αN][k(x1,x),...,k(xN,x)]T\hat{x}=w_i^T x\\=(\Phi(x)\alpha)^T \Phi(x)\\=\alpha^T \Phi(X)^T\Phi(x)\\=[\alpha_1,...,\alpha_N][k(x_1,x),..., k(x_N, x)]^T

在这里插入图片描述

Разница между PCA и KPCA

  • PCA по-прежнему является хорошим методом анализа.Когда данные имеют нелинейное многообразное распределение или индикаторы имеют нелинейную зависимость, эффект может быть не особенно хорошим для метода линейного анализа, но следует отметить, что он также не является Линейный метод анализа.В фактических экономических показателях существует линейная корреляция (информационная избыточность), что соответствует статистическим законам, а полностью нерелевантные экономические данные встречаются крайне редко.Он имеет преимущества простого расчета PCA, отсутствия предварительных знаний и без настройки параметров.
  • PCA не совсем то же самое, что KPCA с линейным ядром, для N выборок данных с P индикаторами. Ковариационная матрица, рассчитанная с помощью PCA, представляет собой матрицу размерности PXP. Количество основных компонентов, которые она может извлечь, равно P, а KPCA вычисляется из матрицы ядра. Максимальный главный компонент, который может быть извлечен, равен N. Чтобы удовлетворить выборку среднее значение в пространстве признаков равно нулю, а также требуется специальная обработка матрицы ядра K, что также является причиной несогласованности со скалярным произведением линейного ядра и исходной выборки.
  • Функцию ядра KPCA и параметры ядра выбрать сложно. Собственный вектор ковариационной матрицы PCA соответствует пропорции главных компонентов каждого индекса, так что главные компоненты могут быть объяснены исходным облаком индексов, в то время как собственный вектор KPCA основан на собственном векторе матрицы ядра, которая не имеет соответствующей связи с исходным индексом, поэтому главный компонент ядра объясняет. Во-вторых, после того, как KPCA проецирует индикаторы в многомерное пространство признаков, и фактические данные обрабатываются в исходном пространстве, стоит дополнительно изучить, являются ли его значения имеют смысл сортировки в исходном пространстве.

4. 2DPCA[2]

ПредполагатьAi,i=1,2,...,NA_i, i=1,2,...,NдаNNОбразец изображений,AiеRm×nA_i\in R^{m\times n}. Сначала вычислите ковариационную матрицу, которая является общей матрицей рассеяния.GtG_t Gt=1Ni=1N(AiA^)T(AiA^)G_t=\frac{1}{N}\sum_{i=1}^N(A_i-\hat{A})^T(A_i-\hat{A})вA^=1Ni=1NAi\hat{A}=\frac{1}{N}\sum_{i=1}^N A_iявляется средним значением всей выборки.

рассчитатьGtG_tСобственные значения и собственные векторы берут кумулятивную ставку вклада собственных значенийα=0.9 0.99\alpha=0.9~0.99Соответствующие собственные векторы образуют матрицу проекцииU=[u1,u2,...,uk]еRn×kU=[u_1, u_2, ..., u_k]\in R^{n\times k}. но,Fi=AiUеRm×kF_i=A_iU\in R^{m\times k}этоAjA_jХарактеристики. Можно знать, что оригинальный двумерный размер изображенияm×nm\times n, который сейчас сводится кm×km\times k,kkоснован наα\alphaбыть уверенным. То есть после выполнения извлечения признака сжимается только количество битов вектора-столбца матрицы изображения, а количество битов вектора-строки остается неизменным.

5. 2D2DPCA

Так же, как 2DPCA, который уменьшает измерение только в направлении столбца, эффект уменьшения размера не идеален. Для лучшего уменьшения размерности D.Q.Zhang и Z.H.Zhou предложили метод двунаправленного двумерного анализа главных компонентов (2D2DPCA), то есть обработка 2DPCA выполняется как в направлениях строк, так и в столбцах.

После обработки всех обучающих выборок вышеуказанным 2DPCA получаются новые обучающие выборки.Fi,i=1,2,...,NF_i, i=1,2,...,NYiеRm×kY_i\in R^{m\times k}. Построить ковариационную матрицу на новых образцахGt*G_t^* Gt*=1Ni=1N(FiF^)(FiF^)TG_t^*=\frac{1}{N}\sum_{i=1}^N (F_i-\hat{F})(F_i-\hat{F})^T

Аналогично, спроситеGt*G_t^*Собственные значения и собственные векторы принимают совокупный вклад собственных значений какα\alphaСобственные векторы , получить матрицу проекции в направлении строкиV=[v1,v2,...,vd]еRm×dV=[v_1,v_2,...,v_d] \in R^{m\times d}.FiF_iПроекцияVTFiеRd×kV^TF_i\in R^{d\times k}.

До сих пор оптимальная матрица проекции двух направлений проекцииUUиVVполучаются, для изображенияAiеRm×nA_i\in R^{m\times n}Окончательная матрица уменьшения размера:Yi=VTAiUеRd×kY_i=V^TA_iU\in R^{d\times k}, восстановленное изображениеAiapprox=VYiUTA_i^{approx}=VY_iU^T

6. BDPCA

BDPCA выполняет уменьшение размерности данных в направлениях строк и столбцов соответственно. Преобразуйте матрицу образца изображенияXi'X_{i}^{\prime}разбить наppКусок1×q1\times qВектор-строка , тогда общая матрица расхождения в направлении строки:

Sr=1npi=1n[Xi'X(n)]T[Xi'X(n)]S_{r}=\frac{1}{n p} \sum_{i=1}^{n}\left[X_{i}^{\prime}-\overline{X}(n)\right]^{\mathrm{T}}\left[X_{i}^{\prime}-\overline{X}(n)\right]

в,X(n)\overline{X}(n)является средним значением матрицы образца изображения. прежде чем приниматьkrk_rСобственные векторы, соответствующие наибольшим собственным значениям, образуют матрицу проекции направления строки как

Wr=[wr1,wr2,,wrkr]\boldsymbol{W}_{r}=\left[w_{r 1}, w_{r 2}, \cdots, w_{r k_{r}}\right]

Точно так же общая матрица расхождения в направлении столбца и фронтаkck_cСобственные векторы, соответствующие наибольшим собственным значениям, образуют матрицу проекции направления столбца соответственно:

Sc=1nqi=1n[Xi'X(n)][Xi'X(n)]TS_{c}=\frac{1}{n q} \sum_{i=1}^{n}\left[X_{i}^{\prime}-\overline{X}(n)\right]\left[X_{i}^{\prime}-\overline{X}(n)\right]^{\mathrm{T}}
Wc=[wc1,wc2,,wckc]\boldsymbol{W}_{c}=\left[w_{c 1}, w_{c 2}, \cdots, w_{c k_{c}}\right]

Матрица образца изображенияXi'X_{i}^{\prime}Соответствующая матрица признаков

Y=WcTXi'WcY=W_{c}^{\mathrm{T}} X_{i}^{\prime} W_{c}

Размер матрицы признаков BDPCA составляет всегоkc×krk_c\times k_r, поэтому объем вычислений намного меньше, чем у CCIPCA. Но BDPCA — это двумерное пакетное вычисление.

использованная литература

[1] Juyang Weng, Yilu Zhang и Wey-Shiuan Hwang, «Откровенный инкрементальный анализ главных компонентов без ковариаций», IEEE Transactions on Pattern Analysis and Machine Intelligence, т. 25, № 8, стр. 1034–1040, август 2003 г. [2] Jian Y, David Z, Frangi AF и др. Двумерный PCA: новый подход к представлению и распознаванию лиц на основе внешнего вида [J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2004, 26(1). ): 131-137.