Коли незбалансовані дані насправді є проблемою в машинному навчанні?


52

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

Цитуючи одну з відповідей Марка Клайсена , що стосується незбалансованих даних

(...) сильно залежить від методу навчання. Більшість підходів загального призначення мають один (або кілька) способів вирішити це.

Але коли саме ми повинні турбуватися про незбалансовані дані? Які алгоритми на нього найбільше впливають і які здатні з цим боротися? За якими алгоритмами нам знадобиться збалансувати дані? Я знаю, що обговорення кожного з алгоритмів було б неможливим на такому веб-сайті з питань запитання, я шукаю загальні рекомендації щодо того, коли це може бути проблемою.



@MatthewDrury дякую, це цікаве питання, але IMHO, він має іншу сферу застосування. Я прошу вказувати, коли це справді проблема. Безумовно, відповідаючи на те, чому питання призводить до відповіді на питання коли , але я шукаю точну відповідь на питання коли .
Тім

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

2
@MatthewDrury саме в цьому проблема!
Тім

1
Повне опитування методів не входить в рамки питання про СВ. Ви хочете уточнити запитання?
AdamO

Відповіді:


28

Не пряма відповідь, але варто зазначити, що в статистичній літературі деякі забобони щодо незбалансованих даних мають історичне коріння.

Багато класичних моделей акуратно спрощуються з урахуванням збалансованих даних, особливо для таких методів, як ANOVA, які тісно пов'язані з експериментальним дизайном - традиційна / оригінальна мотивація розробки статистичних методів.

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

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

Це стара проблема, і вчені занурили багато часу на роботу над проблемою ... тим часом багато прикладних проблем випереджали / ухилялися від досліджень, але старі звички важко вмирають ...

Редагувати, щоб додати:

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


4
Хоча я, здається, розумію вашу думку, у ваших приміщеннях відсутні аргументи, що їх підтверджують. Чи можете ви навести кілька аргументів та / або прикладів щодо забобонів та того, як це вплинуло на машинне навчання?
Тім

1
Незважаючи на те , що ви говорите, в основному , правда, це є також випадок, коли такі методи , як ANOVA є більш надійною з симетричними даними, nonnormality є менш важливою проблемою , з симетричними даними, наприклад. Але я вважаю, що все це є ортогональним наміром цього питання ...
kjetil b halvorsen

7
Я усвідомлюю, що я не вийшов, і просто кажу: не існує проблеми низького рівня з використанням незбалансованих даних. На мій досвід, порада "уникати незбалансованих даних" є або алгоритмом, або успадкованою мудрістю. Я погоджуюся з AdamO, що в цілому незбалансовані дані не становлять концептуальної проблеми для чітко визначеної моделі.
Генрі

1
@ M.HenryL. цей коментар варто додати до вашої відповіді для повноти.
Тім

16

WLOG Ви можете зосередитись на дисбалансі в одному факторі, а не на більш нюансованому понятті "розрідженість даних" або на малій кількості комірок.

У статистичних аналізах, не зосереджених на навчанні, ми часто виявляємо, що подібні або кращі сили забезпечуються при використанні показників схильності для відповідності меншої групи до більшої групи. Частково це пояснюється тим, що узгодження слугує аналогічною метою - визначити коригування з точки зору "врівноваження" детермінант членства в групі, тим самим блокуючи їх заплутані ефекти. Обґрунтування кількості конфундерів, що можливо підкоригується при багатоваріантному аналізі, залежить від розміру вибірки. Деякі правила показують одну змінну на кожні 10-20 спостережень. У незбалансованих даних ви наївно вважаєте, що ваші дані є достатньо великими, але з рідкісним числом людей, які мають рідші умови: інфляція дисперсії значно зменшує потужність. Ви, насправді, над налагодженням.

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


13

Незбалансовані дані - це лише проблема залежно від вашої програми. Якщо, наприклад, ваші дані вказують на те, що A трапляється 99,99% часу і 0,01% часу B, і ви намагаєтеся передбачити певний результат, ваш алгоритм, ймовірно, завжди скаже А. Це, звичайно, правильно! Навряд чи для вашого методу буде вища точність прогнозування, ніж 99,99%. Однак у багатьох додатках нас не цікавить лише правильність прогнозування, а й те, чому B буває іноді. Саме тут неврівноважені дані стають проблемою. Тому що важко переконати ваш метод, що він може прогнозувати краще, ніж на 99,99% правильно. Метод правильний, але не для вашого питання. Тому вирішення незбалансованих даних в основному навмисно зміщує ваші дані, щоб отримати цікаві результати замість точних результатів.

Загалом є три випадки:

  1. ви суто зацікавлені в точному прогнозуванні, і ви вважаєте, що ваші дані є репресивними. У цьому випадку вам зовсім не потрібно виправлятись, Баскет в славі своїх 99,99% точних прогнозів :).

  2. Вас цікавить прогнозування, але ваші дані з справедливої ​​вибірки, але ви якось втратили ряд спостережень. Якщо ви втратили спостереження абсолютно випадковим чином, у вас все ще добре. Якщо ви втратили їх упереджено, але не знаєте, як упереджено, вам знадобляться нові дані. Однак якщо ці спостереження втрачаються лише на основі одного характерного характеру. (наприклад, ви сортували результати за A і B, але не будь-яким іншим способом, але втратили половину B). Ypu може завантажувати ваші дані.

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

