Порогові значення й матриця помилок (також матриця плутанини або матриця невідповідностей)

Припустимо, у вас є модель логістичної регресії для виявлення спаму в електронній пошті, яка прогнозує значення від 0 до 1, що представляє ймовірність того, що даний електронний лист є спамом. Прогноз 0,50 означає 50% ймовірність того, що електронний лист є спамом, прогноз 0,75 означає 75% ймовірність того, що електронний лист є спамом, і так далі.

Ви хочете розгорнути цю модель у поштовій програмі, щоб фільтрувати спам в окрему папку пошти. Але для цього вам потрібно перетворити необроблений числовий вихід моделі (наприклад, 0.75 ) в одну з двох категорій: «спам» або «не спам».

Щоб здійснити це перетворення, ви обираєте порогове значення ймовірності, яке називається порогом класифікації . Приклади з ймовірністю вище порогового значення потім відносяться до позитивного класу , класу, на який ви тестуєтеся (тут spam ). Приклади з нижчою ймовірністю відносяться до негативного класу , альтернативного класу (тут not spam ).

Натисніть тут, щоб отримати докладнішу інформацію про поріг класифікації.

Вам може бути цікаво: що станеться, якщо прогнозований бал дорівнюватиме порогу класифікації (наприклад, бал 0,5, де поріг класифікації також дорівнює 0,5)? Обробка цього випадку залежить від конкретної реалізації, обраної для моделі класифікації. Бібліотека Keras передбачає негативний клас, якщо бал і поріг рівні, але інші інструменти/фреймворки можуть обробляти цей випадок по-різному.

Припустимо, що модель оцінює один електронний лист як 0,99, прогнозуючи, що лист має 99% ймовірність бути спамом, а інший лист – як 0,51, прогнозуючи, що він має 51% ймовірність бути спамом. Якщо встановити поріг класифікації на 0,5, модель класифікуватиме обидва листи як спам. Якщо встановити поріг на 0,95, лише лист з оцінкою 0,99 буде класифіковано як спам.

Хоча 0,5 може здатися інтуїтивно зрозумілим порогом, це не є гарною ідеєю, якщо вартість одного типу неправильної класифікації більша за інший, або якщо класи незбалансовані. Якщо лише 0,01% електронних листів є спамом, або якщо неправильне реєстрування легітимних листів гірше, ніж потрапляння спаму до папки "Вхідні", позначка будь-чого, що модель вважає щонайменше 50% ймовірним як спам, як спам призводить до небажаних результатів.

Матриця плутанини

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

Фактично позитивний Фактичний негативний
Прогнозовано позитивний Істинно позитивний результат (TP) : Лист зі спамом правильно класифіковано як лист зі спамом. Це листи зі спамом, які автоматично надсилаються до папки зі спамом. Хибнопозитивний результат (ХСП) : електронний лист, який не є спамом і помилково класифікується як спам. Це справжні електронні листи, які потрапляють у папку зі спамом.
Прогнозовано негативно Хибнонегативний результат (ХН) : спам-лист, помилково класифікований як не спам. Це спам-листи, які не перехоплюються спам-фільтром і потрапляють до папки "Вхідні". Істинно негативний (TN) : електронний лист, який не є спамом і правильно класифіковано як такий. Це справжні електронні листи, що надсилаються безпосередньо до папки "Вхідні".

Зверніть увагу, що сума в кожному рядку дає всі прогнозовані позитивні (TP + FP) та всі прогнозовані негативні (FN + TN), незалежно від валідності. Тим часом сума в кожному стовпці дає всі дійсні позитивні (TP + FN) та всі дійсні негативні (FP + TN) значення, незалежно від класифікації моделі.

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

Вплив порогу на істинні та хибнопозитивні та хибнонегативні результати

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

Спробуйте змінити поріг самостійно.

Цей віджет містить три набори даних про іграшки:

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

Перевірте своє розуміння

1. Уявіть собі модель класифікації фішингових або шкідливих вебсайтів, де фішингові та шкідливі вебсайти належать до класу з позначкою 1 (правда), а нешкідливі вебсайти — до класу з позначкою 0 (хиба). Ця модель помилково класифікує легітимний вебсайт як шкідливий. Як це називається?
Хибнопозитивний результат
Негативний приклад (легітимний сайт) помилково класифіковано як позитивний приклад (сайт зі шкідливим програмним забезпеченням).
Справжній позитив
Справжнім позитивним результатом буде те, що сайт із шкідливим програмним забезпеченням правильно класифіковано як шкідливе програмне забезпечення.
Хибнонегативний результат
Хибнонегативним результатом буде сайт зі шкідливим програмним забезпеченням, помилково класифікований як легітимний сайт.
Справжній негатив
Справжнім негативним варіантом був би легітимний сайт, правильно класифікований як легітимний сайт.
2. Загалом, що відбувається з кількістю хибнопозитивних результатів, коли поріг класифікації збільшується? А як щодо істинно позитивних результатів? Поекспериментуйте з повзунком вище.
Зменшується як кількість істиннопозитивних, так і хибнопозитивних результатів.
Зі збільшенням порогу модель, ймовірно, прогнозуватиме менше позитивних результатів загалом, як істинних, так і хибних. Класифікатор спаму з порогом 0,9999 позначатиме електронний лист як спам, лише якщо вважатиме класифікацію ймовірною щонайменше на 99,99%, що означає, що він навряд чи неправильно позначить легітимний електронний лист, але також ймовірно пропустить справжній спам.
Збільшується кількість як істиннопозитивних, так і хибнопозитивних результатів.
Використовуючи повзунок вище, спробуйте встановити поріг на 0,1, а потім перетягнути його до 0,9. Що відбувається з кількістю хибнопозитивних та істинно позитивних результатів?
Кількість істинно позитивних результатів збільшується. Кількість хибнопозитивних результатів зменшується.
Використовуючи повзунок вище, спробуйте встановити поріг на 0,1, а потім перетягнути його до 0,9. Що відбувається з кількістю хибнопозитивних та істинно позитивних результатів?
3. Загалом, що відбувається з кількістю хибнонегативних результатів, коли поріг класифікації збільшується? А як щодо істиннонегативних результатів? Поекспериментуйте з повзунком вище.
Збільшується кількість як істинно негативних, так і хибнонегативних результатів.
Зі збільшенням порогу модель, ймовірно, прогнозуватиме більше негативних варіантів загалом, як істинних, так і хибних. За дуже високого порогу майже всі електронні листи, як спам, так і не спам, будуть класифіковані як не спам.
Зменшується кількість як істиннонегативних, так і хибнонегативних результатів.
Використовуючи повзунок вище, спробуйте встановити поріг на 0,1, а потім перетягнути його до 0,9. Що станеться з кількістю хибнонегативних та істиннонегативних результатів?
Істинно негативних результатів стає більше, а хибно негативних – менше.
Використовуючи повзунок вище, спробуйте встановити поріг на 0,1, а потім перетягнути його до 0,9. Що станеться з кількістю хибнонегативних та істиннонегативних результатів?