Чи зменшення розмірів завжди втрачає деяку інформацію?


10

Як говорить заголовок, чи зменшення розмірності завжди втрачає деяку інформацію? Розглянемо для прикладу PCA. Якщо дані, які я маю, дуже рідкісні, я б припустив, що «краще кодування» вдасться знайти (це якимось чином пов'язане з рангом даних?), І нічого не буде втрачено.


7
Ні, звичайно, ні: деякі особливості значення PCA можуть бути, наприклад, справжніми нулями. Це менш пов'язано з "рідкістю" даних, ніж з тим, чи "заповнюють" вони розміри, використовувані для їх запису.
whuber

1
Добре, я бачу. Чи можете ви написати свій коментар як коротку відповідь (можливо, навіть з невеликим прикладом, якщо у вас є час)?
цікаво

1
Розглянемо випадок, коли у вас є двовимірні дані, де значення y для кожної точки дорівнює '0'. Вашим першим основним компонентом буде вісь X, і ви нічого не втратите, спроектувавши свої дані в цей єдиний вимір, тому що це вже фактично один вимір.
Девід Маркс

Відповіді:


9

Зменшення розмірності не завжди втрачає інформацію. У деяких випадках можливе повторне представлення даних у просторах з меншими розмірами, не відкидаючи жодної інформації.

Припустимо, у вас є деякі дані, де кожне вимірюване значення пов'язане з двома упорядкованими коваріатами. Наприклад, припустимо, що ви вимірювали якість сигналу (позначений кольором білий = хороший, чорний = поганий) на щільній сітці з позицій x і y відносно деякого випромінювача. У такому випадку ваші дані можуть виглядати приблизно як лівий графік [* 1]:Qху

демонстрація радіального усереднення

Це, принаймні поверхово, двовимірний фрагмент даних: . Однак ми можемо знати апріорі (виходячи з основної фізики) або вважати, що це залежить лише від відстані від початку: r = Q(х,у) . (Деякий дослідницький аналіз також може привести вас до цього висновку, якщо навіть основне явище недостатньо зрозуміло). Потім ми могли б переписати наші дані якQ(r)замістьQ(x,y), що ефективно зменшило б розмірність до одного виміру. Очевидно, це лише без втрат, якщо дані радіально симетричні, але це розумне припущення для багатьох фізичних явищ.х2+у2Q(r)Q(х,у)

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

Для іншого прикладу, припустімо, ви проводите розклад особливого значення за деякими даними (SVD - близький родич - і найчастіше аналіз основних кишок аналізу основних компонентів). SVD приймає матрицю даних і розподіляє її на три матриці, такі що . Стовпці U і V є ліві і праві сингулярні вектори, відповідно, які утворюють безліч ортогональних базисів . Діагональні елементи (тобто S i , i ) є сингулярними значеннями, які фактично важать на i- й основі множини, утвореної відповідними стовпцями U і V (решта SM = U S V T M SММ=USVТМSSi,i)iUVSнулі). Це само по собі не дає зменшити розмірність (насправді, тепер є 3 матриці замість однієї матриці N x N, з якої ви почали). Однак іноді деякі діагональні елементи S дорівнюють нулю. Це означає, що відповідні бази в U і V не потрібні для реконструкції M , і тому вони можуть бути скинуті. Наприклад, припустимо Q ( x , y )NхNNхNSUVМQ(х,у)матриця, що міститься вище, містить 10000 елементів (тобто 100x100). Коли ми виконуємо на ньому SVD, ми виявляємо, що лише одна пара сингулярних векторів має ненульове значення [* 2], тому ми можемо повторно представити початкову матрицю як добуток двох векторів 100 елементів (200 коефіцієнтів, але ви насправді можете зробити трохи краще [* 3]).

