Лінійний розділювальний аналіз
Частина з циклу |
Машинне навчання та добування даних |
---|
![]() |
Лінійний дискримінантний аналіз (англ. Linear discriminant analysis, LDA) — статистичний метод для розв'язку задачі класифікації. З його допомогою будуються лінійні комбінації предикторів, що відділяють області одного класу від іншого. LDA працює для будь-якої кількості класів, на відміну від таких методів як логістична регресія, що в першу чергу використовуються для бінарної класифікації.
Лінійний дискримінативний аналіз базується на використанні критерія Фішера, який був описаний британським статистиком і біологом Рональдом Фішером у задачі бінарної класифікації, розділення ірисів за розмірами частин квітки[1].
У 1948 метод був узагальнений індійським математиком Кальямпуді Радхакришною Рао[en] для довільної кількості класів[2].
LDA шукає проєкцію даних у деякий підпростір розмірності або менше (де — кількість класів, — кількість ознак). Підпростір обирається так, щоб проєкції розподілів, що відносяться до різних класів, були розділені у ньому якомога сильніше. Таким чином класи розділюються за правилом[3][4]:
- Кожному класу ставиться у відповідність деяка функція вигляду . Ці функції називаються дискримінантними функціями. Матриця є матрицею проєкції, .
- Кожна точка простору ознак класифікується відповідно до того, яка саме з дискримінантних функцій має найвище значення у ній.
Через те що всі функції є лінійними по Х, границі між областями простору, що відповідають різним класам (decision surface) завжди є гіперплощинами.
У найпростішому випадку двох класів підпростір є одномірним — прямою, і розділення відбувається за правилом :
Геометричний сенс функції в такому випадку — відстань від гіперплощини розділяючої класи до точки даних[5].
Дискримінантні функції будуються так, щоб зробити розділення класів якомога простішим. Існує кілька алгоритмів, які вирішують цю задачу, найвідомішими є дискримінантний аналіз Фішера і баєсівський класифікатор. У деяких випадках вони дають однакові результати, проте загалом це різні алгоритми.

Історично першою спробою побудувати лінійну дискримінантну модель була модель запропонована Фішером.
Нехай є два класи. Тоді підпростором найкращого розділення буде такий, що при проєктуванні на нього даних максимальним є відношення відстані між середнім значенням класів і розкидом всередині класу[6].
Нехай — елементи класу , а — кількість елементів у цьому класі. Тоді середнє значення по класу дорівнює
в цьому записі — p-вимірний вектор
середнє проєкції класу (скаляр)
розкид всередині класу
розкид всередині проєкції елементів класу
Тоді функція, максимум якої необхідно знайти:
Величину називають також міжкласовим розкидом(between-class scatter), тоді як — внутрішньокласовим розкидом (within-class scatter matrix).
Продиференціювавши по і прирівнявши результат до нуля отримуємо:
ділимо на :
тоді
оскільки — скаляр, задача зводиться до пошуку власних векторів. Найкраще розділення буде досягнуто при проєкції на вектор, що відповідає найбільшому власному значенню.
У випадку двох класів також є більш простий спосіб оцінки w: через те що важливий лише напрямок вектору w, його можна визначити виходячи з того, що[7]: , де а — скаляр. Таким чином:
Модель Фішера працює у дуже широких межах, оскільки має досить мало вимог до розподілу даних, проте вона дає чіткого способу визначити границі класів після проєкції. Найбільш загальний принцип вибору полягає в тому, щоб кількість помилок першого і другого роду при класифікації була однаковою[8]. В найпростішому варіанті гіперплощина розташовується рівно посередині між середніми значеннями класів.


