Чому сума точності та нагадування не є гідною мірою?


12

Який найкращий спосіб пояснити, чому , наприклад, не є хорошим показником порівняно з F1?Precision+Recall


Що це означало б? Як би ви трактували це? Що б то насправді сказало?
Меттью Друрі

1
Ви повинні змінити назву, замінивши "Precision + Recall" на "сума Precision and Recall", щоб було зрозуміліше, що ви хочете.
g3o2

@ g3o2 ми говоримо тут про граматику, чи я пропускаю щось більше?
мат

Не дуже, лише зауваживши, що його також можна читати Precision & Recall, зокрема, лише читаючи заголовок.
g3o2

Відповіді:


18

Справа не в тому, що є поганою мірою, це лише те, що саме по собі отримане число не означає нічого значимого. Ви на правильному шляху, проте ... те, що ми шукаємо, - це комбіноване, середнє значення для двох показників ефективності, оскільки нам не хочеться обирати між ними.Precision+Recall

Нагадаємо, що точність та відкликання визначаються як:

Precision=True PositivePredicted Positive
Recall=True PositiveActual Positive

Оскільки вони обоє мають різні знаменники, додавання їх разом дає щось подібне: ... що не особливо корисно.

True Positive(Predicted Positive+Actual Positive)Predicted Positive×Actual Positive

Давайте повернемось до їх додавання разом і зробимо налаштування: помножте їх на щоб вони залишилися у правильній шкалі, . Це взяття знайомого середнього з них.12[01]

12×(True PositivePredicted Positive+True PositiveActual Positive)

Отже, у нас є дві величини, які мають однаковий чисельник, але різні знаменники, і ми хотіли б взяти середнє значення з них. Що ми робимо? Ну ми могли їх перевернути, взяти їх обернену. Потім ви могли їх додати разом. Так вони "правою стороною вгору", ви знову приймаєте зворотну.

Цей процес інвертування, а потім інвертування знову перетворює "регулярне" середнє в гармонійне середнє. Так буває, що середнє значення гармонійної точності та відкликання є статистикою F1. Середня гармоніка зазвичай використовується замість стандартної середньої арифметичної при роботі зі ставками, як ми робимо тут.

Врешті-решт, статистика F1 - це лише середня точність та відкликання, і ви використовуєте її, тому що не хочете вибирати ту чи іншу для оцінки продуктивності моделі.


2
Справді, велике спасибі за те, що люб’язно розвинули середнє гармонічне значення від алгебраїчного середнього! але те, що, мабуть, не сильно сидить зі мною, - це та частина, де ви говорите "що не особливо корисно". З цього приводу я зараз прокоментував дві інші відповіді. На випадок, якщо ви зробите це на крок далі. Наприклад, уявіть, що я хотів би вибрати кращого класифікатора серед групи класифікаторів, перевірених на тому ж наборі даних.
мат

@matt, використання будь-якого комбінованого заходу дозволить вибрати вашу модель до певного моменту, але не далі. Дві моделі, що мають однакове значення F1, можуть демонструвати абсолютно протилежні значення Recall and Precision. Тому, щоб F1 був однаковим, вам доведеться вибирати між Recall та Precision.
g3o2

4

Коротка відповідь: ви не очікуєте, що підсумовування двох відсотків, які мають два різних знаменника, матиме якесь особливе значення. Отже, підхід прийняти середній показник, такий як F1, F2 або F0.5. Останні зберігають принаймні властивість відсотка. А як же їх значення?

Краса точності та нагадування як окремих заходів полягає в їх простоті інтерпретації та в тому, що їх можна легко протистояти бізнес-цілям моделі. Точність вимірює відсоток true positivesвипадків, віднесених positiveдо моделі. Нагадаємо, вимірює відсоток true positivesзнайденої моделлю з усіх trueвипадків. Для багатьох проблем вам доведеться вибрати оптимізацію точності або відкликання.

Будь-який середній показник втрачає вищевказану інтерпретацію і зводиться до того, який мір вам найбільше надається. F1 означає, що ви або не знаєте, чи віддаєте перевагу Recall чи Precision, або надаєте однакову вагу кожному з них. Якщо ви вважаєте Recall важливішим за Precision, то вам слід також виділити йому більшу вагу в середньому розрахунку (наприклад, F2), і навпаки (наприклад, F0.5).


3

Додавання двох - погана міра. Ви отримаєте бал щонайменше 1, якщо позначите все як позитивне, оскільки це 100% нагадування за визначенням. І ви отримаєте трохи точного удару поверх цього. Середнє геометричне значення, яке використовується у F1, підкреслює слабку ланку, оскільки є мультиплікативною; ви повинні принаймні зробити все добре з обома точністю і нагадати, щоб отримати гідну оцінку F1.


