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


9

За умови розміру вибірки "N", яку я планую використовувати для прогнозування даних. Які існують способи поділу даних, щоб я використовував деякі для встановлення моделі, а решту даних для перевірки моделі?

Я знаю, що на це немає чорно-білої відповіді, але було б цікаво знати деякі "великі правила" або зазвичай використовувані співвідношення. Я знаю, що ще в університеті один з наших професорів говорив про модель на 60% і перевіряв на 40%.

Відповіді:


7

Ну, як ви сказали, немає чорно-білої відповіді. Я, як правило, не поділяю дані на 2 частини, але замість цього використовую такі методи, як перехресне підтвердження k-кратного.

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

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


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

5

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

Деякі приклади:

Якщо у вас мало даних, ви, мабуть, хочете скористатися перехресною валідацією (k-fold, left-one-out тощо). Ваша модель, ймовірно, не займе багато ресурсів для підготовки та тестування. Це хороші способи отримати максимум своїх даних

У вас дуже багато даних: ви, ймовірно, хочете взяти досить великий тестовий набір, гарантуючи, що буде мало можливостей, що якісь дивні зразки дадуть великі відмінності вашим результатам. Скільки даних слід взяти? Це повністю залежить від ваших даних та моделі. Наприклад, для розпізнавання мовлення, якщо ви забираєте занадто багато даних (скажімо, 3000 речень), ваші експерименти потребуватимуть днів, оскільки фактор у реальному часі становить 7-10. Якщо ви візьмете занадто мало, це занадто сильно залежить від вибраних динаміків (які у навчальному наборі заборонено).

Пам'ятайте також, що у багатьох випадках добре мати також і перевірку / розробку!


5

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

Загальне правило таке: потяг повинен бути досить великим, щоб точність не знизилася значно, а тест повинен бути досить великим, щоб заглушити випадкові коливання.

Я все ж віддаю перевагу резюме, оскільки воно також дає вам розподіл помилок.


4

Як розширення на k-кратну відповідь, "звичайний" вибір k дорівнює або 5, або 10. Метод "відхід один" має тенденцію створювати занадто консервативні моделі. FYI, ось посилання на цей факт:

Шао, Дж. (1993), Вибір лінійної моделі шляхом перехресної валідації, Журнал Американської статистичної асоціації, Vol. 88, № 422, стор 486-494


Ви навіть читали цей документ? Проте це працює лише для лінійних моделей (навіть заголовок це показує!), Це стосується асимптотичної поведінки для нескінченної кількості об'єктів. 100 - спосіб недостатній.

1
І я бажаю вам удачі зробити 10-кратну перехресну перевірку на наборі з 9 предметами.

@mbq: Я кажу "звичайний" вибір. Не означає кожен вибір
Альборт

@mbq: я прочитав статтю; Шао повідомляє про симуляційному дослідженні, що містить лише 40 спостережень, і показує, що LOOCV недооцінює резюме Монте-Карло, за винятком випадків, коли підселекція не підходить (повний набір функцій є оптимальним). 100 - це більш ніж достатньо, принаймні, для вибору підмножини в лінійних моделях.
shabbychef

@shabbychef Ви мене тут; другий аргумент у моєму першому коментарі - це, звичайно, мотлох, я мав на увазі деякі інші твори та надмірно генералізовані. Тим не менш, я все одно буду стверджувати, що папір Шао не є хорошою орієнтиром для загального "LOO виходить з ладу для великих N", оскільки його сфера застосування зводиться до лінійних моделей.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.