Какво е матрица на объркване в машинното обучение?

Матрицата на объркване е инструмент за оценка на ефективността на класификационния тип на контролираните алгоритми за машинно обучение.

Какво е матрица на объркване?

Ние, хората, възприемаме нещата различно – дори истината и лъжата. Това, което на мен може да изглежда като линия с дължина 10 см, на вас може да изглежда като линия с дължина 9 см. Но действителната стойност може да е 9, 10 или нещо друго. Това, което предполагаме, е прогнозираната стойност!

Как мисли човешкият мозък

Точно както нашият мозък прилага нашата собствена логика, за да предвиди нещо, машините прилагат различни алгоритми (наречени алгоритми за машинно обучение), за да достигнат до прогнозирана стойност за даден въпрос. Отново, тези стойности може да са същите или различни от действителната стойност.

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

И така, какво е алгоритъм за машинно обучение?

Машините се опитват да стигнат до определени отговори на проблем, като прилагат определена логика или набор от инструкции, наречени алгоритми за машинно обучение. Алгоритмите за машинно обучение са три типа – контролирани, неконтролирани или подсилени.

Типове алгоритми за машинно обучение

Най-простите типове алгоритми се наблюдават, при които ние вече знаем отговора, и ние обучаваме машините да достигат до този отговор, като обучаваме алгоритъма с много данни – точно както едно дете би разграничило хората от различни възрастови групи по гледайки чертите им отново и отново.

Контролираните ML алгоритми са два вида – класификация и регресия.

Алгоритмите за класифициране класифицират или сортират данни въз основа на набор от критерии. Например, ако искате вашият алгоритъм да групира клиенти въз основа на техните предпочитания за храна – тези, които харесват пица и тези, които не харесват пица, бихте използвали алгоритъм за класификация като дърво на решенията, произволна гора, наивен Bayes или SVM (Поддръжка векторна машина).

Кой от тези алгоритми ще свърши най-добра работа? Защо трябва да изберете един алгоритъм пред другия?

  Поставете селективни приложения в тих режим с AppSilence [Jailbreak]

Въведете матрицата на объркването….

Матрицата за объркване е матрица или таблица, която дава информация за това колко точен е класификационният алгоритъм при класифицирането на набор от данни. Е, името не е за да обърква хората, но твърде много неправилни прогнози вероятно означават, че алгоритъмът е бил объркан😉!

И така, матрицата на объркване е метод за оценка на ефективността на алгоритъм за класификация.

как?

Да приемем, че сте приложили различни алгоритми към нашия споменат по-рано двоичен проблем: класифицирайте (разделете) хората въз основа на това дали харесват или не харесват пица. За да оцените алгоритъма, който има стойности, най-близки до правилния отговор, бихте използвали матрица на объркване. За проблем с двоична класификация (харесва ми/не харесва, вярно/невярно, 1/0), матрицата на объркването дава четири стойности на мрежата, а именно:

  • Истински положителен (TP)
  • Истински отрицателен (TN)
  • Фалшиво положителен (FP)
  • Фалшиво отрицателен (FN)

Какви са четирите решетки в матрицата на объркване?

Четирите стойности, определени с помощта на матрицата на объркването, образуват решетките на матрицата.

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

True Positive (TP) и True Negative (TN) са стойностите, правилно предвидени от алгоритъма за класификация,

  • TP представлява тези, които обичат пица, и моделът ги класифицира правилно,
  • TN представлява онези, които не обичат пица, и моделът ги класифицира правилно,

Фалшиво положителен (FP) и Фалшиво отрицателен (FN) са стойностите, които са погрешно предвидени от класификатора,

  • FP представлява онези, които не харесват пица (отрицателно), но класификаторът прогнозира, че харесват пица (погрешно положително). FP се нарича още грешка тип I.
  • FN представлява онези, които обичат пица (положително), но класификаторът прогнозира, че не обичат (погрешно отрицателно). FN се нарича още грешка тип II.

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

Да приемем, че имате набор от данни от 400 души, които са преминали теста за Covid. Сега имате резултатите от различни алгоритми, които определят броя на Covid положителни и Covid отрицателни хора.

Ето двете матрици на объркване за сравнение:

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

Метрики, използващи матрица на объркване и тяхното значение

Основните показатели, които ни помагат да решим дали класификаторът е направил правилните прогнози, са:

  11 Най-добър базиран на облак контролен панел за управление на сървъри и уебсайтове

#1. Припомняне/Чувствителност

Припомняне или чувствителност, или истински положителен процент (TPR) или вероятност за откриване е съотношението на правилните положителни прогнози (TP) към общия брой положителни резултати (т.е. TP и FN).