Підхід може бути застосований і до більше ніж двох класів. У такому випадку, матриця проєкції має розміри , а матриця міжкласового розкиду визначається як
- ,
де μ — загальне середнє по всіх класах.
У цьому випадку, w складається з стовпчиків, що відповідають найбільшим власним векторам матриці .
Головним чином такий алгоритм для великої кількості класів використовується як спосіб зниження розмірності (дані проєціюються на гіперплощину нижчої розмірності проте класифікатор не будується).
Щоб все ж побудувати модель багатокласової класифікації за цим підходом можна створити окремих класифікаторів, які будуть попарно порівнювати класи, або ж класифікаторів, кожен з яких робить класифікацію один-проти-решти. Недоліком цього підходу є те, що при ньому деякі зони можуть мати невизначений клас — або через те що створюються цикли класифікацій (клас 2 більш ймовірний ніж клас 1, клас 3 більш ймовірний ніж клас 2, клас 1 більш ймовірний ніж клас 3), або через те, що жоден з класифікаторів один-проти-всіх не визначає точку як належну до "свого" класу[9][10].
Тому для класифікації у викпадку 3 і більше класів зазвичай використовують описаний нижче баєсів класифікатор.
Баєсів класифікатор застосовується до більш вузького випадку: якщо в усіх класах точки мають однаковий (багатовимірний нормальний) розподіл, що відрізняється лише середнім, тобто, матриці коваріації точок всередині кожного класу однакові[11].
Часто коли говорять про лінійний розділювальний аналіз, то мається на увазі саме баєсівський класифікатор.
Згідно з теоремою Баєса, ймовірність того, що деяке спостереження належить до класу K, можна оцінити, знаючи розподіл значень всередині класів і ймовірності самих класів :
Багатовимірний нормальний розподіл точок що відносяться до класу задається як:
де , а — матриця коваріації.
Виразимо тоді логарифм співвідношення ймовірностей того, що спостереження x відноситься до класу і , припускаючи що матриці коваріації однакові для всіх класів (через що члени з скорочуються:
Тоді функції
і будуть питомими дискримінантними функціями. Спостереження належить до того класу, який має максимальну дискримінантну функцію у відповідній точці.
Параметри функції визначаються з вибіркових даних[12]:
Для всіх варіантів LDA дані очікуються нормалізовані, з варіацією всіх ознак рівною одиниці. Для баєсівського класифікатора також важливо щоб усі класи мали багатовимірний гаусів розподіл а матриця коваріації була однаковою в усіх класах.
Аналіз чутливий до викидів тому бажано перевірити дані і видалити їх до початку роботи[13].
Якщо матриці коваріації не рівні, то скорочення квадратичних членів не відбувається. Відповідно, границі між класами будуть описуватися кривими другого порядку а не гіперплощинами, а кількість параметрів можелі сильно зросте. Така модель називається квадратичним дискримінантним аналізом (QDA).
Схожі результати можна отримати, додаючи в модель складні предиктори, наприклад, якщо до моделі з двома предикторами і додати ще три, які дорівнюють , отримане лінійне рівняння відносно п'яти параметрів буде квадратичним відносно і . Проте, ці два підходи не є ідентичними, і отримані поверхні розділення класів різні, хоча часто різниця є невеликою[14].
Можливі проміжні варіанти, де в якості матриці коваріації класу використовується матриця
де — деякий параметр від 0 до 1, а — середня матриця коваріації по всіх класах (така як використовується в LDA)
Матрицю коваріації в LDA можна замінити на
- ,
де I — одинична матриця, — параметр від 0 до 1, — вектор стандартного відхилення кожного параметру всередині класу. Таким чином матриця стає ближчою до діагональної і вплив коваріацій зменшується. У крайньому випадку всі змінні вважаються незалежними. Така модель називається наївною гаусівською баєсовою (англ. Gaussian Naive Bayes)[15]. Її перевага полягає в значно меншій кількості параметрів моделі.
- Хасті Т., Тібширані Р., Фрідман Дж. Основы статистического обучения. — 2. — Київ : «Діалектика», 2020. — 768 с. — ISBN 978-617-7812-91-2.
- Дуда Р.,Харт П. Распознавание образов и анализ сцен. — М. : «Мир», 1976. — 507 с.
- ↑ The Use of Multiple Measurements in Taxonomic Problems(англ.)
- ↑ What is Linear Discriminant Analysis ?|Assumptions of Linear Discriminant Analysis | How LDA makes predictions ?|Advantages and Disadvantages of LDA(англ.)
- ↑ Linear Discriminat Analysis(рос.)
- ↑ Linear Discriminant Functions(англ.)
- ↑ Дуда,Харт, 1976, с. 146.
- ↑ A Tutorial on Data Reduction. Linear Discriminant Analysis(англ.)
- ↑ Fisher’s Linear Discriminant: Intuitively Explained(англ.)
- ↑ Threshold Selection Study on Fisher Discriminant Analysis Used in Exon Prediction for Unbalanced Data Sets(англ.)
- ↑ Classification(англ.)
- ↑ Дуда,Харт, 1976, с. 148.
- ↑ Хасті,Тібширані,Фрідман, 2020, с. 132.
- ↑ Хасті,Тібширані,Фрідман, 2020, с. 133.
- ↑ Linear Discriminant Analysis for Machine Learning(англ.)
- ↑ Хасті,Тібширані,Фрідман, 2020, с. 134.
- ↑ Differences between LDA, QDA and Gaussian Naive Bayes classifiers(англ.)