Лінійний розділювальний аналіз
Лінійний дискримінантний аналіз (англ. 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]. Її перевага полягає в значно меншій кількості параметрів моделі. Див. також
Примітки
Література
|
Portal di Ensiklopedia Dunia