Як статистично порівняти ефективність класифікаторів машинного навчання?


29

На основі оціночної точності класифікації я хочу перевірити, чи є один класифікатор статистично кращим на базовому наборі, ніж інший класифікатор. Для кожного класифікатора я вибираю навчальний та тестовий зразок випадковим чином із базового набору, треную модель та тестую модель. Я роблю це десять разів для кожного класифікатора. Тому я маю десять оцінок точності класифікації оцінок для кожного класифікатора. Як я статистично перевіряю, чи кращий класифікатор , ніж c l a s s i f i e r 2classifier1classifier2на базовому наборі даних. Який t-тест доцільно використовувати?


Ви протестували класифікатори на одних і тих же зразках? тобто зразок1, с1 (зразок1), с2 (зразок1)? Або ви використовували різні зразки для кожного класифікатора?
Джон Моллер

Парний t-тест був би доречним у цьому сценарії.
GEL

1
@lewellen: точність пропорція: t-тести зазвичай не підходять.
cbeleites підтримує Моніку

3
@JohnMoeller: "Різниця пропорцій" - це пошуковий термін, незалежний або залежний, про який ми ще не знаємо. Якщо це в парі: тест Макнемара. Я здогадуюсь, що t-тест означає досить невеликий розмір вибірки, тому, можливо, нормальне наближення не є хорошою ідеєю. Я б пішов на статистичні методи для ставок та пропорцій, щоб переглянути деталі.
cbeleites підтримує Моніку

2
@JohnMoeller: Я кажу, що кожна точність є пропорцією. Якщо ви хочете порівняти їх, використовуйте методи "різниці пропорцій". Я розширив це на відповідь, щоб запобігти нескінченним коментарям.
cbeleites підтримує Моніку

Відповіді:


14

nnp1p2

У базовому наборі даних є щонайменше 4000 записів на клас, тому обраний я вибір може бути чим-небудь меншим, ніж цей. Найбільшим недоліком тесту різниці пропорцій є те, що вони ігнорують "внутрішню варіацію алгоритму навчання". Я думаю, що це важливо для класифікатора такої нейронної мережі, якою я користуюся.
ентропія

ну, це зовсім інша ситуація від тієї, на яку співав ДжонМоеллер. Якщо ви маєте на увазі нестабільність моделі за допомогою "внутрішньої зміни": ви можете це виміряти. Я оновлю свою відповідь.
cbeleites підтримує Моніку

Для уточнення, 30 - це кількість разів, коли я вибираю набори тестів / тренувань розділів, а не кількість тестових балів, які я вибираю.
Джон Моеллер

@JohnMoeller: Вибачте, я цілком неправильно зрозумів це (походить із поля, де "зразок" є фізичним зразком якогось роду).
cbeleites підтримує Моніку

10

Я не маю під рукою книгу Фліс, тому все це IIRC.

Відповідаючи на питання @ JohnMoeller в коментарях на даний момент: оригінальне питання IMHO невідповідне, як воно є.

Отже, припустимо, що у мене є 30 зразків, і я перевіряю c1 і c2 на кожному зразку і записую точність для кожного зразка.

Виконуючи це, ви отримуєте таблицю на випадок 2 х 2, яка дає класифікатору 1 правильний / неправильний проти класифікатора 2 правильний / неправильний. Що є відправною точкою для тесту МакНемара . Тож це для парного порівняння, яке є більш потужним, ніж порівняння "незалежних" пропорцій (які не є абсолютно незалежними, якщо вони походять від випадкового малювання з одного і того ж кінцевого зразка).

Я зараз не можу шукати "дрібний шрифт" Макнемара, але 30 зразків - це не так багато. Тож вам, можливо, доведеться навіть переключитися з Макнемара на точний тест Фішера [або щось інше], яке обчислює біномальні ймовірності.


Засоби пропорцій:
Не має значення, ви тестуєте один і той же класифікатор 10x з 10 тестовими випадками або один раз зі всіма цими 100 випадками (таблиця 2 х 2 підраховує всі тестові випадки).

Якщо 10 оцінок точності для кожного класифікатора в первісному запитанні отримані випадковим затримкою або 10-кратною перехресною валідацією або 10-кратною перехідною системою завантаження, зазвичай припускається, що 10 сурогатних моделей, обчислених для кожного класифікатора, є еквівалентними (= мають однакову точність), тому результати тестування можна об'єднати *. Для 10-кратної перехресної перевірки ви припускаєте, що розмір тестового зразка дорівнює загальній кількості тестових зразків. Щодо інших методів я не такий впевнений: ви можете перевірити той самий випадок не один раз. Залежно від даних / проблеми / програми, це не означає стільки інформації, скільки тестування нового випадку.

k

knp^=knσ2(p^)=σ2(kn)=p(1p)n


Ну, тоді добре. Це останній шматочок, який прояснює речі, принаймні для мене. Спасибі.
Джон Моеллер

Дякуємо за відповідь. Просто не зрозуміло щодо процедури, яку слід дотримуватися. Ви говорите попередньо перехресну перевірку на один набір даних. Виміряйте точність на витриманому зразку, тобто обчисліть матрицю плутанини 2х2. Додайте десять матриць плутанини 2х2. Складіть тест Макнемара на зведеній матриці плутанини 2х2.
ентропія

@entropy: 1. Таблиця випадкових ситуацій 2x2 не є матрицею плутанини. 2. Кожен раз новий тест порівняно з тестуванням обох класифікаторів на одних і тих же даних тестування: парні тести є більш потужними (і можливі тут). Дивіться оновлену відповідь.
cbeleites підтримує Моніку

Вибачте за це, так, таблиця надзвичайних ситуацій. Чи правильно я стверджую, що тест Мак-Немара також перекладається безпосередньо на багатокласну проблему.
ентропія

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