Тази статия ще ви научи на различните мерки за ефективност, използвани в задачите за класификация на машинното обучение. Статията ще обхване и правилното използване на тези мерки за ефективност.

Нека започнем с въпроса: какво се разбира под мярка за ефективност?

В контекста на машинното обучение можем да разглеждаме мерките за ефективност като инструмент за измерване, който ще ни каже колко добър е нашият обучен модел.

Обикновено „точността“ се счита за стандартна мярка за ефективност. Но този подход има недостатък в случай на проблем с класификацията. Нека разберем това с един пример.

Да предположим, че имаме валидиращ набор от данни със 100 реда. Целевата колона има само две уникални стойности, а именно „A“ и „B“ (типичен проблем с двоична класификация). Да предположим, че има 80 A и 20 B в целевата колона на нашия набор от данни за валидиране. Сега нека използваме основен модел, който винаги извежда „А“, независимо от входните характеристики, за да предвидим изхода за нашия набор от данни за валидиране. Тъй като този модел е изключително прост, той най-вероятно няма да отговаря на данните и няма да обобщава добре новите данни. Но все пак тук получаваме точност от 80% на данните за валидиране. Това е много подвеждащо.

Този вид набор от данни, при който някои класове са много по-чести от други, се нарича небалансиран или изкривен набор от данни. Мярката за точност дава подвеждащи резултати за небалансираните набори от данни. Ето защо се нуждаем от други средства за измерване на производителността на нашия модел.

Не се препоръчва използването на мярката за ефективност на точността за изкривения набор от данни.

Забележка: Добре е да използвате мярката за точност за балансирания набор от данни.

Нека научим някои други мерки за ефективност.

  1. матрица на объркване
  2. прецизност
  3. припомням си
  4. f1-резултат
  5. Площта под кривата на работната характеристика на приемника (ROC).

Матрица на объркването

Общата идея на матрицата на объркването е да преброи броя пъти, когато случаите на „A“ са класифицирани като „B“ и обратно.

За да изчислите матрицата на объркването, първо трябва да имате прогнози, които могат да бъдат сравнени с действителните целеви стойности.

Всеки ред в матрицата на объркването представлява действителен клас, докато всяка колона представлява предвиден клас.

Нека вземем пример, при който целевата колона има уникални категории, наречени „A“ и „B“. Нека наречем B не-A тук.

Ето как ще изглежда типичната матрица на объркването.

TN, FP, FN и TP означават съответно истински отрицателен, фалшиво положителен, фалшиво отрицателен и истински положителен. Сега нека разберем какво означават тези терминологии.

True negative (TN) предоставя броя на стойностите на отрицателните характеристики (не-A), които са били правилно предсказани като отрицателни.

Фалшиво положително (FP) предоставя броя на стойностите на отрицателните характеристики (не-A), които са били погрешно предвидени като положителни.

Фалшиво отрицателно (FN) осигурява броя на стойностите на положителните характеристики (A), които са били погрешно предвидени като отрицателни.

Истински положителни (TP) предоставя броя на стойностите на положителните характеристики (A), които са били правилно прогнозирани като отрицателни.

Можем да считаме класификатор за перфектен, когато:

  1. FP = FN = 0
  2. TP ≥ 0 и TN ≥ 0

С други думи, матрицата на объркване на един перфектен класификатор би имала ненулеви стойности само на главния си диагонал.

Матрицата на объркването ще ви даде много информация за производителността на модела. Също така, това е матрица и следователно е трудно да се разбере с един поглед. Така че бихме искали по-кратък показател за измерване на ефективността на нашия модел.

Прецизност, припомняне и F1-резултат

Прецизността и припомнянето ни дават кратки показатели за измерване на производителността на модел.

Прецизността може да се разглежда като точността на положителните прогнози. Човек може лесно да намери точността, като погледне матрицата на объркването.

Също така, припомнянето може да се намери чрез съотношение на броя на правилно прогнозираните положителни наблюдения и общия брой положителни наблюдения.

Припомнянето има и други имена като чувствителност или истински положителен процент.

Често е удобно да комбинирате прецизност и извикване в един показател, наречен f1-резултат, особено ако искате лесен начин за сравняване на два класификатора.

Хармоничната средна стойност на прецизността и припомнянето се нарича f1-резултат.

Като цяло хармоничната средна ще даде по-голяма тежест на по-ниска стойност. Ето защо класификаторът ще получи висок f1-резултат, ако и прецизността, и припомнянето са високи.

