LDA проти персептрон


9

Я намагаюся зрозуміти, як ЛДА «вписується» в інші контрольовані методи навчання. Я вже читав тут деякі з LDA-есків про LDA. Я вже знайомий з перцептроном, але зараз лише вивчаю LDA.

Як LDA «вписується» в сімейство алгоритмів навчання під контролем? Які можуть бути його недоліки в порівнянні з іншими методами, і для чого це можна краще використовувати? Навіщо використовувати LDA, коли можна просто використовувати, скажімо, перцептрон, наприклад?


1
Думаю, вас можуть збентежити, що таке навчання під контролем. K-засоби - це непідтримуваний алгоритм кластеризації навчання. Perceptron - це керований алгоритм класифікації навчання, який намагається знайти гіперплан, який відокремлює негативні від позитивних спостережень. LDA - метод, який можна використовувати для контрольованої класифікації, але частіше застосовується для вибору контрольованої функції. Дивіться відповідь @ AdamO щодо припущень щодо класифікатора LDA.
Побіт

@Bitwise На жаль! Я не знаю, чому я туди вклав К-засоби Так, це непідтримуваний алгоритм. Я видалю його в редагуванні.
Creatron

@Bitwise Що стосується того, що ви сказали про LDA та Perceptron, так, саме це мене бентежить. LDA намагається знайти гіперплан, на який можна запроектувати ваші дані, таким чином, щоб він максимізував дисперсію між кластерами, зводячи до мінімуму дисперсію між кластером. Тоді на кордоні у вас є класифікатор. Perceptron робить щось подібне, тому що він також намагається знайти оптимальну гіперплан для відмежування мічених даних. То навіщо використовувати один над іншим?
Креарон

Відповіді:


15

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

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

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

З іншого боку, на сторінці 210 HTF попереджає:

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

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

Різниця між LDA та класифікатором, який шукає роздільну гіперплану, схожа на різницю між t-тестом та якоюсь непараметричною альтернативою у звичайній статистиці. Останнє є більш надійним (наприклад, для людей, що переживають люди), але перший є оптимальним, якщо його припущення будуть задоволені.

Ще одне зауваження: можливо, варто згадати, що деякі люди можуть мати культурні причини для використання таких методів, як LDA або логістична регресія, які можуть обов'язково викласти таблиці ANOVA, тести гіпотез та заспокоїти подібні речі. LDA був винайдений Фішером; перцептрон був спочатку моделлю для нейрона людини або тварини і не мав зв'язку зі статистикою. Це також працює і в інший спосіб; Деякі люди можуть віддати перевагу таким методам, як підтримка векторних машин, оскільки вони мають вигляд передового хіпстерського кредиту, який методів двадцятого століття просто не може відповідати. Це не означає, що вони кращі. (Хороший приклад цього обговорюється в машинному навчанні для хакерів , якщо я пригадую правильно.)


"деякі люди можуть віддавати перевагу таким методам, як векторні машини підтримки, оскільки вони мають вигляд передового хіпстерського кредиту, який методів двадцятого століття просто не може відповідати". ЛОЛ! Такий справжній. До речі, у вас є вміння пояснювати речі дуже чітко і точно. Дякую! Мені потрібна була «карта» про те, як речі поєднуються разом, і ви це надали.
Creatron

2

Для інтуїції розглянемо цей випадок:

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

Рядок являє собою "оптимальну межу" між двома класами o і x.

LDA намагається знайти гіперплан, який мінімізує дисперсію між кластерами та максимізує внутрішньокластерну дисперсію, а потім межа бере ортогональну для цієї гіперплани. Тут, напевно, це не спрацює, оскільки кластери мають велику дисперсію в одному напрямку.

З іншого боку, перцептрон може мати більше шансів знайти хороший роздільний гіперплан.

У випадку класів, що мають розподіл Гаусса, LDA, ймовірно, буде кращим, оскільки перцептрон виявляє лише роздільну гіперплан, що відповідає даним, не даючи гарантій, яку гіперплану він вибере (може бути нескінченна кількість послідовних гіперпланів). Однак більш складні версії перцептрона можуть вибирати гіперплан з деякими оптимальними властивостями, такими як максимізація запасу між класами (це, по суті, те, що роблять Support Vector Machines).

Також зауважте, що і LDA, і перцептрон можуть бути розширені до нелінійних меж рішення за допомогою фокусу ядра .


1

Однією з найбільших відмінностей між LDA та іншими методами є те, що це лише техніка машинного навчання даних, які, як вважається, зазвичай розподіляються Це може бути чудово у випадку відсутності даних або усікання, коли ви можете використовувати алгоритм ЕМ, щоб збільшити ймовірність за дуже дивних та / або цікавих обставин. Caveat emptor, оскільки помилки моделей, такі як мультимодальні дані, можуть призвести до поганого виконання прогнозів, коли кластеризація K-засобів зробила б краще. Мультимодальні дані також можуть обліковуватися за допомогою ЕМ для виявлення прихованих змінних або кластеризації в LDA.

Наприклад, припустимо, що ви бажаєте виміряти ймовірність розвитку позитивного діагнозу СНІДу за 5 років на основі кількості CD4. Припустимо, що ви не знаєте значення конкретного біомарка, який сильно впливає на кількість CD4 і пов'язаний з подальшим імуносупресією. Кількість CD4 нижче 400 нижче нижньої межі виявлення в найбільш доступних аналізах. Алгоритм ЕМ дозволяє нам ітераційно обчислювати призначення ЛДА та біомаркерів та засоби та коваріацію для CD4 для непідвладного КД.


Дякую Адамові, хоча зараз я вважаю себе більш розгубленим. :-) Як LDA краще / гірше, наприклад, Perceptron чи інша контрольована методика навчання? Що стосується EM algo, то ви використовуєте його в обсязі, кажучи, що ви можете вирішити для LDA, використовуючи EM algo, правильно?
Creatron

1
@AdamO, я хотів би додати для ясності, що LDA як техніка зменшення даних не покладається на нормальність, як і PCA. Нормальність в межах LDA - це припущення для 1) статистичного тестування (M-тест Box тощо), 2) класифікації.
ttnphns

@ttnphns, якщо припустити нормальність, означає, що LDA є технікою ML. ML - це гарна річ. Конкретні застереження в прикладі, про який я згадував, використовують ML для вирішення складних проблем. Ці рішення були б можливі лише за допомогою складного моделювання та / або помилок.
AdamO

@TheGrapeBeyond LDA максимізує відстань Махала до двох груп. SLP (одношаровий персептрон, або мережа) малює гіперплан у просторі функцій, що створює максимальну точність класифікації ... Я думаю. Хорошим початковим місцем є читання книги Tibs / Hastie. Можливо, мені доведеться самостійно розібратися з цим.
AdamO
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.