Для деяких застосувань ми знаємо (або принаймні припускаємо), що корисна інформація збирається основними компонентами з високими сингулярними значеннями (SVD) або завантаженнями (PCA). У цих випадках ми можемо відкинути окремі вектори / бази / основні компоненти з меншими навантаженнями, навіть якщо вони не нульові, за теорією, що вони містять дратівливий шум, а не корисний сигнал. Іноді я бачив, як люди відкидають конкретні компоненти залежно від їх форми (наприклад, це нагадує відоме джерело шуму присадки) незалежно від завантаження. Я не впевнений, вважаєте ви це втратою інформації чи ні.

Є кілька акуратних результатів щодо інформаційно-теоретичної оптимальності PCA. Якщо ваш сигнал гауссовий і пошкоджений аддитивним гауссовим шумом, то PCA може максимізувати взаємну інформацію між сигналом та його зменшеною версією (якщо припустити, що шум має структуру коваріації, схожу на ідентичність).


Виноски:

  1. Це сирна і зовсім нефізична модель. Вибачте!
  2. Через неточність з плаваючою комою деякі з цих значень замість цього будуть не зовсім нульовими.
  3. US

Я(r)

r=(х2+у2)

1
Метт, моє запитання дійсно було таким: ви показуєте нам малюнок без будь-якого опису чи посилання і називаєте його "даними": я хотів би знати, в якому сенсі ви думаєте про це як про дані. Ваш коментар плутає це питання, оскільки представлення "теплової карти" зазвичай не є даними, а є чимось створеним із даних. Якщо, наприклад, це були нерегулярні дані 2D-точок, і ви прилаштовуєте до них радіально симетричну щільність, то , як ви стверджуєте, зображення можна було б розтлумачити як одновимірне, але це не було б зменшенням розмірності даних без втрат .
whuber

1
Можливо, я мав би сказати замість цього «сітка» або «растрова». Я уявляв ситуацію, коли дані збираються по сітці, і кожна точка сітки пов'язана з (скалярним) значенням, але значення необов'язково інтенсивності світла, як у (фотографічному) зображенні. Це сказало, я явно не гойдаю цю відповідь - дозвольте спробувати її відредагувати на щось більш цілісне!
Метт Крауз

2
+1: зміни можуть зробити ваші точки набагато зрозумілішими. Дякуємо за додаткові зусилля!
whuber

4

Я думаю, що питання, що стоїть за вашим запитанням, - "що робить інформацію?". Це гарне запитання.

Граматика:

Чи завжди PCA втрачає інформацію? Ні. Чи інколи втрачає інформацію? Youbetcha. Ви можете реконструювати вихідні дані з компонентів. Якщо вона завжди втрачала інформацію, то це було б неможливо.

Це корисно, оскільки часто не втрачає важливої ​​інформації, коли ви використовуєте її для зменшення розмірності ваших даних. Коли ви втрачаєте дані, часто це більш висока частота даних, а часто це менш важливо. Масштабні загальні тенденції відображаються в компонентах, пов'язаних з більшими власними значеннями.


4

н×p

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

Розглянемо цей тривимірний випадок, коли x3 - точна лінійна комбінація x1 та x2. Це не очевидно з очного яблука оригінальних даних, хоча зрозуміло, що x3 пов'язаний з обома іншими:

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

Але якщо ми подивимось на основні компоненти, третя - нуль (в межах числової помилки).

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

Сюжет перших двох основних компонентів такий же, як графік x1 проти x2, щойно повернутий (добре, не так очевидно, як я мав на увазі, спробую пояснити краще згодом) :

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

Ми зменшили розмірність на одну, але зберегли всю інформацію за будь-яким розумним визначенням.

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

R код:

library(GGally)


n <- 10^3
dat <- data.frame(x1=runif(n, 0, 3), x2=rnorm(n))
dat$x3 <- with(dat, x1 + x2)

ggpairs(dat)

pc <- princomp(dat)
plot(pc)

par(mfrow=c(1,2))
with(dat, plot(dat$x1, dat$x2, col="red", main="Original data", bty="l"))
with(pc, plot(scores[,1], scores[,2], col="blue", main="Scores from principal components(\n(rotated)", bty="l"))
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.