Но това няма да е така всеки път. В някои случаи може да се нуждаете от по-висока точност и по-ниско припомняне, а в някои други случаи може да се нуждаете от по-ниска точност и по-високо припомняне. Зависи от поставената задача. Нека вземем два примера, за да има смисъл.

Пример 1:

Ако сте обучили класификатор да открива видеоклипове, които са безопасни за деца. Така че за този класификатор е добре, ако някои от безопасните видеоклипове се предвидят като небезопасни. Но броят пъти, в които небезопасният видеоклип се предвижда като безопасен, трябва да бъде възможно най-малък. Това означава, че трябва да имаме строги условия за този класификатор като висок FN и нисък FP.

Високата FN предполага ниска стойност на припомняне, а ниската FP предполага висока стойност на прецизност.

Пример 2:

Да предположим, че обучите класификатор да открива крадец от магазин в камера за наблюдение. Така че в този случай е добре, ако невинен човек е предвиден като крадец (морално това не е правилният начин, но вземете предвид само контекста на машинното обучение тук). Но броят пъти, в които един крадец от магазини е предвидено да е невинен човек, трябва да бъде възможно най-малък. Това означава, че трябва да имаме строги условия за този класификатор като нисък FN и висок FP.

Ниската FN предполага висока стойност на припомняне, а високата FP предполага ниска прецизност.

Нека се върнем към случая с висока степен на запомняне и висока точност. За съжаление това не е възможно в реални сценарии. Ние или получаваме високо припомняне и ниска прецизност, или ниско припомняне и висока прецизност.

В този случай ще се опитаме да разгледаме кривата на прецизност-припомняне и да изберем точката на графиката, където и прецизността, и припомнянето са доста високи според вашата задача.

Ето как би изглеждала типичната крива на прецизно припомняне. Като разгледаме графиката, можем да получим точката, където припомнянето е = 0,65 и прецизността = 0,75. За това получихме доста висока стойност както за прецизност, така и за запомняне.

Крива на работната характеристика на приемника (ROC).

ROC кривата се използва като метрика за проблема с двоичната класификация. ROC кривата изобразява истинския положителен процент (т.е. припомняне) спрямо фалшиво положителния процент.

Ето как ще изглежда типичната ROC крива.

Истински положителен процент (TPR) и фалшиво положителен процент (FPR) могат да бъдат намерени с помощта на формулите по-долу.

Пунктираната линия представлява ROC кривата на модел на чисто произволна класификация; добрият класификатор винаги стои възможно най-далеч от тази линия (към горния ляв ъгъл).

Един от начините да открием точно колко далеч е ROC кривата на нашия модел от ROC кривата на произволния модел е да намерим площта под кривата. Ако площта под ROC кривата на нашия модел е равна на 1, тогава тя е възможно най-далеч от ROC кривата на произволния модел. Следователно в този случай нашият модел може да се счита за перфектен модел. Моделът с по-голяма площ под ROC кривата ще бъде по-добрият модел.

Площта под ROC кривата може да се използва за сравняване на два класификатора. Класификатор с по-голяма площ под своята ROC крива ще бъде по-добър модел по отношение на производителността.

Кога да използваме крива на прецизно извикване и кога да използваме ROC крива?

Като основно правило, трябва да предпочитате крива на прецизно припомняне винаги, когато положителният клас е рядък или когато ви интересуват повече фалшивите положителни резултати, отколкото фалшивите отрицателни. В противен случай използвайте ROC кривата.

например, ако изучаваме инфекция от рядко заболяване, тогава ще получим редкия положителен клас. В този случай кривата на прецизност-припомняне би била по-добрият избор като мярка за ефективност.

Допълнителна информация:

документация на scikit-learn

(1527) Матрицата БЕЗ ОБЪРЪШКВАНЕ! // Какво представлява матрицата на объркване? // Визуално обяснение на матрицата на объркването — YouTube

(1527) Никога не забравяй! // Прецизност срещу припомняне с ясен пример за прецизност и припомняне — YouTube

Книга, наречена „Практично машинно обучение със Scikit-Learn, Keras & TensorFlow“

Outro

Надявам се, че сте харесали тази статия. Последвайте ме в среда, за да прочетете повече подобни статии.

Свържете се с мен на

LinkedIn

уеб сайт

Изпратете ми имейл на [email protected]