R = TP/(TP + FN)

Припомнянето е мярката за верни положителни резултати, върнати от броя на правилните положителни резултати, които биха могли да бъдат получени. По-висока стойност на Recall означава, че има по-малко фалшиви отрицания, което е добре за алгоритъма. Използвайте Recall, когато познаването на фалшивите отрицания е важно. Например, ако човек има множество блокажи в сърцето и моделът показва, че е абсолютно добре, това може да се окаже фатално.

#2. Прецизност

Прецизността е мярката за правилните положителни резултати от всички предвидени положителни резултати, включително както истински, така и фалшиви положителни резултати.

Pr = TP/(TP + FP)

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

#3. Специфичност

Специфичност или истинска отрицателна честота (TNR) е правилните отрицателни резултати, открити от всички резултати, които биха могли да бъдат отрицателни.

S = TN/(TN + FP)

Това е мярка за това колко добре вашият класификатор идентифицира отрицателните стойности.

#4. точност

Точността е броят на правилните прогнози от общия брой прогнози. Така че, ако сте намерили правилно 20 положителни и 10 отрицателни стойности от извадка от 50, точността на вашия модел ще бъде 30/50.

Точност A = (TP + TN)/(TP + TN + FP + FN)

#5. Разпространение

Разпространението е мярката за броя на получените положителни резултати от всички резултати.

P = (TP + FN)/(TP + TN + FP + FN)

#6. F резултат

Понякога е трудно да се сравнят два класификатора (модела), като се използват само Precision и Recall, които са само аритметични средства на комбинация от четирите мрежи. В такива случаи можем да използваме F Score или F1 Score, което е средната хармонична стойност – която е по-точна, защото не варира твърде много за изключително високи стойности. По-висок F резултат (макс. 1) показва по-добър модел.

F Резултат = 2*Прецизност*Припомняне/ (Припомняне + Прецизност)

Когато е жизненоважно да се погрижите както за фалшивите положителни, така и за фалшивите отрицателни резултати, резултатът F1 е добър показател. Например, тези, които не са covid положителни (но алгоритъмът го показа), не е необходимо да бъдат ненужно изолирани. По същия начин тези, които са Covid положителни (но алгоритъмът каза, че не са), трябва да бъдат изолирани.

  Защо да извършвате проверка на себе си? Ето какво ще разберете

#7. ROC криви

Параметри като точност и прецизност са добри показатели, ако данните са балансирани. За небалансиран набор от данни високата точност може да не означава непременно, че класификаторът е ефективен. Например, 90 от 100 ученици в група знаят испански. Сега, дори ако вашият алгоритъм казва, че всичките 100 знаят испански, неговата точност ще бъде 90%, което може да даде грешна представа за модела. В случаи на небалансирани набори от данни, показатели като ROC са по-ефективни определящи.

Пример за ROC крива

Кривата ROC (работна характеристика на приемника) визуално показва ефективността на двоичен класификационен модел при различни класификационни прагове. Това е диаграма на TPR (процент на истински положителни резултати) срещу FPR (процент на фалшиви положителни резултати), който се изчислява като (1-специфичност) при различни прагови стойности. Стойността, която е най-близо до 45 градуса (горе вляво) в диаграмата, е най-точната прагова стойност. Ако прагът е твърде висок, няма да имаме много фалшиви положителни резултати, но ще получим повече фалшиви отрицателни резултати и обратно.

Като цяло, когато се изчертава ROC кривата за различни модели, този, който има най-голямата площ под кривата (AUC), се счита за по-добър модел.

Нека изчислим всички метрични стойности за нашите матрици на объркване на Класификатор I и Класификатор II:

Сравнение на показатели за класификатори 1 и 2 от проучването за пица

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

N x N матрица на объркване

Досега сме виждали матрица за объркване за двоични класификатори. Ами ако имаше повече категории от само да/не или харесвам/не харесвам. Например, ако вашият алгоритъм е да сортирате изображения с червени, зелени и сини цветове. Този тип класификация се нарича многокласова класификация. Броят на изходните променливи определя и размера на матрицата. Така че в този случай матрицата на объркване ще бъде 3×3.

Матрица на объркване за многокласов класификатор

Резюме

Матрицата на объркването е страхотна система за оценка, тъй като дава подробна информация за ефективността на класификационен алгоритъм. Работи добре както за двоични, така и за многокласови класификатори, където трябва да се вземат предвид повече от 2 параметъра. Лесно е да се визуализира матрица на объркване и ние можем да генерираме всички други показатели за производителност като F резултат, прецизност, ROC и точност, използвайки матрицата на объркване.

Можете също така да разгледате как да изберете ML алгоритми за регресионни проблеми.