Чому процедура перехресної перевірки долає проблему перевиконання моделі?
Чому процедура перехресної перевірки долає проблему перевиконання моделі?
Відповіді:
Я не можу придумати достатньо чіткого пояснення лише на даний момент, тому залишу це комусь іншому; однак перехресне підтвердження не повністю долає проблему надмірного підбору при виборі моделі, вона просто зменшує її. Помилка перехресної перевірки не має незначної дисперсії, особливо якщо розмір набору даних невеликий; іншими словами, ви отримуєте дещо інше значення залежно від конкретного зразка даних, який ви використовуєте. Це означає, що якщо ви маєте багато ступенів свободи у виборі моделі (наприклад, безліч функцій, з яких можна вибрати невелику підмножину, безліч гіпер-параметрів для налаштування, багато моделей, з яких можна вибрати), ви зможете перевиконати критерій перехресної перевірки оскільки модель налаштована так, щоб використовувати цю випадкову варіацію, а не способами, які дійсно покращують продуктивність, і ви можете закінчити модель, яка працює погано. Для обговорення цього дивКаулі і Талбот "Про перевиконання у виборі моделі та подальших зміщеннях вибору в оцінці продуктивності", JMLR, vol. 11, с. 2079−2107, 2010
На жаль, перехресне підтвердження, швидше за все, підвело вас, коли у вас є невеликий набір даних, саме тоді, коли вам потрібна перехресна перевірка найбільше. Зауважте, що перехресна перевірка k-кратна, як правило, є більш надійною, ніж перехресна валідація, що випускається один раз, оскільки вона має меншу дисперсію, але може бути дорожчою для обчислення для деяких моделей (саме тому LOOCV іноді використовується для вибору моделі, навіть якщо він має велику дисперсію).
Моя відповідь більш інтуїтивна, ніж сувора, але, можливо, це допоможе ...
Як я розумію, переозброєння є результатом вибору моделі, заснованої на навчанні та тестуванні з використанням одних і тих же даних, де у вас є гнучкий механізм підгонки: ви підходите до свого зразка даних так щільно, що ви підходите до шуму, ексклюзивів тощо інша дисперсія.
Розбиття даних на навчальний і тестовий набір не дає цього робити. Але статичний розкол не використовує ваші дані ефективно, і сам розкол може стати проблемою. Перехресне підтвердження зберігає перевагу даних, які не належать до винагороди, точних пристосувань до навчальних даних, а також використовує дані, які ви маєте максимально ефективно (тобто всі ваші дані використовуються як дані про навчання та тестування, тільки не в одному циклі).
Якщо у вас гнучкий механізм підгонки, вам потрібно обмежити вибір своєї моделі, щоб вона не сприяла «ідеальному», а складному підходить якось. Ви можете це зробити за допомогою AIC, BIC або будь-якого іншого способу штрафування, який безпосередньо карає складність, або ви можете зробити це з CV. (Або ви можете це зробити, використовуючи примірний метод, який не дуже гнучкий, що є однією з причин, що лінійні моделі приємні.)
Інший спосіб погляду на це полягає в тому, що навчання полягає в узагальненні, а надто тісний прийом в деякому сенсі не є узагальнюючим. Змінюючи те, на чому ви дізнаєтесь і на чому ви тестуєтесь, ви узагальнюєте краще, ніж якби ви дізналися лише відповіді на певний набір питань.
З точки зору Байєса, я не настільки впевнений, що перехресне підтвердження робить все, що "правильний" баєсовський аналіз не робить для порівняння моделей. Але я не на 100% впевнений, що це робить.
Що називається попереднім прогнозним розподілом . Це в основному говорить про те, наскільки добре модель спрогнозувала фактично спостережувані дані, саме це і робить перехресне підтвердження, причому "попереднє" замінюється на встановлену модель "навчання", а "дані" замінюються на "тестування" дані. Отже, якщо модель B спрогнозувала дані краще, ніж модель A, її задня ймовірність збільшується відносно моделі А. Звідси виходить, що теорема Байєса насправді зробить перехресну перевірку, використовуючи всі дані, а не підмножину. Однак я не повністю переконаний у цьому - здається, ми отримуємо щось дарма.
Ще одна особлива особливість цього методу полягає в тому, що він має вбудовану «оккаму бритву», задану співвідношенням констант нормалізації попередніх розподілів для кожної моделі.
Однак перехресне підтвердження здається цінним для жахливого старого "чогось іншого" або того, що іноді називають "неправильним визначенням моделі". Мене постійно мучить те, чи має значення це "щось інше" чи ні, бо, здається, це має мати значення - але це залишає вас паралізованим без рішення взагалі, коли це, мабуть, має значення. Просто щось, що може принести вам головний біль, але ви нічого не можете з цим зробити, окрім думки про те, що це може бути "щось інше", і спробувати це у вашій моделі (щоб вона більше не була частиною "чогось іншого") .
Крім того, перехресне підтвердження - це спосіб насправді зробити байєсівський аналіз, коли інтеграли, наведені вище, смішно важкі. І перехресне підтвердження "має сенс" майже для когось - це "механічне", а не "математичне". Тож легко зрозуміти, що відбувається. А також, здається, змусити голову зосередитися на важливій частині моделей - робити хороші прогнози.