Вибір тренувальних та валідаційних даних
Розділ: Штучний інтелект
📌 Про що ця тема
Тут перевіряють, як правильно поділити набір даних для навчання моделі штучного інтелекту (машинного навчання) так, щоб вона добре працювала не лише на знайомих, а й на нових даних. Ключове поняття — поділ даних на тренувальну, валідаційну та тестову вибірки й уникнення перенавчання.
📖 Головне
• Тренувальні дані (training set) — на них модель безпосередньо навчається, підбираючи свої параметри (ваги).
• Валідаційні дані (validation set) — на них перевіряють модель під час налаштування, щоб обрати найкращі гіперпараметри й не допустити перенавчання. Модель на них НЕ навчається.
• Тестові дані (test set) — остаточна незалежна перевірка якості вже готової моделі. Використовуються один раз у кінці.
• Типовий поділ: приблизно 70% тренувальні, 15% валідаційні, 15% тестові (або 80/20, 60/20/20 — пропорції орієнтовні).
• Головна вимога: вибірки не повинні перетинатися — одні й ті самі приклади не можна одночасно використовувати для навчання й перевірки.
• Дані мають бути репрезентативними — відображати всі класи й ситуації, які трапляться реально. Якщо якийсь клас відсутній у тренуванні, модель його не розпізнає.
• Перед поділом дані часто перемішують (shuffle), щоб вибірки були збалансованими й не залежали від порядку запису.
• Перенавчання (overfitting) — модель «зазубрила» тренувальні дані, добре працює на них, але погано на нових. Ознака: висока точність на тренуванні й низька на валідації.
• Недонавчання (underfitting) — модель надто проста, погано працює навіть на тренувальних даних.
• Крос-валідація — спосіб перевірки, коли дані ділять на k частин і по черзі одну з них роблять валідаційною, а решту тренувальними; результати усереднюють.
🔢 Як це працює на прикладі
Є набір із 1000 зображень котів і собак.
Крок 1. Перемішуємо зображення, щоб коти й собаки були рівномірно розподілені.
Крок 2. Ділимо: 700 — тренувальні, 150 — валідаційні, 150 — тестові.
Крок 3. Навчаємо модель на 700 зображеннях.
Крок 4. Перевіряємо на 150 валідаційних: якщо точність на тренуванні 98%, а на валідації 70% — це перенавчання, треба спростити модель або додати даних.
Крок 5. Коли результат задовільний, робимо фінальну перевірку на 150 тестових — це чесна оцінка реальної якості.
⚠️ Типові помилки
• Плутають валідаційні й тестові дані: валідація — для налаштування під час роботи, тест — одноразова фінальна оцінка.
• Перевіряють модель на тих самих даних, на яких навчали, — оцінка виходить завищеною й несправжньою.
• Забувають перемішати дані, і в одну вибірку потрапляє лише один клас.
• Вважають високу точність на тренуванні ознакою хорошої моделі, ігноруючи перенавчання.
• Беруть надто маленьку вибірку, яка не представляє всі випадки.
🎯 Що завчити напамʼять
• Три види вибірок: тренувальна (навчання), валідаційна (налаштування), тестова (фінальна оцінка).
• Орієнтовні пропорції: 70/15/15 або 80/20.
• Перенавчання = добре на тренуванні, погано на нових даних.
• Вибірки не перетинаються; дані перемішують і роблять репрезентативними.
🧠 Перевір себе
1. Для чого потрібна валідаційна вибірка?
2. Що таке перенавчання і як його помітити?
3. Чому не можна оцінювати модель на тренувальних даних?
4. Навіщо перемішувати дані перед поділом?
Відповіді: 1 — для налаштування моделі й вибору гіперпараметрів без навчання на цих даних; 2 — модель добре працює на тренувальних даних і погано на нових; помітно за високою точністю на тренуванні й низькою на валідації; 3 — оцінка буде завищеною, бо модель уже «бачила» ці приклади; 4 — щоб класи рівномірно розподілились між вибірками й результат не залежав від порядку даних.