БіоСтатистика — 13. Тема 9. Метод головних компонент
Метод головних компонент — чудовий спосіб зниження розмірності багатовимірних масивів даних. Він дозволяє вирішувати безліч завдань, типових для роботи зоолога та еколога
←
D. Shabanov, M. Kravchenko. Статистичний аналіз даних у зоології та екології
→
Тема 8. Кластерний аналіз
Тема 9. Метод головних компонент
Тема 10. Дискримінантний аналіз
Біостатистика‑12
Біостатистика‑13
Біостатистика‑14
9.1. Сутність методу (на двовимірному прикладі)
Метод головних компонент або компонентний аналіз (principal component analysis, PCA) — один із найважливіших методів у арсеналі зоолога чи еколога. На жаль, у випадках, коли цілком доцільне застосування компонентного аналізу, сплош і поряд застосовують кластерний аналіз.
Типове завдання, для якого корисний компонентний аналіз, таке: існує певна множина об’єктів, кожен з яких охарактеризований за певною (достатньо великою) кількістю ознак. Дослідника цікавлять закономірності, відображені у різноманітності цих об’єктів. У випадку, коли є підстави припускати, що об’єкти розподілені за ієрархічно підпорядкованими групами, можна використати кластерний аналіз — метод класифікації (розподілу за групами). Якщо немає підстав очікувати, що у різноманітності об’єктів відображена якась ієрархія, логічно використати ординацію (упорядковане розташування). Якщо кожен об’єкт охарактеризований за достатньо великою кількістю ознак (принаймні — такою кількістю ознак, яку не вдається адекватно відобразити на одному графіку), оптимально починати дослідження даних з аналізу головних компонент. Справа в тому, що цей метод одночасно є методом зниження розмірності (кількості вимірювань) даних.
Якщо група розглянутих об’єктів охарактеризована значеннями однієї ознаки, для характеристики їх різноманітності можна використати гістограму (для неперервних ознак) або стовпчикову діаграму (для характеристики частот дискретної ознаки). Якщо об’єкти охарактеризовані двома ознаками, можна використати двовимірний графік розсіяння, якщо трьома — тривимірний. А якщо ознак багато? Можна спробувати на двовимірному графіку відобразити взаємне розташування об’єктів один щодо одного у багатовимірному просторі. Зазвичай таке зниження розмірності пов’язане з втратою інформації. З різних можливих способів такого відображення треба вибрати той, при якому втрата інформації буде мінімальною.
Пояснимо сказане на найпростішому прикладі: переході від двовимірного простору до одновимірного. Мінімальна кількість точок, яка задає двовимірний простір (площину) — 3. На рис. 9.1.1 показано розташування трьох точок на площині. Координати цих точок легко читаються з самого рисунка. Як вибрати пряму, яка буде нести максимальну інформацію про взаєморозташування точок?
Рис. 9.1.1. Три точки на площині, заданій двома ознаками. На яку пряму буде проєктуватись максимальна дисперсія цих точок?
Розглянемо проекції точок на пряму A (показану синім кольором). Координати проекцій цих точок на пряму A такі: 2, 8, 10. Середнє значення — 62/3. Дисперсія (2‑62/3)+(8‑62/3)+(10‑62/3)=342/3.
Тепер розглянемо пряму B (показану зеленим кольором). Координати точок — 2, 3, 7; середнє значення — 4, дисперсія — 14. Таким чином, на пряму B відбивається менша частка дисперсії, ніж на пряму A.
Яка ця частка? Оскільки прямі A і B ортогональні (перпендикулярні), частки загальної дисперсії, що проєктуються на A і B, не перетинаються. Отже, загальну дисперсію розташування цікавих нас точок можна обчислити як суму цих двох складових: 342/3+14=482/3. При цьому на пряму A проєктовано 71,2 % загальної дисперсії, а на пряму B — 28,8 %.
А як визначити, на яку пряму відбиться максимальна частка дисперсії? Ця пряма відповідатиме лінії регресії для цікавих нас точок, яка позначена як C (червоний колір). На цю пряму відбиться 77,2 % загальної дисперсії, і це — максимально можливе значення при даному розташуванні точок. Таку пряму, на яку проєктуються максимальна частка загальної дисперсії, називають першою головною компонентою.
А на яку пряму відобразити залишкові 22,8 % загальної дисперсії? На пряму, перпендикулярну першій головній компоненті. Ця пряма також буде головною компонентою, бо на неї відбиться максимально можлива частка дисперсії (звісно, без урахування тієї, що відбилася на першу головну компоненту). Таким чином, це — друга головна компонента.
Обчисливши ці головні компоненти за допомогою Statistica (діалог ми опишемо трохи пізніше), ми отримаємо картину, показану на рис. 9.1.2. Координати точок на головних компонентах подаються у стандартних відхиленнях.
Рис. 9.1.2. Розташування трьох точок, показаних на рис. 9.1.1, на площині двох головних компонент. Чому ці точки розташовуються один щодо одного інакше, ніж на рис. 9.1.1?
На рис. 9.1.2 взаєморозташування точок виявляється зміненим. Щоб надалі правильно інтерпретувати подібні картинки, слід розглянути причини відмінностей у розташуванні точок на рис. 9.1.1 і 9.1.2 докладніше. Точка 1 в обох випадках знаходиться правіше (має більшу координату за першою ознакою і першою головною компонентою), ніж точка 2. Але, чомусь, точка 3 у вихідному розташуванні знаходиться нижче двох інших точок (має найменше значення ознаки 2), і вище двох інших точок на площині головних компонент (має більшу координату за другою компонентою). Це пов’язано з тим, що метод головних компонент оптимізує саме дисперсію вихідних даних, що проєктуються на обрані ним осі. Якщо головна компонента корельована з якоюсь вихідною віссю, компонента і вісь можуть бути спрямовані в один бік (мати позитивну кореляцію) або в протилежні боки (мати негативну кореляцію). Обидва варіанти рівнозначні. Алгоритм методу головних компонент може «перевернути» або не «перевернути» будь‑яку площину; жодних висновків на цьому підставі робити не слід.
Проте точки на рис. 9.1.2 не просто «перевернуті» у порівнянні з їх взаєморозташуванням на рис. 9.1.1; певним чином змінилося і їх взаєморозташування. Відмінності між точками за другою головною компонентою здаються посиленими. 22,76 % загальної дисперсії, що припадає на другу компоненту, «розтягли» точки на таку ж дистанцію, як і 77,24 % дисперсії, що припадає на першу головну компоненту.
Щоб розташування точок на площині головних компонент відповідало їх реальному розташуванню, цю площину слід було б спотворити. На рис. 9.1.3 показані два концентричні кола; їхні радіуси співвідносяться як частки дисперсій, відображуваних першою і другою головними компонентами. Картинка, що відповідає рис. 9.1.2, спотворена так, щоб середньоквадратичне відхилення за першою головною компонентою відповідало більшому колу, а за другою — меншому.
Рис. 9.1.3. Ми врахували, що на першу головну компоненту припадає більша частка дисперсії, ніж на другу. Для цього ми спотворили рис. 9.1.2, підганяючи його під два концентричні кола, радіуси яких співвідносяться, як частки дисперсій, що припадають на головні компоненти. Але розташування точок все одно не відповідає вихідному, показаному на рис. 9.1.1!
Чому взаємне розташування точок на рис. 9.1.3 не відповідає такому на рис. 9.1.1? На вихідному рисунку, рис. 9.1, точки розташовані згідно зі своїми координатами, а не згідно з частками дисперсії, що припадають на кожну вісь. Відстані в 1 одиницю за першою ознакою (за віссю абсцис) на рис. 9.1.1 відповідає менша частка дисперсії точок за цією віссю, ніж відстані в 1 одиницю за другою ознакою (за віссю ординат). А на рис. 9.1.1 відстані між точками визначаються саме тими одиницями, у яких вимірюються ознаки, за якими вони описані.
Трохи ускладнимо задачу. У табл. 9.1.1 показані координати 10 точок у 10‑вимірному просторі. Перші три точки і перші два вимірювання — це той приклад, який ми лише що розглядали.
Таблиця 9.1.1. Координати точок для подальшого аналізу
Точки
Координати
Character 1
Character 2
Character 3
Character 4
Character 5
Character 6
Character 7
Character 8
Character 9
Character 10
1
10
7
6
9
5
8
6
1
9
7
2
2
3
2
1
7
1
8
5
7
1
3
8
2
3
6
9
2
2
1
5
8
4
2
7
4
1
5
3
9
8
3
2
5
8
6
5
1
6
4
3
9
2
7
6
8
10
7
8
2
1
3
5
2
4
7
2
5
3
5
5
6
9
9
2
1
8
6
3
3
6
7
8
2
4
1
8
9
6
1
2
4
9
6
1
3
7
3
10
4
4
3
7
8
2
1
7
5
8
У навчальних цілях спочатку розглянемо лише частину даних з табл. 9.1.1. На рис. 9.1.4 ми бачимо розташування десяти точок на площині перших двох ознак. Зверніть увагу, що перша головна компонента (пряма C) пройшла дещо інакше, ніж у попередньому випадку. Нічого дивного: на її положення впливають усі розглянуті точки.
Рис. 9.1.4. Ми збільшили кількість точок. Перша головна компонента проходить вже дещо інакше, бо на неї вплинули додані точки
На рис. 9.1.5 показано розташування розглянутих нами 10 точок на площині двох перших компонент. Зверніть увагу: все змінилося, не лише частка дисперсії, що припадає на кожну головну компоненту, а й навіть положення перших трьох точок!
Рис. 9.1.5. Ординація в площині перших головних компонент 10 точок, охарактеризованих у табл. 9.1.1. Розглядалися лише значення двох перших ознак, останні 8 стовпців табл. 9.1.1 не використовувалися
В цілому, це природно: оскільки головні компоненти розташовані інакше, змінилося і взаєморозташування точок.
Труднощі у порівнянні розташування точок у площині головних компонент і на вихідній площині значень їх ознак можуть викликати здивування: навіщо використовувати такий важко інтерпретований метод? Відповідь проста. У випадку, коли порівнювані об’єкти описані лише за двома ознаками, цілком можна використовувати їх ординацію за цими вихідними ознаками. Усі переваги методу головних компонент проявляються у випадку багатовимірних даних. Метод головних компонент у такому випадку виявляється ефективним способом зниження розмірності даних.
9.2. Перехід до початкових даних з великою кількістю вимірювань
Розглянемо складніший випадок: проаналізуємо дані, представлені в табл. 9.1.1 за всіма десятьма ознаками. На рис. 9.2.1 показано, як викликається вікно цікавого нам методу.
Рис. 9.2.1. Запуск методу головних компонент
Нас буде цікавити лише вибір ознак для аналізу, хоча діалог Statistica дозволяє набагато тонкішу настройку (рис. 9.2.2).
Рис. 9.2.2. Вибір змінних для аналізу
Після виконання аналізу з’являється вікно його результатів з кількома вкладками (рис. 9.2.3). Усі основні вікна доступні вже з першої вкладки.
Рис. 9.2.3. Перша вкладка діалогу результатів аналізу головних компонент
Можна побачити, що аналіз виділив 9 головних компонент, причому описав за їх допомогою 100 % дисперсії, відображеної в 10 початкових ознаках. Це означає, що одна ознака була зайвою, надлишковою.
Почнемо перегляд результатів з кнопки «Plot case factor voordinates, 2D»: вона покаже розташування точок у площині, заданій двома головними компонентами. Натиснувши цю кнопку, ми перейдемо у діалог, де треба буде вказати, які компоненти будемо використовувати; природно, починати аналіз з першої і другої компонент. Результат — на рис. 9.2.4.
Рис. 9.2.4. Ординація розглянутих об’єктів у площині двох перших головних компонент
Положення точок змінилося, і це природно: в аналіз залучені нові ознаки. На рис. 9.2.4 відображено понад 65 % усього різноманіття у положенні точок один щодо одного, і це вже нетривіальний результат. Наприклад, повернувшись до табл. 9.1.1, можна переконатися, що точки 4 і 7, а також 8 і 10 дійсно досить близькі одна до одної. Проте відмінності між ними можуть стосуватися інших головних компонент, не показаних на рисунку: на них, все ж, теж припадає третина залишкової змінливості.
До речі, при аналізі розташування точок у площині головних компонент може виникнути потреба проаналізувати відстані між ними. Найпростіше отримати матрицю дистанцій між точками за допомогою модуля для кластерного аналізу.
А як виділені головні компоненти пов’язані з вихідними ознаками? Це можна дізнатися, натиснувши кнопку (рис. 9.2.3) Plot var. factor coordinates, 2D. Результат — на рис. 9.2.5.
Рис. 9.2.5. Проекції вихідних ознак у площину двох перших головних компонент
Ми дивимося на площину двох головних компонент «зверху». Вихідні ознаки, які взагалі не пов’язані з головними компонентами, будуть перпендикулярні (або майже перпендикулярні) їм і відобразяться короткими відрізками, що закінчуються біля початку координат. Так, найменше з двома першими головними компонентами пов’язаний ознака № 6 (хоча вона демонструє певну позитивну кореляцію з першою компонентою). Відрізки, що відповідають тим ознакам, які повністю відобразяться у площині головних компонент, закінчуватимуться на охоплюючій центр рисунка окружності одиничного радіуса.
Наприклад, можна побачити, що на першу головну компоненту найсильніше вплинули ознаки 10 (пов’язана позитивною кореляцією), а також 7 і 8 (пов’язані негативною кореляцією). Щоб розглянути структуру таких кореляцій докладніше, можна натиснути кнопку Factor coordinates of variables, і отримати таблицю, показану на рис. 9.2.6.
Рис. 9.2.6. Кореляції між вихідними ознаками та виділеними головними компонентами (Factors)
Кнопка Eigenvalues виводить величини, які називаються власними значеннями головних компонент. У верхній частині вікна, показаного на рис. 9.2.3, виведено такі значення для кількох перших компонент; кнопка Scree plot показує їх у зручній для сприйняття формі (рис. 9.2.7).
Рис. 9.2.7. Власні значення виділених головних компонент і частки відображеної ними загальної дисперсії
Для початку треба зрозуміти, що саме показує значення eigenvalue. Це — міра дисперсії, що відобразилася на головну компоненту, виміряна у кількості дисперсії, що припадає на кожну ознаку у початкових даних. Якщо eigenvalue першої головної компоненти дорівнює 3,4, це означає, що на неї відбивається більше дисперсії, ніж на три ознаки з початкового набору. Власні величини лінійно пов’язані з часткою дисперсії, що припадає на головну компоненту, причому сума власних значень дорівнює кількості вихідних ознак, а сума часток дисперсії дорівнює 100 %.
А що означає, що інформацію про змінливість за 10 ознаками вдалося відобразити у 9 головних компонентах? Що одна з початкових ознак була надлишковою, не додавала жодної нової інформації. Так і було; на рис. 9.2.8 показано, як був згенерований набір точок, відображений у табл. 9.1.1.
Рис. 9.2.8 Дані в табл. 9.1.1 — штучні, і тут видно, як вони були згенеровані