Утечка данных в машинном обучении

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
(Новая: {{well|Статья написана с использованием LLM '''GPT-5.6 Sol Hight''' и проверена участником Участник:Aleksandra Ivanova 22:00,...)
Строка 1: Строка 1:
-
{{well|Статья написана с использованием LLM '''GPT-5.6 Sol Hight''' и проверена участником [[Участник:Aleksandra Ivanova]] 22:00, 12 июля 2026 (MSD)}}
+
Переработанная версия исходного текста с более плотной аргументацией и без шаблонных связок:
 +
'''Утечка данных в машинном обучении''' — использование при обучении, настройке или оценке модели информации, которая недоступна в момент реального предсказания либо должна оставаться независимой от процесса разработки. Такая ошибка делает проверочную выборку частью обучающего процесса или передаёт модели сведения о ещё неизвестной [[Целевая переменная|целевой переменной]]. Полученная оценка качества перестаёт характеризовать способность модели работать на новых данных.<ref>Kaufman S., Rosset S., Perlich C., Stitelman O. Leakage in Data Mining: Formulation, Detection, and Avoidance // ACM Transactions on Knowledge Discovery from Data. 2012. Vol. 6, No. 4. Article 15. P. 1–21.</ref>
-
== Дисбаланс классов ==
+
Утечку часто смешивают с [[Переобучение|переобучением]], хотя причины этих ошибок различны. При переобучении модель слишком точно приспосабливается к случайным особенностям корректно сформированной обучающей выборки. При утечке неверно устроен сам эксперимент: алгоритм получает информацию, которая не должна участвовать в прогнозе или оценке. Регуляризация способна ограничить сложность модели, но не исправляет признак, содержащий последствия целевого события. Увеличение выборки также не устраняет ошибку, если тестовые объекты продолжают влиять на обучение.
-
'''Дисбаланс классов''' — неравномерное распределение объектов между классами в задаче [[Машинное обучение|классификации]]. Само по себе различие в численности классов не является дефектом данных и не требует обязательного выравнивания. Проблема возникает тогда, когда редкий класс недостаточно представлен для обучения и оценки модели либо когда выбранный алгоритм, критерий качества или классификационный порог не соответствуют последствиям ошибок.
+
== Определение утечки ==
-
В бинарной классификации более частый класс называют классом большинства, а менее частый — классом меньшинства. Степень дисбаланса иногда описывают отношением
+
Пусть в момент <tex>t</tex> требуется по набору признаков <tex>X_t</tex> предсказать значение <tex>Y</tex>, которое станет известно позднее. Допустимый признак должен вычисляться только по информации, существующей к моменту <tex>t</tex>. Если некоторый признак <tex>Z</tex> зависит от будущих событий, от значения <tex>Y</tex> или от объектов проверочной выборки, он нарушает условия задачи.
-
<tex>IR=\frac{n_{\max}}{n_{\min}}</tex>
+
Решающее значение имеет не название столбца и не его положение в базе данных, а время возникновения содержащейся в нём информации. Итоговый диагноз допустим при анализе завершённых медицинских случаев, но недопустим при построении модели ранней диагностики. Статус возврата товара подходит для описания уже выполненных заказов, но не для прогноза возврата в момент покупки. Признак может быть статистически тесно связан с целью и одновременно не иметь никакой прогностической ценности.
-
где <tex>n_{\max}</tex> и <tex>n_{\min}</tex> — численности большего и меньшего классов. Это отношение характеризует только частоты меток. Оно не учитывает общий объём выборки, перекрытие распределений признаков, сложность границы между классами, ошибки разметки и стоимость неверных решений.<ref>He H., Garcia E. A. Learning from Imbalanced Data // IEEE Transactions on Knowledge and Data Engineering. 2009. Vol. 21, No. 9. P. 1263–1284. DOI: 10.1109/TKDE.2008.239.</ref>
+
Граница между доступной и недоступной информацией определяется постановкой задачи. Для неё должны быть заданы момент формирования прогноза, горизонт предсказания, источник каждого признака и задержка его обновления. Без этого формально правильный набор данных может оказаться непригодным для обучения.
-
Соотношение <tex>100:1</tex> может не создавать серьёзных затруднений, если редкий класс представлен тысячами разнообразных объектов и хорошо отделяется по признакам. Соотношение <tex>3:1</tex> способно стать существенной проблемой при малой выборке, сильном перекрытии классов или высокой стоимости пропуска положительного объекта. Поэтому дисбаланс нельзя оценивать отдельно от структуры данных и назначения модели.
+
== Утечка целевой переменной ==
-
=== Происхождение дисбаланса ===
+
'''Утечка целевой переменной''' возникает, когда один или несколько признаков содержат прямую либо косвенную информацию о предсказываемом результате.
-
'''Естественный дисбаланс''' отражает реальную распространённость событий. Мошеннические операции редки по сравнению с обычными, отказы оборудования — по сравнению с исправной работой, некоторые заболевания — по сравнению с их отсутствием. В таких задачах неравенство классов является свойством исследуемой совокупности.
+
Наиболее очевидный случай — присутствие самой метки среди признаков. На практике чаще встречаются её замаскированные копии: служебный код, присвоенный после наступления события, дата закрытия обращения, сумма фактического убытка, назначенное лечение, результат ручной проверки. Название такого поля может не указывать на связь с целью, однако его значение появляется только после того, как исход уже известен.
-
Естественное распределение особенно важно для тестовой выборки. Искусственное выравнивание классов меняет условия оценки. Например, доля ложных срабатываний среди положительных прогнозов зависит от распространённости положительного класса. Результат, полученный на выборке с равным числом положительных и отрицательных объектов, нельзя напрямую переносить в среду, где положительными являются лишь доли процента наблюдений.
+
При прогнозировании дефолта нельзя использовать сведения о передаче задолженности коллекторам. При раннем обнаружении заболевания нельзя включать процедуру, назначенную после подтверждения диагноза. При оценке вероятности отмены заказа недопустима итоговая сумма возврата. Во всех этих случаях модель не предсказывает событие, а распознаёт его последствия.
-
Иная ситуация возникает при '''смещении сбора данных'''. Вероятность попадания объекта в набор данных может зависеть от его класса, признаков или доступности разметки. Подтверждённые случаи мошенничества, например, часто сохраняются подробнее обычных операций, поскольку проходят ручную проверку. В медицинских данных тяжёлые случаи могут быть представлены чаще лёгких. Наблюдаемая доля классов тогда не совпадает с долей в целевой совокупности.
+
Особенно опасны агрегированные признаки. Например, среднее число просрочек клиента, вычисленное по всей истории, может включать периоды после рассматриваемой заявки. Сам столбец выглядит как обычная характеристика клиента, однако часть его значения относится к будущему.
-
Простое удаление объектов большинства или копирование объектов меньшинства такое смещение не исправляет. Проблема затрагивает не только <tex>P(y)</tex>, но и распределение признаков внутри классов. Отсутствующие подгруппы нельзя восстановить изменением числа уже имеющихся наблюдений.
+
== Загрязнение выборок ==
-
Распределение классов может меняться во времени. Если изменяется <tex>P(y)</tex>, а условные распределения <tex>P(x\mid y)</tex> остаются приблизительно постоянными, говорят о сдвиге априорных вероятностей. Если меняются признаки или связь между признаками и классом, имеет место более общий сдвиг распределения.<ref>Moreno-Torres J. G., Raeder T., Alaiz-Rodríguez R., Chawla N. V., Herrera F. A Unifying View on Dataset Shift in Classification // Pattern Recognition. 2012. Vol. 45, No. 1. P. 521–530. DOI: 10.1016/j.patcog.2011.06.019.</ref>
+
'''Загрязнение обучающей и проверочной выборок''' означает, что сведения о проверочных объектах влияют на обучение модели. Для этого необязательно передавать модели их метки. Достаточно вычислить по всему набору параметры предварительной обработки.
-
Изменение частоты классов влияет не только на число ошибок, но и на интерпретацию вероятностных оценок. Модель, откалиброванная на одном распределении, может систематически завышать или занижать вероятность положительного класса после изменения его распространённости.
+
При стандартизации признак преобразуется по формуле <tex>z=(x-\mu)/\sigma</tex>. Если среднее <tex>\mu</tex> и стандартное отклонение <tex>\sigma</tex> рассчитаны до разделения данных, распределение проверочной выборки уже учтено при подготовке обучающих объектов. Обычно такое загрязнение даёт небольшое смещение, но методологически оценка перестаёт быть независимой.
-
=== Влияние на обучение ===
+
Гораздо сильнее результат искажается при отборе признаков по всему набору. Если тысячи переменных сначала сравниваются с целевой переменной, а затем лучшие из них проверяются с помощью кросс-валидации, каждая проверочная часть уже участвовала в выборе признаков. Высокая точность может отражать случайные корреляции, обнаруженные с использованием всей выборки.<ref>Ambroise C., McLachlan G. J. Selection Bias in Gene Extraction on the Basis of Microarray Gene-Expression Data // Proceedings of the National Academy of Sciences. 2002. Vol. 99, No. 10. P. 6562–6566.</ref>
-
Большинство алгоритмов обучается минимизацией средней функции потерь:
+
Та же ошибка возникает при заполнении пропусков, удалении выбросов, понижении размерности, целевом кодировании категорий и балансировке классов до разбиения. Любое преобразование, параметры которого оцениваются по данным, является частью обучения. В кросс-валидации оно должно заново настраиваться внутри каждой обучающей части.
-
<tex>L=\frac{1}{n}\sum_i \ell(y_i,f(x_i))</tex>
+
== Временная утечка ==
-
Если все объекты имеют одинаковый вес, вклад класса в целевую функцию примерно пропорционален его численности. Улучшение прогнозов для большинства может сильнее уменьшать общую ошибку, чем сопоставимое улучшение для меньшинства. Модель при этом оптимизирует заданный критерий корректно, но сам критерий может не отражать цель задачи.
+
'''Временная утечка''' возникает, когда модель использует сведения, появившиеся позже момента прогноза. Она характерна не только для временных рядов. Любая задача, в которой записи имеют естественный порядок событий, требует учёта времени.
-
Этот эффект нельзя сводить к утверждению, что классификатор обязательно начнёт предсказывать только наиболее частый класс. Поведение зависит от алгоритма, функции потерь, регуляризации, разделимости классов и информативности признаков. При хорошо разделимых данных модель может надёжно распознавать редкий класс без специальных методов.
+
Случайное разделение данных часто переносит будущие наблюдения в обучающую выборку, а прошлые — в проверочную. В результате модель оценивается в более лёгких условиях, чем те, в которых будет работать. При прогнозе спроса на январь нельзя обучаться на данных февраля того же года. При оценке кредитного риска новой заявки нельзя использовать профиль клиента, пересчитанный после завершения кредита.
-
Более фундаментальная трудность связана с количеством информации. Общая выборка может содержать миллионы объектов, но если положительных примеров лишь несколько десятков, распределение редкого класса остаётся изученным слабо. Модель не видит разнообразия его возможных проявлений, а оценка качества зависит от нескольких отдельных наблюдений.
+
Утечка появляется и внутри признаков. Скользящее среднее, вычисленное симметричным окном, включает будущие значения. Средний объём продаж за текущую неделю неизвестен в её начале. Агрегат по последним тридцати дням допустим только в том случае, если все эти дни предшествуют моменту прогноза.
-
Малое число объектов меньшинства повышает дисперсию результатов. При другом разбиении данных несколько редких примеров переходят из обучающей выборки в валидационную, и значение метрики заметно меняется. По этой причине дисбаланс затрудняет не только обучение, но и выбор гиперпараметров, сравнение моделей и оценивание статистической неопределённости.
+
Корректное временное разбиение сохраняет причинный порядок: модель обучается на прошлом и проверяется на более позднем периоде. Временные признаки рассчитываются отдельно для каждого среза данных.
-
=== Оценка качества ===
+
== Утечка между связанными объектами ==
-
Доля правильных ответов определяется как
+
Стандартное случайное разбиение предполагает независимость наблюдений. Во многих наборах это предположение неверно.
-
<tex>Accuracy=\frac{TP+TN}{TP+TN+FP+FN}</tex>
+
Один пациент может быть представлен несколькими обследованиями, пользователь — несколькими действиями, документ — несколькими фрагментами, устройство — серией измерений. Если записи одной сущности попадают и в обучение, и в проверку, модель способна запомнить её устойчивые особенности. Оценка тогда показывает качество распознавания уже встречавшихся объектов, а не перенос на новые.
-
При редком положительном классе в ней преобладают объекты отрицательного класса. Классификатор, который всегда выдаёт отрицательную метку, получает долю правильных ответов, равную доле отрицательных объектов. При распространённости положительного класса <tex>1%</tex> такая модель достигнет значения <tex>0{,}99</tex>, не обнаружив ни одного положительного случая.
+
Такая же проблема возникает с дубликатами и производными объектами. Два кадра одного видеоролика могут почти не отличаться. Фрагменты одного сигнала сохраняют общий фон. После аугментации исходное изображение и его изменённая копия не должны попадать в разные выборки.
-
Для раздельной оценки ошибок используют полноту
+
Разделение в таких задачах выполняется по группам: пациентам, пользователям, документам, временным сессиям или исходным файлам. Единицей разделения служит независимая сущность, а не строка таблицы.
-
<tex>Recall=\frac{TP}{TP+FN}</tex>
+
== Утечка при выборе модели ==
-
и точность положительного класса
+
Валидационная выборка используется для выбора признаков, алгоритма, гиперпараметров и порога решения. После такого выбора она уже не является независимой: информация о её результатах повлияла на итоговую модель.
-
<tex>Precision=\frac{TP}{TP+FP}</tex>
+
Это не ошибка, пока окончательное качество измеряется на отдельной тестовой выборке. Ошибка возникает, когда тестовые результаты начинают использоваться для разработки. Повторный подбор параметров после просмотра тестовой метрики постепенно превращает тестовую выборку в валидационную, даже если её объекты формально не добавляются в обучение.
-
Полнота показывает, какая доля положительных объектов обнаружена. Точность положительного класса показывает, какая доля положительных прогнозов оказалась верной. Их гармоническое среднее задаёт меру
+
Каждый просмотр результата передаёт информацию о тестовых данных. После десятков экспериментов выбирается конфигурация, которая лучше других совпала не только с общей закономерностью, но и со случайными особенностями конкретного теста. Итоговая оценка оказывается смещённой вверх.<ref>Cawley G. C., Talbot N. L. C. On Over-fitting in Model Selection and Subsequent Selection Bias in Performance Evaluation // Journal of Machine Learning Research. 2010. Vol. 11. P. 2079–2107.</ref>
-
<tex>F_1=\frac{2\cdot Precision\cdot Recall}{Precision+Recall}</tex>
+
При интенсивном подборе гиперпараметров применяется вложенная кросс-валидация. Во внутреннем цикле выбирается конфигурация модели. Во внешнем цикле оценивается весь процесс выбора, а не отдельная заранее настроенная модель.<ref>Varma S., Simon R. Bias in Error Estimation When Using Cross-Validation for Model Selection // BMC Bioinformatics. 2006. Vol. 7. Article 91.</ref>
-
Мера <tex>F_1</tex> не учитывает число истинно отрицательных ответов и предполагает одинаковую значимость точности и полноты. Это делает её полезной не во всех задачах. Если ложноположительные и ложноотрицательные ошибки имеют разную стоимость, качество следует оценивать с учётом этой стоимости, а не заменять её одной стандартной метрикой.
+
== Числовой пример ==
-
ROC-кривая описывает зависимость полноты положительного класса от доли ложноположительных ответов при изменении порога. При сильном дисбалансе небольшая доля ложноположительных ответов может соответствовать большому абсолютному числу ошибок. Кривая точность–полнота непосредственно показывает, сколько истинно положительных объектов содержится среди положительных прогнозов, и часто лучше отражает свойства модели в задачах с редкими положительными событиями.<ref>Saito T., Rehmsmeier M. The Precision-Recall Plot Is More Informative than the ROC Plot When Evaluating Binary Classifiers on Imbalanced Datasets // PLOS ONE. 2015. Vol. 10, No. 3. Article e0118432. DOI: 10.1371/journal.pone.0118432.</ref>
+
Модель должна в момент выдачи кредита предсказывать дефолт в течение следующих девяноста дней. В проверочной выборке находятся 200 кредитов: 40 закончились дефолтом, 160 были погашены.
-
Для случайных разбиений применяют стратификацию, сохраняющую приблизительные доли классов в обучающей, валидационной и тестовой частях. Во временных данных случайная стратификация способна создать утечку будущей информации. Там требуется хронологическое разбиение, даже если доли классов в отдельных периодах различаются.
+
Среди признаков по ошибке оставлено поле «передан ли клиент в службу взыскания в течение девяноста дней после выдачи кредита». Для 38 из 40 дефолтных кредитов оно равно единице. Среди остальных кредитов единица встречается четыре раза.
-
=== Числовой пример ===
+
Простое правило относит кредит к дефолтным, если поле равно единице. Оно даёт 38 истинно положительных, 4 ложноположительных, 156 истинно отрицательных и 2 ложноотрицательных ответа.
-
Пусть тестовая выборка содержит <tex>1000</tex> объектов, из которых <tex>50</tex> относятся к положительному классу, а <tex>950</tex> — к отрицательному. Модель обнаружила <tex>20</tex> положительных объектов и пропустила <tex>30</tex>. Среди отрицательных объектов <tex>930</tex> классифицированы правильно, а <tex>20</tex> ошибочно признаны положительными.
+
Доля правильных классификаций равна <tex>Accuracy=(38+156)/200=0{,}97</tex>. Полнота дефолтного класса составляет <tex>Recall=38/40=0{,}95</tex>. Точность положительного прогноза равна <tex>Precision=38/42\approx0{,}905</tex>.
-
Следовательно, <tex>TP=20</tex>, <tex>FN=30</tex>, <tex>TN=930</tex> и <tex>FP=20</tex>. Доля правильных ответов равна
+
Эти показатели не характеризуют прогнозирование. В момент выдачи кредита поле ещё не существует, поскольку решение о взыскании принимается позднее. При реальном использовании его значение будет неизвестно. Если заменить неизвестные значения нулями, модель отнесёт все заявки к недефолтному классу. Доля правильных ответов составит <tex>160/200=0{,}80</tex>, а полнота дефолтного класса упадёт до <tex>0</tex>.
-
<tex>Accuracy=\frac{20+930}{1000}=0{,}95</tex>
+
Разница между 0,97 и 0,80 возникла не из-за изменения распределения данных. Первая оценка измеряла способность обнаруживать уже наступивший дефолт по его последствиям.
-
Значение <tex>0{,}95</tex> не отражает слабое распознавание положительного класса. Его полнота составляет
+
== Последствия утечки ==
-
<tex>Recall=\frac{20}{50}=0{,}40</tex>
+
Утечка систематически занижает оценку ошибки на новых данных. Чем сильнее недопустимый признак связан с целью, тем убедительнее выглядит ошибочный результат.
-
Модель пропускает <tex>60%</tex> положительных объектов. Точность положительного класса равна
+
Искажается не только метрика, но и интерпретация модели. Признак, содержащий сведения о результате, получает высокую важность и вытесняет слабые, но действительно доступные предикторы. Вывод о причинах события подменяется анализом его последствий.
-
<tex>Precision=\frac{20}{40}=0{,}50</tex>
+
После внедрения качество резко падает. Некоторые признаки невозможно вычислить в режиме реального времени, другие получают иные значения, третьи появляются с задержкой. Ошибка долго остаётся незаметной, поскольку обучение и внутренняя проверка повторяют один и тот же неверный процесс.
-
Половина положительных прогнозов является ложной. Одна общая точность скрывает оба свойства: большое число пропусков и высокую долю ложных срабатываний среди выданных предупреждений.
+
Сравнение алгоритмов также теряет смысл. Модель, лучше использующая утечку, может победить более устойчивый метод. Выбор архитектуры, признаков и порога тогда основан на эксперименте, который не соответствует реальной задаче.
-
=== Изменение обучающей выборки ===
+
== Обнаружение утечки ==
-
'''Уменьшение выборки большинства''' удаляет часть объектов наиболее частого класса. Оно сокращает время обучения и изменяет относительный вклад классов, но вместе с объектами может удалить информацию о структуре большинства и сложных участках границы. Метод особенно рискован при небольшом исходном наборе данных.
+
Проверка начинается с происхождения каждого признака. Должно быть известно, из какой системы он поступает, когда формируется, как часто обновляется и существовал ли он в момент прогноза. Название столбца для такой проверки недостаточно.
-
'''Увеличение выборки меньшинства''' повторно включает редкие объекты в обучение. Информация при этом не увеличивается: модель многократно видит одни и те же наблюдения. Слишком интенсивное копирование усиливает влияние шума и ошибок разметки.
+
Особого внимания требуют служебные статусы, даты завершения процессов, идентификаторы, результаты ручной проверки и агрегаты без явно заданной временной границы. Признак «число операций клиента» неполон без уточнения, какие операции и на какую дату вошли в расчёт.
-
Алгоритм SMOTE создаёт синтетические объекты интерполяцией между близкими представителями меньшинства.<ref>Chawla N. V., Bowyer K. W., Hall L. O., Kegelmeyer W. P. SMOTE: Synthetic Minority Over-sampling Technique // Journal of Artificial Intelligence Research. 2002. Vol. 16. P. 321–357. DOI: 10.1613/jair.953.</ref> Метод расширяет области пространства признаков, занятые редким классом, но не создаёт новых независимых наблюдений. При перекрытии классов синтетические точки могут попасть в неоднозначные области. При наличии ошибочно размеченных объектов интерполяция распространяет ошибку на новые примеры.
+
Необычно высокая метрика служит поводом для проверки, но сама по себе ничего не доказывает. Более содержательные признаки утечки — резкое падение качества после удаления одного столбца, большой разрыв между случайным и временным разбиением, сильное ухудшение на новых группах объектов или невозможность воспроизвести признаки в рабочей системе.
-
Простая интерполяция плохо подходит для категориальных, временных и структурированных признаков. Синтетический объект может нарушать допустимые сочетания значений, временную последовательность или внутреннюю структуру исходных данных.
+
Пересечения между выборками проверяются явно. Для табличных данных ищутся повторяющиеся идентификаторы и дубликаты строк. Для изображений, текстов и сигналов точного совпадения недостаточно: необходимо учитывать близкие копии, фрагменты одного источника и результаты аугментации.
-
Изменение выборки допустимо только внутри обучающей части каждого разбиения. Если синтетические или скопированные объекты создаются до разделения данных, связанные наблюдения могут оказаться одновременно в обучающей и тестовой выборках. Такая оценка содержит утечку данных.
+
Предварительная обработка проверяется как часть модели. У каждого преобразования должна быть собственная обучающая область. Если параметры масштабирования, отбора признаков или кодирования категорий вычислены до разбиения, оценка загрязнена.
-
=== Взвешивание и стоимость ошибок ===
+
== Предотвращение утечки ==
-
Взвешивание классов изменяет функцию потерь:
+
Сначала определяется момент прогноза. После него отсекается любая информация, появившаяся позднее. Такой подход надёжнее попыток распознавать утечку по названиям признаков.
-
<tex>L=\sum_i w_{y_i}\ell(y_i,f(x_i))</tex>
+
Данные разделяются до выполнения обучаемых преобразований. Заполнение пропусков, масштабирование, отбор признаков, понижение размерности и балансировка классов настраиваются только на обучающей части. В программной реализации эти операции объединяются с моделью в единый конвейер.
-
Больший вес редкого класса усиливает влияние ошибок на его объектах. Веса часто выбирают обратно пропорционально частотам классов, однако это правило не следует из прикладной стоимости ошибок. Оно лишь выравнивает суммарный вклад классов в обучение.
+
При кросс-валидации преобразования повторяются внутри каждого разбиения. Нельзя один раз выбрать признаки или построить компоненты по всей выборке, а затем оценивать уже подготовленные данные.
-
Слишком большой вес меньшинства может резко увеличить число ложноположительных ответов. Кроме того, перевзвешивание меняет распределение, относительно которого оптимизируется модель, и способно ухудшить калибровку вероятностей.
+
Временные задачи требуют последовательного разбиения. Данные будущего не участвуют ни в обучении, ни в построении признаков прошлого. Для каждого объекта агрегаты вычисляются по состоянию базы на соответствующий момент.
-
'''Стоимостно-чувствительная классификация''' задаёт цену разных решений напрямую.<ref>Elkan C. The Foundations of Cost-Sensitive Learning // Proceedings of the Seventeenth International Joint Conference on Artificial Intelligence. San Francisco: Morgan Kaufmann, 2001. P. 973–978.</ref> Ложноотрицательная и ложноположительная ошибки получают разные потери, соответствующие последствиям решений. Такой подход точнее отражает задачу, чем механическое выравнивание частот, но требует обоснованной оценки стоимости. Она может зависеть от конкретного объекта, времени, доступных ресурсов и последующих действий.
+
Связанные наблюдения распределяются по группам. Все записи одного пациента, пользователя, документа или исходного файла должны находиться в одной части выборки. Аугментация и передискретизация выполняются после разбиения.
-
Ансамблевые методы обучают несколько моделей на разных подвыборках или с различными весами. Они уменьшают зависимость результата от конкретного набора объектов большинства, но не исправляют непредставительность данных, систематические ошибки разметки и отсутствие важных подгрупп.
+
Тестовая выборка сохраняется до завершения разработки. По ней не выбираются гиперпараметры, признаки, порог или лучший запуск. Если результаты теста уже повлияли на решения, требуется новый независимый набор данных.
-
Если положительных примеров почти нет, задачу иногда формулируют как обнаружение аномалий или одноклассовую классификацию. Такая замена оправдана только при соответствии редкого класса понятию аномалии. Редкое событие может иметь обычные значения признаков, а необычный объект может не относиться к целевому классу.
+
== Типичные ошибки ==
-
=== Классификационный порог ===
+
К утечке приводят следующие действия:
-
Многие классификаторы возвращают не готовую метку, а численную оценку <tex>s(x)</tex> или вероятность <tex>\hat p(y=1\mid x)</tex>. Положительный класс выбирается по правилу
+
* стандартизация и заполнение пропусков до разбиения данных;
 +
* отбор признаков по всему набору;
 +
* целевое кодирование категорий без исключения проверочных меток;
 +
* балансировка классов до формирования выборок;
 +
* случайное разбиение временных наблюдений;
 +
* распределение записей одной сущности между обучением и проверкой;
 +
* использование признаков, рассчитанных после целевого события;
 +
* многократная настройка модели по тестовой метрике;
 +
* выбор лучшего запуска по результату на тестовой выборке;
 +
* публикация максимальной метрики из большого числа экспериментов без независимой оценки.
-
<tex>\hat y=1,\quad \hat p(y=1\mid x)\geq t</tex>
+
Наличие столбца в исходной базе не подтверждает его допустимость. База хранит сведения о завершённом процессе, тогда как модель часто должна работать в его начале. Между этими моментами доступный набор информации различается.
-
Порог <tex>t</tex> определяет компромисс между ложноположительными и ложноотрицательными ответами. Его снижение обычно повышает полноту и одновременно увеличивает число ложных срабатываний. Повышение порога сокращает число положительных прогнозов и увеличивает число пропущенных положительных объектов.
+
== Независимая оценка модели ==
-
Выбор порога и обучение при дисбалансе связаны, но не тождественны. Взвешивание и изменение выборки влияют на параметры модели и ранжирование объектов. Изменение порога не переобучает модель, а выбирает точку принятия решения на уже полученных оценках.
+
Оценка модели должна приближать её ожидаемый риск на новых данных: <tex>R(f)=\mathbb{E}[L(Y,f(X))]</tex>, где <tex>L</tex> обозначает функцию потерь. Тестовая ошибка может оценивать этот риск только тогда, когда тестовые данные не участвовали ни в обучении, ни в выборе модели.
-
Значение <tex>0{,}5</tex> не является универсальным. Оно соответствует частному случаю откалиброванных вероятностей и равной стоимости ложноположительной и ложноотрицательной ошибок. Если стоимость ложноположительной ошибки равна <tex>C_{FP}</tex>, а ложноотрицательной — <tex>C_{FN}</tex>, то при нулевой стоимости правильных решений порог минимальных ожидаемых потерь равен
+
Независимость относится ко всей процедуре разработки. Недостаточно обучить параметры без тестовых объектов, если тестовая метрика использовалась для выбора признаков, архитектуры или числа итераций. В этом случае оценивается конфигурация, уже приспособленная к конкретному тесту.
-
<tex>t=\frac{C_{FP}}{C_{FP}+C_{FN}}</tex>
+
Корректная тестовая выборка имитирует данные, которые поступят после завершения разработки. Для временной задачи это более поздний период. Для модели, предназначенной для новых пользователей, тест должен содержать пользователей, отсутствующих в обучении. Для применения в другом учреждении наиболее строгой проверкой становится внешняя выборка из этого учреждения.
-
Формула применима только к вероятностям, соответствующим целевому распределению. После искусственного изменения долей классов выход модели может перестать совпадать с вероятностью события в реальной среде. В таком случае требуется коррекция априорных вероятностей или отдельная калибровка.<ref>Saerens M., Latinne P., Decaestecker C. Adjusting the Outputs of a Classifier to New a Priori Probabilities: A Simple Procedure // Neural Computation. 2002. Vol. 14, No. 1. P. 21–41. DOI: 10.1162/089976602753284446.</ref>
+
Внешняя проверка не исправляет ошибочный обучающий процесс, но обнаруживает зависимости, связанные с конкретным источником или способом сбора данных. Независимая оценка отделяет информацию, использованную для построения модели, от информации, предназначенной для проверки её обобщающей способности.<ref>Vabalas A., Gowen E., Poliakoff E., Casson A. J. Machine Learning Algorithm Validation with a Limited Sample Size // PLoS ONE. 2019. Vol. 14, No. 11. e0224365.</ref>
-
 
+
-
Порог выбирают по валидационной выборке, а не по тестовой. Использование тестовых данных для настройки порога превращает их в часть процедуры обучения и делает итоговую оценку смещённой.
+
-
 
+
-
=== Многоклассовая и многометочная классификация ===
+
-
 
+
-
В многоклассовой задаче дисбаланс может затрагивать несколько классов одновременно. Каждый редкий класс имеет собственную численность, степень перекрытия с другими классами и стоимость ошибок. Одного общего отношения между большинством и меньшинством для описания такой структуры недостаточно.
+
-
 
+
-
Микроусреднение метрик объединяет решения по всем классам и поэтому сильнее зависит от частых классов. Макроусреднение сначала вычисляет метрику для каждого класса, затем усредняет результаты с одинаковыми весами. Оно выявляет слабое качество на редких классах, но становится нестабильным, если некоторые классы представлены несколькими объектами.
+
-
 
+
-
В многометочной классификации один объект может одновременно принадлежать нескольким классам. Здесь важны не только частоты отдельных меток, но и частоты их сочетаний. Независимое увеличение редких меток может создать сочетания, отсутствующие или невозможные в исходных данных. Оценка должна учитывать качество по отдельным меткам и по их совместным наборам.
+
-
 
+
-
=== Обнаружение редких событий ===
+
-
 
+
-
В задачах обнаружения редких событий число положительных объектов может быть недостаточным даже для надёжного вычисления метрик. Несколько дополнительных ошибок заметно меняют полноту, точность и площадь под кривой. Одно числовое значение без оценки неопределённости создаёт ложное представление о стабильности результата.
+
-
 
+
-
Практическое качество таких систем определяется не только относительными метриками. Существенны число ложных тревог на единицу потока, нагрузка на последующую проверку, время обнаружения и устойчивость на разных временных интервалах. Высокое значение ROC-AUC совместимо с неприемлемым числом ложных срабатываний при очень большой доле отрицательных объектов.
+
-
 
+
-
=== Типичные ошибки ===
+
-
 
+
-
Наиболее распространённая ошибка — считать любое неравенство классов проблемой, которую необходимо устранить. Выравнивание частот без анализа структуры данных может ухудшить модель и исказить вероятностные оценки.
+
-
 
+
-
Выбор модели только по общей точности скрывает ошибки редкого класса. Противоположная крайность — игнорировать качество большинства и оптимизировать только полноту меньшинства. Результатом может стать система, выдающая слишком много ложных предупреждений для практического применения.
+
-
 
+
-
Обратные частоты классов не являются автоматически правильными весами. Частота события и стоимость ошибки описывают разные свойства задачи. Редкий класс не обязательно важнее частого.
+
-
 
+
-
Балансировка тестовой выборки делает оценку удобнее, но меняет смысл метрик, зависящих от распространённости класса. Основную оценку следует проводить на распределении, соответствующем среде применения.
+
-
 
+
-
Синтетическое увеличение выборки до разделения данных создаёт утечку. Настройка порога на тестовой выборке приводит к той же проблеме. Все операции, использующие метки или статистику данных, должны ограничиваться обучающей или валидационной частью в соответствии с их назначением.
+
-
 
+
-
Дисбаланс классов нельзя смешивать со смещением выборки. Изменение количества объектов не восстанавливает отсутствующие подгруппы и не исправляет систематические ошибки сбора данных.
+
-
 
+
-
=== Методологический смысл ===
+
-
 
+
-
Проблема дисбаланса находится на пересечении трёх разных вопросов: какие данные описывают целевую совокупность, какую ошибку минимизирует модель и какое решение принимается по её прогнозу.
+
-
 
+
-
Частоты классов относятся к распределению данных. Веса и функции потерь задают критерий обучения. Метрики определяют способ оценки. Классификационный порог переводит оценку модели в действие. Подмена одного уровня другим приводит к ошибочным решениям: выравнивание классов не заменяет анализ стоимости ошибок, снижение порога не улучшает способность модели ранжировать объекты, а высокая площадь под кривой не гарантирует пригодность выбранной рабочей точки.
+
-
 
+
-
Корректная работа с дисбалансом требует согласовать целевое распределение, процедуру валидации, функцию потерь, метрики и правило принятия решения. Равная численность классов не является целью. Значение имеет качество решений на данных, соответствующих реальным условиям применения.
+
== Примечания ==
== Примечания ==
Строка 174: Строка 146:
== Литература ==
== Литература ==
-
* Chawla N. V., Bowyer K. W., Hall L. O., Kegelmeyer W. P. SMOTE: Synthetic Minority Over-sampling Technique // Journal of Artificial Intelligence Research. 2002. Vol. 16. P. 321–357.
+
* Hastie T., Tibshirani R., Friedman J. The Elements of Statistical Learning: Data Mining, Inference, and Prediction. 2nd ed. New York: Springer, 2009.
-
* Elkan C. The Foundations of Cost-Sensitive Learning // Proceedings of the Seventeenth International Joint Conference on Artificial Intelligence. San Francisco: Morgan Kaufmann, 2001. P. 973–978.
+
* Kuhn M., Johnson K. Applied Predictive Modeling. New York: Springer, 2013.
-
* He H., Garcia E. A. Learning from Imbalanced Data // IEEE Transactions on Knowledge and Data Engineering. 2009. Vol. 21, No. 9. P. 1263–1284.
+
* Kaufman S., Rosset S., Perlich C., Stitelman O. Leakage in Data Mining: Formulation, Detection, and Avoidance // ACM Transactions on Knowledge Discovery from Data. 2012. Vol. 6, No. 4. Article 15. P. 1–21.
-
* Japkowicz N., Stephen S. The Class Imbalance Problem: A Systematic Study // Intelligent Data Analysis. 2002. Vol. 6, No. 5. P. 429–449.
+
* Ambroise C., McLachlan G. J. Selection Bias in Gene Extraction on the Basis of Microarray Gene-Expression Data // Proceedings of the National Academy of Sciences. 2002. Vol. 99, No. 10. P. 6562–6566.
-
* Moreno-Torres J. G., Raeder T., Alaiz-Rodríguez R., Chawla N. V., Herrera F. A Unifying View on Dataset Shift in Classification // Pattern Recognition. 2012. Vol. 45, No. 1. P. 521–530.
+
* Varma S., Simon R. Bias in Error Estimation When Using Cross-Validation for Model Selection // BMC Bioinformatics. 2006. Vol. 7. Article 91.
-
* Saerens M., Latinne P., Decaestecker C. Adjusting the Outputs of a Classifier to New a Priori Probabilities: A Simple Procedure // Neural Computation. 2002. Vol. 14, No. 1. P. 21–41.
+
* Cawley G. C., Talbot N. L. C. On Over-fitting in Model Selection and Subsequent Selection Bias in Performance Evaluation // Journal of Machine Learning Research. 2010. Vol. 11. P. 2079–2107.
-
* Saito T., Rehmsmeier M. The Precision-Recall Plot Is More Informative than the ROC Plot When Evaluating Binary Classifiers on Imbalanced Datasets // PLOS ONE. 2015. Vol. 10, No. 3. Article e0118432.
+
* Vabalas A., Gowen E., Poliakoff E., Casson A. J. Machine Learning Algorithm Validation with a Limited Sample Size // PLoS ONE. 2019. Vol. 14, No. 11. e0224365.

Версия 12:35, 13 июля 2026

Переработанная версия исходного текста с более плотной аргументацией и без шаблонных связок:

Утечка данных в машинном обучении — использование при обучении, настройке или оценке модели информации, которая недоступна в момент реального предсказания либо должна оставаться независимой от процесса разработки. Такая ошибка делает проверочную выборку частью обучающего процесса или передаёт модели сведения о ещё неизвестной целевой переменной. Полученная оценка качества перестаёт характеризовать способность модели работать на новых данных.[1]

Утечку часто смешивают с переобучением, хотя причины этих ошибок различны. При переобучении модель слишком точно приспосабливается к случайным особенностям корректно сформированной обучающей выборки. При утечке неверно устроен сам эксперимент: алгоритм получает информацию, которая не должна участвовать в прогнозе или оценке. Регуляризация способна ограничить сложность модели, но не исправляет признак, содержащий последствия целевого события. Увеличение выборки также не устраняет ошибку, если тестовые объекты продолжают влиять на обучение.

Содержание

Определение утечки

Пусть в момент t требуется по набору признаков X_t предсказать значение Y, которое станет известно позднее. Допустимый признак должен вычисляться только по информации, существующей к моменту t. Если некоторый признак Z зависит от будущих событий, от значения Y или от объектов проверочной выборки, он нарушает условия задачи.

Решающее значение имеет не название столбца и не его положение в базе данных, а время возникновения содержащейся в нём информации. Итоговый диагноз допустим при анализе завершённых медицинских случаев, но недопустим при построении модели ранней диагностики. Статус возврата товара подходит для описания уже выполненных заказов, но не для прогноза возврата в момент покупки. Признак может быть статистически тесно связан с целью и одновременно не иметь никакой прогностической ценности.

Граница между доступной и недоступной информацией определяется постановкой задачи. Для неё должны быть заданы момент формирования прогноза, горизонт предсказания, источник каждого признака и задержка его обновления. Без этого формально правильный набор данных может оказаться непригодным для обучения.

Утечка целевой переменной

Утечка целевой переменной возникает, когда один или несколько признаков содержат прямую либо косвенную информацию о предсказываемом результате.

Наиболее очевидный случай — присутствие самой метки среди признаков. На практике чаще встречаются её замаскированные копии: служебный код, присвоенный после наступления события, дата закрытия обращения, сумма фактического убытка, назначенное лечение, результат ручной проверки. Название такого поля может не указывать на связь с целью, однако его значение появляется только после того, как исход уже известен.

При прогнозировании дефолта нельзя использовать сведения о передаче задолженности коллекторам. При раннем обнаружении заболевания нельзя включать процедуру, назначенную после подтверждения диагноза. При оценке вероятности отмены заказа недопустима итоговая сумма возврата. Во всех этих случаях модель не предсказывает событие, а распознаёт его последствия.

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

Загрязнение выборок

Загрязнение обучающей и проверочной выборок означает, что сведения о проверочных объектах влияют на обучение модели. Для этого необязательно передавать модели их метки. Достаточно вычислить по всему набору параметры предварительной обработки.

При стандартизации признак преобразуется по формуле z=(x-\mu)/\sigma. Если среднее \mu и стандартное отклонение \sigma рассчитаны до разделения данных, распределение проверочной выборки уже учтено при подготовке обучающих объектов. Обычно такое загрязнение даёт небольшое смещение, но методологически оценка перестаёт быть независимой.

Гораздо сильнее результат искажается при отборе признаков по всему набору. Если тысячи переменных сначала сравниваются с целевой переменной, а затем лучшие из них проверяются с помощью кросс-валидации, каждая проверочная часть уже участвовала в выборе признаков. Высокая точность может отражать случайные корреляции, обнаруженные с использованием всей выборки.[1]

Та же ошибка возникает при заполнении пропусков, удалении выбросов, понижении размерности, целевом кодировании категорий и балансировке классов до разбиения. Любое преобразование, параметры которого оцениваются по данным, является частью обучения. В кросс-валидации оно должно заново настраиваться внутри каждой обучающей части.

Временная утечка

Временная утечка возникает, когда модель использует сведения, появившиеся позже момента прогноза. Она характерна не только для временных рядов. Любая задача, в которой записи имеют естественный порядок событий, требует учёта времени.

Случайное разделение данных часто переносит будущие наблюдения в обучающую выборку, а прошлые — в проверочную. В результате модель оценивается в более лёгких условиях, чем те, в которых будет работать. При прогнозе спроса на январь нельзя обучаться на данных февраля того же года. При оценке кредитного риска новой заявки нельзя использовать профиль клиента, пересчитанный после завершения кредита.

Утечка появляется и внутри признаков. Скользящее среднее, вычисленное симметричным окном, включает будущие значения. Средний объём продаж за текущую неделю неизвестен в её начале. Агрегат по последним тридцати дням допустим только в том случае, если все эти дни предшествуют моменту прогноза.

Корректное временное разбиение сохраняет причинный порядок: модель обучается на прошлом и проверяется на более позднем периоде. Временные признаки рассчитываются отдельно для каждого среза данных.

Утечка между связанными объектами

Стандартное случайное разбиение предполагает независимость наблюдений. Во многих наборах это предположение неверно.

Один пациент может быть представлен несколькими обследованиями, пользователь — несколькими действиями, документ — несколькими фрагментами, устройство — серией измерений. Если записи одной сущности попадают и в обучение, и в проверку, модель способна запомнить её устойчивые особенности. Оценка тогда показывает качество распознавания уже встречавшихся объектов, а не перенос на новые.

Такая же проблема возникает с дубликатами и производными объектами. Два кадра одного видеоролика могут почти не отличаться. Фрагменты одного сигнала сохраняют общий фон. После аугментации исходное изображение и его изменённая копия не должны попадать в разные выборки.

Разделение в таких задачах выполняется по группам: пациентам, пользователям, документам, временным сессиям или исходным файлам. Единицей разделения служит независимая сущность, а не строка таблицы.

Утечка при выборе модели

Валидационная выборка используется для выбора признаков, алгоритма, гиперпараметров и порога решения. После такого выбора она уже не является независимой: информация о её результатах повлияла на итоговую модель.

Это не ошибка, пока окончательное качество измеряется на отдельной тестовой выборке. Ошибка возникает, когда тестовые результаты начинают использоваться для разработки. Повторный подбор параметров после просмотра тестовой метрики постепенно превращает тестовую выборку в валидационную, даже если её объекты формально не добавляются в обучение.

Каждый просмотр результата передаёт информацию о тестовых данных. После десятков экспериментов выбирается конфигурация, которая лучше других совпала не только с общей закономерностью, но и со случайными особенностями конкретного теста. Итоговая оценка оказывается смещённой вверх.[1]

При интенсивном подборе гиперпараметров применяется вложенная кросс-валидация. Во внутреннем цикле выбирается конфигурация модели. Во внешнем цикле оценивается весь процесс выбора, а не отдельная заранее настроенная модель.[1]

Числовой пример

Модель должна в момент выдачи кредита предсказывать дефолт в течение следующих девяноста дней. В проверочной выборке находятся 200 кредитов: 40 закончились дефолтом, 160 были погашены.

Среди признаков по ошибке оставлено поле «передан ли клиент в службу взыскания в течение девяноста дней после выдачи кредита». Для 38 из 40 дефолтных кредитов оно равно единице. Среди остальных кредитов единица встречается четыре раза.

Простое правило относит кредит к дефолтным, если поле равно единице. Оно даёт 38 истинно положительных, 4 ложноположительных, 156 истинно отрицательных и 2 ложноотрицательных ответа.

Доля правильных классификаций равна Accuracy=(38+156)/200=0{,}97. Полнота дефолтного класса составляет Recall=38/40=0{,}95. Точность положительного прогноза равна Precision=38/42\approx0{,}905.

Эти показатели не характеризуют прогнозирование. В момент выдачи кредита поле ещё не существует, поскольку решение о взыскании принимается позднее. При реальном использовании его значение будет неизвестно. Если заменить неизвестные значения нулями, модель отнесёт все заявки к недефолтному классу. Доля правильных ответов составит 160/200=0{,}80, а полнота дефолтного класса упадёт до 0.

Разница между 0,97 и 0,80 возникла не из-за изменения распределения данных. Первая оценка измеряла способность обнаруживать уже наступивший дефолт по его последствиям.

Последствия утечки

Утечка систематически занижает оценку ошибки на новых данных. Чем сильнее недопустимый признак связан с целью, тем убедительнее выглядит ошибочный результат.

Искажается не только метрика, но и интерпретация модели. Признак, содержащий сведения о результате, получает высокую важность и вытесняет слабые, но действительно доступные предикторы. Вывод о причинах события подменяется анализом его последствий.

После внедрения качество резко падает. Некоторые признаки невозможно вычислить в режиме реального времени, другие получают иные значения, третьи появляются с задержкой. Ошибка долго остаётся незаметной, поскольку обучение и внутренняя проверка повторяют один и тот же неверный процесс.

Сравнение алгоритмов также теряет смысл. Модель, лучше использующая утечку, может победить более устойчивый метод. Выбор архитектуры, признаков и порога тогда основан на эксперименте, который не соответствует реальной задаче.

Обнаружение утечки

Проверка начинается с происхождения каждого признака. Должно быть известно, из какой системы он поступает, когда формируется, как часто обновляется и существовал ли он в момент прогноза. Название столбца для такой проверки недостаточно.

Особого внимания требуют служебные статусы, даты завершения процессов, идентификаторы, результаты ручной проверки и агрегаты без явно заданной временной границы. Признак «число операций клиента» неполон без уточнения, какие операции и на какую дату вошли в расчёт.

Необычно высокая метрика служит поводом для проверки, но сама по себе ничего не доказывает. Более содержательные признаки утечки — резкое падение качества после удаления одного столбца, большой разрыв между случайным и временным разбиением, сильное ухудшение на новых группах объектов или невозможность воспроизвести признаки в рабочей системе.

Пересечения между выборками проверяются явно. Для табличных данных ищутся повторяющиеся идентификаторы и дубликаты строк. Для изображений, текстов и сигналов точного совпадения недостаточно: необходимо учитывать близкие копии, фрагменты одного источника и результаты аугментации.

Предварительная обработка проверяется как часть модели. У каждого преобразования должна быть собственная обучающая область. Если параметры масштабирования, отбора признаков или кодирования категорий вычислены до разбиения, оценка загрязнена.

Предотвращение утечки

Сначала определяется момент прогноза. После него отсекается любая информация, появившаяся позднее. Такой подход надёжнее попыток распознавать утечку по названиям признаков.

Данные разделяются до выполнения обучаемых преобразований. Заполнение пропусков, масштабирование, отбор признаков, понижение размерности и балансировка классов настраиваются только на обучающей части. В программной реализации эти операции объединяются с моделью в единый конвейер.

При кросс-валидации преобразования повторяются внутри каждого разбиения. Нельзя один раз выбрать признаки или построить компоненты по всей выборке, а затем оценивать уже подготовленные данные.

Временные задачи требуют последовательного разбиения. Данные будущего не участвуют ни в обучении, ни в построении признаков прошлого. Для каждого объекта агрегаты вычисляются по состоянию базы на соответствующий момент.

Связанные наблюдения распределяются по группам. Все записи одного пациента, пользователя, документа или исходного файла должны находиться в одной части выборки. Аугментация и передискретизация выполняются после разбиения.

Тестовая выборка сохраняется до завершения разработки. По ней не выбираются гиперпараметры, признаки, порог или лучший запуск. Если результаты теста уже повлияли на решения, требуется новый независимый набор данных.

Типичные ошибки

К утечке приводят следующие действия:

  • стандартизация и заполнение пропусков до разбиения данных;
  • отбор признаков по всему набору;
  • целевое кодирование категорий без исключения проверочных меток;
  • балансировка классов до формирования выборок;
  • случайное разбиение временных наблюдений;
  • распределение записей одной сущности между обучением и проверкой;
  • использование признаков, рассчитанных после целевого события;
  • многократная настройка модели по тестовой метрике;
  • выбор лучшего запуска по результату на тестовой выборке;
  • публикация максимальной метрики из большого числа экспериментов без независимой оценки.

Наличие столбца в исходной базе не подтверждает его допустимость. База хранит сведения о завершённом процессе, тогда как модель часто должна работать в его начале. Между этими моментами доступный набор информации различается.

Независимая оценка модели

Оценка модели должна приближать её ожидаемый риск на новых данных: R(f)=\mathbb{E}[L(Y,f(X))], где L обозначает функцию потерь. Тестовая ошибка может оценивать этот риск только тогда, когда тестовые данные не участвовали ни в обучении, ни в выборе модели.

Независимость относится ко всей процедуре разработки. Недостаточно обучить параметры без тестовых объектов, если тестовая метрика использовалась для выбора признаков, архитектуры или числа итераций. В этом случае оценивается конфигурация, уже приспособленная к конкретному тесту.

Корректная тестовая выборка имитирует данные, которые поступят после завершения разработки. Для временной задачи это более поздний период. Для модели, предназначенной для новых пользователей, тест должен содержать пользователей, отсутствующих в обучении. Для применения в другом учреждении наиболее строгой проверкой становится внешняя выборка из этого учреждения.

Внешняя проверка не исправляет ошибочный обучающий процесс, но обнаруживает зависимости, связанные с конкретным источником или способом сбора данных. Независимая оценка отделяет информацию, использованную для построения модели, от информации, предназначенной для проверки её обобщающей способности.[1]

Примечания


Литература

  • Hastie T., Tibshirani R., Friedman J. The Elements of Statistical Learning: Data Mining, Inference, and Prediction. 2nd ed. New York: Springer, 2009.
  • Kuhn M., Johnson K. Applied Predictive Modeling. New York: Springer, 2013.
  • Kaufman S., Rosset S., Perlich C., Stitelman O. Leakage in Data Mining: Formulation, Detection, and Avoidance // ACM Transactions on Knowledge Discovery from Data. 2012. Vol. 6, No. 4. Article 15. P. 1–21.
  • Ambroise C., McLachlan G. J. Selection Bias in Gene Extraction on the Basis of Microarray Gene-Expression Data // Proceedings of the National Academy of Sciences. 2002. Vol. 99, No. 10. P. 6562–6566.
  • Varma S., Simon R. Bias in Error Estimation When Using Cross-Validation for Model Selection // BMC Bioinformatics. 2006. Vol. 7. Article 91.
  • Cawley G. C., Talbot N. L. C. On Over-fitting in Model Selection and Subsequent Selection Bias in Performance Evaluation // Journal of Machine Learning Research. 2010. Vol. 11. P. 2079–2107.
  • Vabalas A., Gowen E., Poliakoff E., Casson A. J. Machine Learning Algorithm Validation with a Limited Sample Size // PLoS ONE. 2019. Vol. 14, No. 11. e0224365.