Кръстосано валидиране

Извод, оценка и вземане на решения от данни

Не можете да съдите за модела по неговата тренировъчна грешка; той вече е видял тези данни, така че може да „мами“ чрез наизустяване. Имате нужда от грешката му върху данни, които никога не е виждал. Оставянето на един фиксиран тестов набор (hold-out set) обаче прахосва данни и дава шумна оценка. Кръстосаното валидиране (Cross-validation) решава и двата проблема.

При k-кратното кръстосано валидиране (k-fold CV) данните се разделят на k равни части (folds). Обучавате модела върху k−1 от тях, валидирате го върху оставената една част и завъртате, така че всяка част да послужи като валидационен набор точно веднъж. Усреднете k-те валидационни грешки, за да получите стабилна оценка за това колко добре моделът обобщава.

Кръстосаното валидиране е като явяване на няколко пробни изпита, за да се прогнозира резултатът ви от реалния изпит. Ако се оценявахте само по въпроси, на които вече сте запомнили отговорите, щяхте да се надцените диво, затова всеки път отделяте нова партида въпроси, оценявате се по тях и редувате коя партида се задържа. Усредняването на вашите резултати от всички пробни явявания дава много по-стабилна прогноза за това как ще се справите в деня, отколкото би дал който и да е единичен пробен изпит.

Къде се използва това в MLКръстосаното валидиране е начинът, по който практикуващите в машинното обучение избират модели и хиперпараметри, без да се самозаблуждават. То оценява грешката при обобщаване (generalization error – това, което декомпозицията отклонение-дисперсия анализира), като използва ефективно всички данни. То също така е фронтовата линия срещу изтичането на данни (data leakage): тихият бъг, при който…
▶ Кръстосано валидиране
← Декомпозиция на отклонение и дисперсияМетрики за оценка →