Яким чином перехресне підтвердження k-кратного розміщення вписується в контекст навчальних / перевірочних / тестових наборів?


14

Моє головне питання - це намагання зрозуміти, як перехресна перевірка k-кратна вписується в контекст набору навчальних / валідаційних / тестувальних наборів (якщо вона взагалі відповідає такому контексту).

Зазвичай люди говорять про розбиття даних на навчальний, валідаційний та тестовий набір - скажімо, у співвідношенні 60/20/20 за курс Ендрю Нґ - при цьому набір перевірки використовується для визначення оптимальних параметрів для модельного навчання.

Однак, якщо хтось хотів використати перехресну перевірку k-кратної надії, сподіваючись отримати більш репрезентативний показник точності, коли кількість даних порівняно невелика, що робити перехресну перевірку k-кратну тягне за собою саме цей розкол 60/20/20 сценарій?

Наприклад, чи означає це, що ми насправді поєднуємо навчальні та тестові набори (80% даних) і робимо k-кратну перехресну перевірку на них, щоб отримати міру точності (фактично відмовляючись від наявності явного «тестового набору»? Якщо так, то яку навчану модель ми використовуємо: а) у виробництві; б) використовувати проти набору валідацій та визначати оптимальні параметри навчання? Наприклад, однією з можливих відповідей для a і b є, можливо, використання найкращої моделі.

Відповіді:


12

Перехресне підтвердження зазвичай допомагає уникнути необхідності набору перевірок.

Основна ідея навчальних / валідаційних / тестових наборів даних полягає в наступному:

  1. Тренінг: Ви випробовуєте різні типи моделей з різним вибором гіперпараметрів на даних тренувань (наприклад, лінійна модель з різним підбором ознак, нейронна сітка з різним вибором шарів, випадковий ліс з різними значеннями мтри).

  2. Перевірка: Ви порівнюєте продуктивність моделей на кроці 1 на основі набору валідацій та вибираєте переможця. Це допомагає уникнути помилкових рішень, прийнятих шляхом перевищення набору даних про навчання.

  3. Тест: Ви випробовуєте модель переможця на тестових даних лише для того, щоб відчути, наскільки вона справді ефективна. Це розгадування надягання, представленого на кроці 2. Тут ви не приймаєте жодного подальшого рішення. Це просто звичайна інформація.

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

  1. Тренінг: Дивіться вище.

  2. Перевірка: Ви робите перехресну перевірку даних тренувань, щоб вибрати кращу модель Крок 1 щодо ефективності перехресної перевірки (тут вихідні дані тренінгу неодноразово розбиваються на тимчасовий набір тренувань та перевірки). Моделі, розраховані в перехресній валідації, використовуються лише для вибору найкращої моделі Крок 1, які всі обчислюються на повному навчальному наборі.

  3. Тест: Див. Вище.


1
Дякую! Для підтвердження, у контексті резюме, у вас може бути 80% поїздів проти 20% тесту. Тоді можна побудувати модель на цих 80% даних і протестувати проти 20%, щоб отримати точність. Щоб спробувати різні варіанти моделей, можна зробити 10-кратне резюме на базі даних тренінгу (80% даних) - ефективно тренуватися на 8% від загальної кількості даних та тестувати 72% від загальної кількості даних у кожній складці. На основі результатів резюме можна визначити оптимальні значення гіперпараметрів та використовувати їх для побудови нової моделі, що навчається за всіма тренувальними даними (80% від повного набору даних) та тестування на решту 20% тестових наборів даних. Правильно?
блю

3
Так, за винятком того, що в кожному циклі резюме ви б використовували 72% для тренувань та 8% для перевірки ;-)
Майкл М

Дивовижна відповідь @MichaelM. Я читав про вкладену перехресну перевірку (NCV) , і мені важко вирішити, чи варто мені її використовувати, чи просто робити те, що ви намітили для резюме. І тільки я так розумію, NCV буде застосовано до step3. Замість того, щоб отримувати 1 бал переможця, ви отримуєте K балів переможця (помноживши загальний пробіг на K, крок 1-2 повторених K разів з різними 80% даними поїзда), які ви можете потім оцінити. Тож питання: 1) чи правильно я розумію? 2) чи рекомендується використовувати NCV?
Азіз Джавед

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

3

K

Розщеплення на навчання / валідацію / тестування також є стратегією вибірки.

K

K1

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