Аналіз функціональних основних компонентів (FPCA): про що це?


21

Аналіз функціональних основних компонентів (FPCA) - це те, про що я натрапив і ніколи не зрозумів. Про що це все?

Дивіться "Огляд функціонального аналізу основних компонентів" від Shang, 2011 , і я цитую:

PCA стикається з серйозними труднощами в аналізі функціональних даних через "прокляття розмірності" (Bellman 1961). "Прокляття розмірності" походить від розрідженості даних у просторовому просторі. Навіть якщо геометричні властивості PCA залишаються дійсними, і навіть якщо числові методи дають стабільні результати, матриця вибіркової коваріації іноді є поганою оцінкою коваріаційної матриці популяції. Щоб подолати цю складність, FPCA забезпечує набагато більш інформативний спосіб вивчення структури коваріації вибірки, ніж PCA [...]

Я просто не розумію. Який недолік описує цей документ? Чи не вважається, що PCA є найвищим методом вирішення таких ситуацій, як "прокляття розмірності"?

Відповіді:


7

Саме так, як ви заявляєте у запитанні та як зазначає @tdc у своїй відповіді, у випадку надзвичайно високих розмірів, навіть якщо геометричні властивості PCA залишаються дійсними, матриця коваріації вже не є хорошою оцінкою реальної коваріації населення.


Є дуже цікавий документ "Аналіз функціональних основних компонентів даних fMRI" ( pdf ), де вони використовують функціональну PCA для візуалізації дисперсії:

... Як і в інших дослідницьких методах, мета полягає в тому, щоб дати первинну оцінку, яка дасть даним шанс "говорити за себе" до вибору відповідної моделі. [...]

У роботі вони пояснюють, як саме вони це зробили, а також дають теоретичні міркування:

Вирішальна перевага цього підходу полягає у можливості уточнення набору припущень у виборі набору базових функцій та у функціональній помилці, мінімізованій припасом. Ці припущення будуть слабшими, ніж специфікація заздалегідь визначеної гемодинамічної функції та набір подій або умов, як у F-маскуванні, таким чином зберігаючи дослідницький характер процедури; однак припущення можуть залишатися досить суворими для подолання труднощів звичайної PCA.


Я намагаюся зрозуміти логіку FPCA; Я подивився на цитований вами папір, але все ще залишаюся розгубленим. Установка полягає в тому, що матриця даних має розмір з спостерігається часовим рядом довжиною . За допомогою PCA можна знайти перший довгий власний вектор матриці коваріації; твердження полягає в тому, що це буде дуже шумно. Рішення FPCA полягає в наближенні кожного часового ряду з базовими функціями ( ), а потім виконанням PCA у базовому просторі функцій. Правильно? Якщо так, то чим він відрізняється від згладжування кожного часового ряду та виконання стандартного PCA? Чому особлива назва? n×tntntkkt
Амеба каже: Відновити Моніку

Прочитавши трохи більше про це, я вирішив опублікувати власну відповідь. Можливо, вам буде цікаво. Я обов'язково буду вдячний за будь-які додаткові відомості.
Амеба каже: Відновити Моніку

24

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

FPCA відноситься до ситуацій, коли кожне з спостережень є часовим рядом (тобто "функцією"), що спостерігається в часових точках, так що вся матриця даних має розмір. Зазвичай , наприклад, може бути вибіркових часових рядів у часових точках. Суть аналізу полягає у пошуку декількох "власних часових рядів" (також довжини ), тобто власних векторів коваріаційної матриці, які б описували "типову" форму спостережуваного часового ряду.ntn×ttn201000t

Тут напевно можна застосувати стандартний PCA. Мабуть, у вашій цитаті автор стурбований тим, що результуючі серії власного часу будуть занадто галасливими. Це може статися справді! Два очевидних способи впоратися з цим було б (a) згладити отриманий часовий ряд після PCA, або (b) згладити початковий часовий ряд, перш ніж робити PCA.

