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

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

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

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

Натисніть тут, щоб дізнатися більше про поріг класифікації

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

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

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

Матриця помилок

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

Фактично позитивні Фактично негативні
Прогнозовані позитивні Істинно позитивний результат (TP): спам-лист, правильно класифікований як такий. Це спам-повідомлення, які автоматично розподіляються в папку для спаму. Хибно позитивний результат (FP): лист, який не є спамом, неправильно класифікований як спам. Це звичайні електронні листи, які потрапляють у папку для спаму.
Прогнозований негативний клас Хибно негативний результат (FN): спам-лист, неправильно класифікований як не такий. Це спам-повідомлення, які не перехоплюються спам-фільтром і потрапляють у папку "Вхідні". Істинно негативний результат (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. Що відбувається з кількістю хибно негативних і істинно негативних результатів?