Невже завищена модель обов'язково марна?


25

Припустимо, що модель має 100% точність на даних тренувань, але 70% точність на даних тесту. Чи справедливо наступний аргумент щодо цієї моделі?

Очевидно, що це надмірна модель. Точність тесту може бути підвищена за рахунок зменшення насадки. Але ця модель все ще може бути корисною моделлю, оскільки вона має прийнятну точність для даних тесту.


17
Якщо 70% є прийнятним у конкретних програмах, я згоден з вами.
Річард Харді

6
Я б повністю погодився з @RichardHardy. Візьмемо, наприклад, випадковий ліс: Часто за будівництвом незрозумілі показники (а не продуктивність у пакетиках) наближаються до 100%, так що це сильно перевищує. Але все ж, нижчі показники, оцінені поза мішком або на наборах для тестування / перевірки, можуть бути досить високими, щоб зробити його корисною моделлю.
Майкл М

1
@Metariat Чому ні? Ця точність отримана на тестовому наборі, який не використовується на етапі тренувань.
Hossein

3
@Metariat, Такий аргумент може зняти більшу частину статистичної практики, наприклад, Оцінювач OLS в нормальній лінійній моделі, тест на рівність вибірки означає гіпотезовану величину, а що ні. Цікавим є те, що аргумент не залежить від того, наскільки модель накладається на зразок навчання. Він підходить і для моделей нижньої білизни, і для будь-якої моделі загалом. Це не правильно? t
Річард Харді

4
Я б не назвав цю модель оснащеною. Встановлена ​​переоснащена модель, яка порівнює ефективність перевірки з тестовою роботою. Навіть тоді, лише якщо продуктивність тесту була значно нижчою, ніж прийнятна, можливо, катастрофічно. Виконання тренувань нічого не означає.
Firebug

Відповіді:


32

Я думаю, що аргумент правильний. Якщо 70% є прийнятним у конкретній програмі, то модель корисна навіть у тому випадку, якщо вона є доопрацьованою (загалом, незалежно від того , переоформлена вона чи ні).

Хоча врівноваження надміру та недофінансування стосується оптимальності (шукаючи оптимальне рішення), задовільні показники - це достатність (чи модель є достатньо ефективною для виконання завдання?). Модель може бути досить хорошою, не будучи оптимальною.