Менш очевидним, більш вигадливим, але майже еквівалентним підходом є наближення кожного вихідного часового ряду до базових функцій, ефективно зменшуючи розмірність від до . Тоді можна виконати PCA і отримати власний часовий ряд, апроксимаційний тими ж базовими функціями. Це те, що зазвичай можна побачити в навчальних посібниках FPCA. Як правило, можна використовувати функції гладкої основи (компоненти Гаусса або Фур'є), тому, наскільки я бачу, це по суті еквівалентно простому варіанту (б), відмерлому від мозку.ktk

Навчальні посібники з FPCA зазвичай вступають у тривалі дискусії про те, як узагальнити PCA до функціональних просторів нескінченної розмірності, але практична актуальність цього зовсім поза мною , оскільки на практиці функціональні дані завжди починають дискретно починати.

Ось ілюстрація взята з Ramsay і Silverman «Функціональний аналіз даних» підручник, який , як видається, в остаточну монографії «функціональний аналіз даних» , включаючи FPCA:

Рамсей і Сільверман, FPCA

Можна побачити, що виконання PCA на "дискретних даних" (балів) дає практично те саме, що і FPCA на відповідних функціях у основі Фур'є (рядки). Звичайно, можна спочатку зробити дискретний PCA, а потім вписати функцію в ту ж основу Фур'є; це дало б більш-менш однаковий результат.

PS. У цьому прикладі що є невеликим числом з . Можливо, те, що в цьому випадку автори розглядають як "функціональну PCA", повинно призвести до "функції", тобто "плавної кривої", на відміну від 12 окремих точок. Але до цього можна тривіально підійти за допомогою інтерполяції, а потім згладжування отриманого власного часового ряду. Знову ж таки, здається, що "функціональна PCA" - це не окрема річ, це лише додаток PCA. t=12n>t


2
У випадку рідко нерегулярних вибіркових траєкторій (наприклад, поздовжніх даних) FPCA бере участь значно більше, ніж " інтерполяція та згладжування отриманих тимчасових рядів ". Наприклад, навіть якщо людина якось отримує деякі власні компоненти, що обчислюють прогнозовані бали розріджених даних, не є чітко визначеними; див., наприклад: Яо та ін. JASA 2005. Призначений для густо регулярних процесів вибірки FPCA - це ефективно PCA з певними штрафними санкціями.
usεr11852 повідомляє Відновити Монік

Дякуємо, @ usεr11852 (+1). Мені потрібно знайти час, щоб заглянути його ще раз. Я спробую підібрати папір, на який ви посилаєтесь, і повернутися до цієї відповіді.
амеба каже: Відновити Моніку

@amoeba, все це звучить майже пов'язано з дискретною трансформацією фур'є, де ви відновлюєте компонентні хвилі складного хвилі / часового ряду?
Рассел Річі

9

Я кілька років працював з Джимом Рамсей над FDA, тому, можливо, можу додати кілька роз'яснень до відповіді @ amoeba. Я думаю, що на практичному рівні @amoeba в основному має рацію. Принаймні, такого висновку я нарешті дійшов після вивчення FDA. Однак рамки FDA дають цікаве теоретичне розуміння того, чому згладжування власних векторів - це більше, ніж просто хитрощі. Виявляється, оптимізація у функціональному просторі, за умови внутрішнього продукту, який містить покарання гладкості, дає кінцеве розмірне рішення базових сплайнів. FDA використовує нескінченний розмірний функціональний простір, але для аналізу не потрібно нескінченна кількість вимірів. Це як хитрість ядра в Гауссових процесах або у SVM. Насправді це дуже схоже на хитрість ядра.

Оригінальний твір Рамзая стосувався ситуацій, коли головна історія в даних очевидна: функції більш-менш лінійні, або більш-менш періодичні. Домінуючі власні вектори стандартної PCA просто відображають загальний рівень функцій та лінійну тенденцію (або синусоїди), в основному повідомляючи нам те, що ми вже знаємо. Цікаві особливості полягають у залишках, які зараз є декількома власними векторами вгорі списку. І оскільки кожен наступний власний вектор повинен бути ортогональним попереднім, ці конструкції все більше залежать від артефактів аналізу і менше від відповідних особливостей даних. При факторному аналізі косо обертання факторів має на меті вирішити цю проблему. Ідея Рамсі полягала не в тому, щоб обертати компоненти, а скоріше змінити визначення ортогональності таким чином, щоб краще відобразити потреби аналізу. Це означало, що якби ви переймалися періодичними компонентами, ви б згладжували на основіD3D, which eliminates sines and consines. If you wanted to remove a linear trend, you would smooth on the basis of D2 which gives standard cubic splines.

One might object that it would be simpler to remove the trend with OLS and examine the residuals of that operation. I was never convinced that the value add of FDA was worth the enormous complexity of the method. But from a theoretical standpoint, it is worth considering the issues involved. Everything we do to the data messes things up. The residuals of OLS are correlated, even when the original data were independent. Smoothing a time series introduces autocorrelations that were not in the raw series. The idea of FDA was to ensure that the residuals we got from initial detrending were suited to the analysis of interest.

You have to remember that FDA originated in the early 80's when spline functions were under active study - think of Grace Wahba and her team. Many approaches to multivariate data have emerged since then - like SEM, growth curve analysis, Gaussian processes, further developments in stochastic process theory, and many more. I'm not sure that FDA remains the best approach to the questions it addresses. On the other hand, when I see applications of what purports to be FDA, I often wonder if the authors really understand what FDA was trying to do.


+1. Oops, I have noticed your answer only now, and only by chance (somebody else left a comment under my answer here and I scrolled down). Thanks a lot for contributing! I think I need to find time to do a bit more reading on this and to think about what you said about the similarity to the kernel trick. It does sound reasonable.
amoeba says Reinstate Monica

5

I'm not sure about FPCA, but one thing to remember, is that in extremely high dimensions, there is a lot more "space", and points within the space start to look uniformly distributed (i.e. everything is far from everything else). At this point the covariance matrix will start to look essentially uniform, and will be very highly sensitive to noise. It therefore becomes a bad estimate of the "true" covariance. Perhaps FPCA gets round this somehow, but I'm not sure.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.