Які є правильні значення для точності та пригадування, коли знаменники дорівнюють 0?


16

Точність визначається як:

p = справжні позитиви / (справжні позитиви + хибні позитиви)

Яке значення точності, якщо (справжні позитивні + хибні позитивні) = 0? Це просто невизначено?

Те саме запитання для відкликання:

r = справжні позитиви / (справжні позитиви + хибні негативи)

У цьому випадку, яке значення пригадування, якщо (справжні позитиви + хибні негативи) = 0?

PS Це запитання дуже схоже на питання Які правильні значення для точності та відкликання у кращих випадках? .


1
Гей, це навіть відповідає у двох примірниках; але давайте назвемо це гарним дублікатом.

Відповіді:


9

Тут також застосовуються відповіді на пов'язане попереднє запитання.

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

Якщо (справжні позитиви + хибні позитивні значення) = 0, тоді всі випадки прогнозуються як негативні: це один кінець кривої ROC. Знову ж таки, ви хочете розпізнати та повідомити про цю можливість, уникаючи поділу на нульову помилку.


Дякую Генрі за відповідь. Якщо я правильно розумію, в першому випадку, ви НЕ хочете , щоб розпізнати і повідомити результат, в той час як в останньому випадку ви робите . Це правильно?
Раффі Хатчадуріан

Так: у випадку відсутності позитивного вводу точність є безглуздою; у випадку, коли не передбачено позитиву, ви хочете повідомити, що тест встановлено вкрай негативно.
Генрі

5

Цікава відповідь пропонується тут: https://github.com/dice-group/gerbil/wiki/Precision,-Recall-and-F1-measure

Автори вихідних модулів різних оцінок для точності і згадати в залежності від того , істинні позитивів, помилкові спрацьовування і помилкові негативи всіх 0. Якщо вони, результат нібито хороший.

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

Я не впевнений, чи вдасться цей вид скорингу корисний у інших ситуаціях поза їх спеціальним випадком, але варто подумати.


1

Оцінюючи класифікатор за високими пороговими показниками, точність може (часто насправді) не дорівнювати 1, коли виклик дорівнює 0. Це зазвичай N / A! Я думаю, що щось не так у тому, як люди будують криву P / R. Уникнення зразків N / A - це зміщення в тому сенсі, що ви уникаєте зразків сингулярності. Я обчислював середню точність Wrt до середнього відкликання, ігноруючи N / A зразки, і ніколи не отримав класифікатора, починаючи з 1 для 0 відкликання для дрібної нейронної мережі при виявленні об'єкта. Це було справедливо і для кривих, обчислених з числами tp, fp, fn. Це досить легко перевірити папером та олівцем з одним зображенням. Наприклад: у мене є класифікатор, який виводить для одного зображення: preds = [. 7 .6 .5 .1 .05] true = [nynny] Обчислюючи матриці плутанини з різними порогами у нас: tp = [2 1 1 1 0 0], fn = [0 1 1 1 2 2], fp = [3 3 2 1 1 0]. відкликання rec = [1 .5 .5 .5 0 0], а точність = [. 4 .25 1/3 .5 0 NaN]. Я не бачу, як було б сенсом замінити NaN або точність (@ call == 0) на 1. 1 має бути верхньою межею, а не значенням, на яке замінюємо точність (@ call == 0).

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