Власне, саме цей акцент слабкої ланки я вважав зайвим, коли Precision і Recall є розумними, а не різкими. Коли вони обоє не відриваються, я не впевнений, що я бачу додану цінність метрики, що підкреслює схожість між ними, або по-різному карається розміром їх різниці. Саме ця властивість частково мотивувала тут моє первісне запитання.
мат

Мені це здається додатковою роботою. Якщо ви оцінюєте відсоткову точку відкликання стільки ж, скільки і точність, то, мабуть, ваша міра повинна використовуватись. Але я не можу уявити тебе. Нагадаємо, мабуть, буде домінувати, навіть якщо ви зменшите діапазони. Ви можете з великою точністю згадати, що це яблука-яблука, але це знову більше роботи і робить інтерпретацію менш зрозумілою.
Бен Огорек

1
Не впевнений, чому припускати, що відкликання повинно домінувати (?), Але масштабування нагадування яблук до яблук з точністю може бути цікавою пов’язаною дискусією тут чи в іншому місці - вказівник у правильному напрямку може бути приємно мати :) та в іншому випадку спасибі ще раз
мат

3

Оцінка F1 особливо цінна у випадку сильно асиметричної ймовірності.

Розглянемо наступний приклад: ми перевіряємо на рідкісну, але небезпечну хворобу. Припустимо, що в місті з 1.000.000 людей заражено лише 100 людей.

Тест А виявляє всі ці 100 позитивів. Однак вона також має 50% хибнопозитивних показників: помилково показує, що хворіють ще 500 000 людей.

Тим часом тест В пропускає 10% заражених, але дає лише 1.000 хибнопозитивних (0,1% хибнопозитивних показників)

Давайте підрахуємо бали. Для тесту А точність буде ефективно 0; нагадування буде рівно 1. Для тесту B точність все ще буде досить невеликою, приблизно 0,01. Нагадаємо, буде дорівнює 0,9.

Якщо ми наївно підсумовуємо або беремо середнє арифметичне точності та згадуємо, це дасть 1 (0,5) для тесту А та 0,91 (0,455) для тесту В. Отже, тест А здасться трохи кращим.

Однак якщо поглянути з практичної точки зору, тест А марний: якщо людина тестується позитивно, його шанс по-справжньому захворіти - 1 на 50 000! Тест В має більш практичне значення: ви можете завезти до лікарні 1100 людей і уважно спостерігати за ними. Це точно відображається балом F1: для тесту А це буде близько 0,0002, для тесту B: (0,01 * 0,9) / (0,01 + 0,9) = 0,0098, що все ще досить погано, але приблизно в 50 разів краще.

Ця відповідність між оцінкою та практичним значенням - це те, що робить рахунок F1 цінним.


Дякую. Можливо, я недостатньо занурився у справу, але хіба це з'ясування не залежить від прагматичної переваги розподілу ресурсів для "позитивних" у реальній області, де виявлення одного результату (позитивного) є метою? це не завжди так, що мета виявлення одного результату? іноді просто хочеться знати, чи це яблуко чи пара, і обидва типи помилок мають однакову практичну реальну вартість.
мат

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

1

Взагалі, максимізація геометричного середнього значення підкреслює значення, подібні. Наприклад, візьміть дві моделі: перша має (точність, відкликання) = (0,8, 0,8), а друга має (точність, нагадування) = (0,6, 1,0). Використовуючи алгебраїчне середнє, обидві моделі були б рівнозначними. Використовуючи геометричне середнє, перша модель є кращою, оскільки вона не торгує точністю для виклику.


1
Дуже дякую. Однак на практиці я не бачу жодної загальноприйнятої переваги між, наприклад, (0,8, 0,8) та (0,7, 0,9). Можливо, ви натякнули на щось глибше у "торгуванні точністю на відкликання" - чого я ще не підбираю (поки що). Для мене алгебраїчно усереднення двох типів помилок, просто дає найпростіші середні з них, без упередженості подібності. Наприклад, я можу використати просте підсумовування точності та нагадування, щоб зрозуміти, який із двох класифікаторів дає мені менше помилок.
мат

Ми можемо сприйняти це до крайності. Скажімо, у вас є одна система, яка має (точність, нагадування) = (0,6, 0,6). Це означає, що коли він каже "так", його правильний 60% часу, і він правильно фіксує 60% "так" подій. Тепер порівняємо це з системою, яка має (0,3, 1). Це має краще алгебраїчне значення, але що це робить? Він ловить все «так» події, але це також сказати «так» неправильно на багато . Чи це добре? Це погано? Це залежить від того, чому ви будуєте систему. Яку дію ви будете робити, коли побачите прогноз "так"? Який наслідок пропуску події "так"?
круглий круг

1
Жоден із цих заходів не є правильними правилами зарахування точності
Френк Харрелл

@roundsquare велике спасибі, але за непатологічні випадки - коли обом не близько 0 і 1 - мені, мабуть, потрібна допомога, побачивши користь підкреслити схожість між ними, нарешті!
мат

@FrankHarrell дякує за те, що вказав на "слона в кімнаті"
мат
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.