Редагувати: після коментарів Firebug та Matthew Drury в рамках OP я додам, що судити про те, чи є модель переозброєною без знання ефективності перевірки, може бути проблематично. Firebug пропонує порівняти валідацію та тестові показники для вимірювання кількості перевищення. Тим не менш, коли модель забезпечує 100% точність на навчальному наборі, не доставляючи 100% точності на тестовому наборі, це є показником можливого перевиконання (особливо це стосується регресії, але не обов'язково при класифікації).


Ви попросили прикладу: візьміть код для нейронної мережі на наборі даних райдужної оболонки за адресою stats.stackexchange.com/a/273930/2958, а потім спробуйте set.seed(100)для ілюстрації, як описане тут явище та set.seed(15)навпаки. Мабуть, краще сказати "показник можливого набору"
Генрі

Чи можливо коли-небудь модель досягти 100% точності як на поїзді, так і на випробуванні, і вона не переоснащена?
Рика

1
@Breeze, я думаю, ви можете задати це питання окремою темою (і при необхідності посилання на цей контекст).
Річард Харді

Я щойно зробив посилання
Rika

25

У моєму минулому проекті з виявлення шахрайства з кредитними картками ми навмисно хочемо надто підходити для даних / жорстко закодованих, щоб пам’ятати випадки шахрайства. (Зауважимо, що накладання одного класу - це не зовсім загальна проблема, з якою говорилося в ОП.) Така система має відносно низькі помилкові позитиви та задовольняє наші потреби.

Тож, я б сказав, переобладнана модель може бути корисною для деяких випадків.


5
Ця відповідь є досить цікавою, оскільки представляє випадок використання. Я думаю, що з "важко кодованим запам'ятати" @ hxd1011 означає, що модель переконалася, що кожен із випадків шахрайства призводить до "прапора шахрайства" і що їх не згладжували чи не інтерполювали за допомогою, uhm, скажімо, пристосованої функції . Щось таке, правда?
IcannotFixЦе

@IcannotFixЦе так. Насправді ми спробували багато інших способів контролю за хибним позитивом. Але намагання перекрити випадки шахрайства, божевільним чином спрацювало добре.
Хайтао Ду

3
У вашому випадку вашою функцією оцінювання є надмірна вага TPR і неповна вага FPR, наприклад оцінка F_ з >> 1. (Тепер я знаю, чому компанія моєї дебетової картки настільки дратує, вони позначають будь-яку дрібницю, навіть несправні сканери карт на автозаправних станціях)βββ
smci

3
Це може дратувати, але це в тисячі разів менше дратує, ніж ваше фінансування зіпсовано, тому що хтось нечестивий отримав інформацію про вашу картку.
Меттью Друрі

12

Можливо: остерігайтесь. Коли ви говорите, що точність на 70% (однак ви її вимірюєте) достатньо хороша, вам здається, ви припускаєте, що помилки розподіляються випадковим чином або рівномірно.

Але один із способів погляду на оздоблення - це те, що це відбувається, коли модельна техніка дозволяє (і її тренувальний процес заохочує) приділяти занадто багато уваги примхам у навчальному наборі. Суб'єкти серед загальної сукупності, які поділяють ці примхи, можуть мати сильно незбалансовані результати.

Тож, можливо, ви закінчите модель, яка говорить про те, що всі червоні собаки мають рак - через цю особливість у ваших даних про навчання. Або що заміжні люди віком від 24 до 26 років майже гарантовано подають шахрайські страхові вимоги. Ваша 70-відсоткова точність залишає багато місця для кишень предметів, які не на 100% помиляються, оскільки ваша модель є надмірною.

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


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

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

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

Щоправда, вона не властива переобладнаним моделям, але вона посилюється в моделі нарядності. Я хочу сказати, що за визначенням модель є надмірною, оскільки вона явно страждає від перебільшення примх.
Уейн

7

Ні, вони можуть бути корисними, але це залежить від вашої мети. На думку спадає кілька речей:

  1. Fββ1

  2. Такий класифікатор може бути дуже корисним в ансамблі . У нас може бути один класифікатор із звичайною вагою, той, який перевантажує TPR, той, який переважає FNR. Тоді навіть просте голосування з трьох правил або усереднення дасть кращу AUC, ніж будь-який найкращий класифікатор. Якщо кожна модель використовує різні гіперпараметри (або підпробовані навчальні набори, або модельні архітектури), це купує ансамблю деякий імунітет від переодягання.

  3. Аналогічно, в режимі реального часу анти-спам, анти шахрайство або кредитування, добре і бажано використовувати ієрархію класифікаторів. Класифікатори рівня 1 повинні оцінювати дуже швидко (мс), і нормально мати високий FPR ; будь-які помилки, які вони роблять, будуть сприймані більш точними, повнофункціональними, повільнішими класифікаторами вищого рівня або, зрештою, рецензентами людини. Очевидний приклад: не дозволяйте заголовкам підроблених новин від поглинань облікового запису Twitter, як-от "Бомбовий напад Білого дому вбиває трьох", не впливати на торги в розмірах мільярдів доларів протягом мс після публікації. Це нормально для класифікатора рівня 1, щоб позначити це як позитивне для спаму; давайте дозвольте, що потрібно (трохи), щоб автоматично визначити правдивість / неправдивість сенсаційних, але неперевірених новин.


2

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

Для того, щоб переконатися, що ми знаходимось на одній сторінці термінології після коментаря @RichardHardy, давайте визначимо помилку тестування як помилку, отриману при застосуванні моделі на наборі тестування. І помилка поза вибіркою - це помилка при застосуванні моделі до всієї сукупності.

Наближення помилки поза вибіркою залежить від двох речей: самої моделі та даних.

  • "Оптимальна" модель дає точність (тестування), яка ледве залежить від даних, у цьому випадку це було б гарним наближенням. "Незалежно" від даних, помилка прогнозування буде стабільною.

  • Але точність завищеної моделі сильно залежить від даних (як ви згадали 100% на тренувальному наборі та 70% на іншому наборі). Тож може статися, що при застосуванні до іншого набору даних точність може бути дещо нижчою, ніж 70% (або вище), і у нас можуть бути погані сюрпризи. Іншими словами, 70% говорять вам про те, що ви вважаєте, але це не так.


1
Оскільки використаний тестовий набір, який набирає 70% точності, не спостерігається на етапі тренувань, чи не є хорошою оцінкою помилки поза вибіркою? Я думаю, що різниця між помилкою навчання (100%) та помилкою тестування (70%) не є хорошим показником різниці між помилкою поза вибіркою та помилкою тесту. Цілком можливо, що переобладнана модель виконує на 70% точність у реальному світі, тоді як на 100% точна для навчальних даних. Я очікую, що похибка тренінгу буде нижчою, ніж помилка тесту, оскільки дані тренувань використовуються для генерування моделі, але дані тесту не бачать під час тренінгу.
Hossein

5
Я думаю, ви, можливо, переплутали набір перевірки та тестовий набір, та їх відповідні помилки. Тест помилок є поза зразка помилки. Хоча помилка перевірки є оптимістичним показником вибраної моделі, помилка тестування не є. Тест помилок є несмещенной оцінкою того , як модель буде працювати на новому зразку з того ж населення. Ми можемо оцінити дисперсію помилки тесту, тому ми цілком чудово знаємо лише помилку тесту , доки набір тесту не надто малий. @Hossein
Річард Харді

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

1
З моєї точки зору, помилка тестування - це помилка, отримана при застосуванні моделі до засліпленого набору, це наближення помилки поза вибіркою, яка є помилкою, отриманою при застосуванні моделі до всієї сукупності. І це не те саме, цінна інформація - це помилка поза вибіркою. І коли модель переоснащена, помилка тестування не є стабільною, і в інших наборах даних можуть трапитися погані припущення.
Менаріат

4
@Metariat, ви праві, що помилка тесту - це оцінка, і вона може відрізнятися від одного тестового набору. Однак, як я вже згадував раніше, немає підстав очікувати, що помилка тесту недооцінює справжню помилку (в середньому це не так). Отже, взявши достатньо великий тестовий зразок, ми можемо пов'язати помилку тесту з бажаним рівнем впевненості у бажаному діапазоні. Тепер більш практично, можливо, ви повинні визначити помилку тесту, відредагувавши свою відповідь, щоб переконатися у відсутності непорозуміння того, що ви маєте на увазі під час порівняння помилки тесту з помилкою, яка не є вибіркою.
Річард Харді
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.