Cross-Validation Modeling

Оновлено: 31.07.2023

Перехресна перевірка - це метод оцінювання моделі, який є кращим за залишкові оцінки. Складність залишкових оцінок полягає в тому, що вони не показують, наскільки добре учень впорається, коли його попросять згенерувати нові прогнози для даних, яких він раніше не бачив. Один із способів уникнути цієї проблеми під час навчання - не використовувати повний набір даних. Перед початком навчання частина даних видаляється. Після навчання видалені дані можуть бути використані для оцінки роботи моделі на "свіжих" даних. Це основна концепція підходу перехресної валідації, який охоплює широкий спектр методів оцінки моделей.

Перехресна перевірка та ML

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

Це означає, що, по-перше, ви завжди повинні проводити перехресну перевірку моделі і, по-друге, ви повинні використовувати відповідну техніку CV. Як наслідок, розуміння переваг та обмежень процедур перехресної перевірки є критично важливим.

Варто зазначити, що якщо ви хочете провести перехресну перевірку моделі, вам завжди слід звертатися до довідника моделі, оскільки деякі алгоритми машинного навчання, такі як CatBoost, включають вбудовані методи CV. Ви можете знайти їх корисними для своєї роботи з машинного навчання і використовувати їх замість вбудованих методів sklearn.

Багато стратегій складання резюме, як ви могли бачити, містять вбудовані методи навчання. Вам варто скористатися ними, оскільки вони заощадять вам багато часу на більш складних завданнях.

Перехресна перевірка та DL

Перехресна перевірка в глибинному навчанні (ГН) може бути складним завданням, оскільки більшість стратегій ГН передбачають навчання моделі щонайменше двічі.

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

Набір даних має бути розділений на три частини, відповідно до PyTorch та MxNet: навчання, валідація та тестування.

Валідація - частина набору даних для перевірки під час навчання. Навчання - частина набору даних для навчання.

Тестування - підмножина набору даних, що використовується для підтвердження остаточної валідності моделі.

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

Висновок

Варто зазначити, що іноді перехресна перевірка може бути дещо складною.

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

Нижче наведено деякі міркування, які слід мати на увазі при перехресній перевірці моделі:

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

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

Перехресна перевірка - корисна техніка. Це те, про що повинен знати кожен Data Scientist. Ви не можете завершити проект в реальному житті без перехресної перевірки моделі.