Взагалі це в основному залежить від того, яка мета. Деякі цілі страждають від незбалансованих даних, інші - ні. Від цього страждають усі загальні методи прогнозування, оскільки в іншому випадку вони взагалі дадуть жахливі результати.


7
Як ця історія змінюється, коли ми евакуюємо наші моделі ймовірно?
Меттью Друрі

@MatthewDrury Ймовірності від оригінальної моделі здебільшого вірні для випадків 1 і 3. Проблема полягає в тому, що лише при дуже великих наборах даних B стає правильно відокремленою від A, а ймовірність B повільно переходить до її реальної величини. Виняток полягає в тому, що якщо B дуже чітко відокремлений від A або повністю випадковим чином відокремлений від A, ймовірності відповідно будуть майже відразу або ніколи не сходяться.
дзен

@zen Я скоріше не погоджуюся, що логістична регресія є менш вразливою. Логістична регресія є досить вразливою до дисбалансу даних, вона створює невеликі зміщення вибірки, а коефіцієнти шансів журналу мають тенденцію до коефіцієнта 2. Умовна логістична регресія є альтернативою оцінюванню тих самих ІР, що не мають зміщення.
AdamO

@AdamO Так, логістична регресія все ще вразлива. Але для дерев невеликі випадки можна повністю ігнорувати. це не просто невеликий розмір вибірки. навіть для великих n і, наприклад, 80% -20% розподілу між деревами варіантів все ще може вибрати варіант 80%, навіть якщо частка варіанту 20% чітко збільшується з деякою змінною x. Якщо буде знайдено нове більш екстремальне спостереження або якщо кількість гілок буде низькою для будь-якої крайньої точки, дерево передбачить варіант 80%, тоді як логістична регресія буде меншою. Ви праві щодо умовної логістичної регресії
дзен

2
@MatthewDrury Стівен Сенн чудово обговорює цю тему в статті, яку я часто читаю . Евристично співвідношення шансів у таблиці 2х2 із записами abcd оцінюється за допомогою ad / (bc) і має відхилення 1 / a + 1 / b + 1 / c + 1 / d. Можна вибірково відібрати декілька випадків (a і c), а коефіцієнт шансів все ще є неупередженим, але дисперсія йде до нескінченності. Це питання точності.
AdamO

8

Припустимо, у нас є два класи:

  • A , що становить 99,99% населення
  • B , що становить 0,01% населення

Припустимо, ми зацікавлені в виявленні елементів класу В, які можуть бути особи, уражені рідкісним захворюванням або шахраєм.

Тільки вгадавши А які навчаються б високий бал за їх втрати-функцій і дуже мало неправильно класифікованих елементів не може рухатися, чисельно, голка (в стозі сіна, в даному випадку). Цей приклад наводить інтуїцію за одним із "хитрощів" для зменшення проблеми дисбалансу класу: налаштування функції витрат.

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

Проблеми часто мають рішення. Поряд із вищезгаданим трюком, є й інші варіанти . Однак вони досягають ціни: збільшення моделі та складності обчислювальної техніки.

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

  • Менша ємність, як зазвичай.
  • Деякі функції витрат можуть боротися більше, ніж інші: середня квадратична помилка (MSE) менш піддається впливу, ніж Huber - MSE має бути менш доброякісним щодо неправильно класифікованих елементів класу B.

1
Це передбачає неявно (1), що KPI, який ми намагаємося максимально підвищити, - це точність, і (2) що точність є відповідним KPI для оцінки моделі класифікації. Це не так.
S. Kolassa - Відновіть Моніку

5

Якщо ви подумаєте над цим: На ідеально відокремленому сильно незбалансованому наборі даних практично будь-який алгоритм виконуватиметься без помилок.

Отже, це більше проблема шуму даних і менш прив’язана до певного алгоритму. І ви заздалегідь не знаєте, який алгоритм найкраще компенсує один конкретний тип шуму.

Зрештою, вам просто потрібно спробувати різні методи та вирішити шляхом перехресної перевірки.


Я вважаю, що цей коментар трохи недооцінений. Я просто витрачаю трохи часу, щоб переконати когось, що класовий дисбаланс - це не завжди проблема.
РДК

Це не дає відповіді на запитання. Як незбалансовані класи "більше проблеми шуму в даних"?
S. Kolassa - Відновіть Моніку

2
@StephanKolassa Це відповідь, тому що вона каже, що незбалансовані дані не є (безпосередньо) проблемою. Отже, ви не можете запитати "як" це. На більш загальне питання "як вирішити проблеми із шумом при аналізі даних", відповідь полягає в тому, що це характерно для окремих наборів даних, і все, що ви можете зробити, це налаштувати перевірку та спробувати все, що працює. Якщо ви хотіли б дещо обговорити, я вважаю, що ele.uri.edu/facturing/he/PDFfiles/ImbalancedLearning.pdf має ідеї. Але врешті-решт, ви б зробили вибірку / зважування / порогове значення, і не варто знати, що саме сталося в цьому наборі даних.
Геренюк
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.