Как вы можете адаптировать концепцию перекрестной проверки, чтобы получить представление о ваших конфиденциальных данных.

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

Оценка производительности

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

В типичном реальном сценарии у нас есть 3 источника данных (с соответствующей доступностью на этапе обучения):

  1. Доступно обучение, используемое для обучения и оптимизации модели;
  2. Проверка, обычно как задержка из источника 1., используется для оценки производительности развертывания, доступна;
  3. Производство, которое вы не видите, пока модель не будет развернута, недоступно.

Мы нацелены на достижение максимальной производительности на этапе обучения без потери способности к обобщению; максимизация производительности на обучающем наборе и сохранение такой производительности на валидации и (надеюсь) в производственной среде.

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

Классическая обстановка

Перекрестная проверка - это стандартный метод повторной выборки, используемый для оценки эффективности обобщения модели машинного обучения в рамках набора данных с ограниченным размером. Разделив набор данных на несколько сверток (т. Е. Фрагментов) данных, мы можем итеративно оставить одну свертку, тренироваться с оставшимися свертками и оценивать производительность вне выборки. Такой процесс широко известен как перекрестная проверка K-сгибов, где K обозначает количество складок.

Вы можете представить себе более простой разделение тренировок / тестов как K-Fold с K = 2.

Применение K-Fold даст нам K выборок показателей производительности (например, Recall, Precision), для которых мы можем не только рассчитать их типичное поведение (например, среднее значение, медиана), но и их изменчивость (например, стандартное отклонение).

В зависимости от контекста, выбор моделей для производства может быть решен на основе их стабильности (т. Е. Низкой изменчивости оценок K-Fold), а не их абсолютных характеристик (т. Е. Более высокого среднего).

Измерение перекрестной проверки

Хорошая настройка перекрестной проверки должна обеспечивать хорошую оценку эффективности обобщения как для проверочных, так и для производственных наборов данных. Эффективность проверки можно определить как оценку модели на данных, которые еще не просматривались, но доступны во время обучения. сцена. В идеале он должен давать объективную оценку нашей способности к обобщению. Таким образом, если мы наблюдаем очень разные результаты между производительностью валидации и производительностью перекрестной проверки, нам необходимо переоценить нашу зависимость от техники оценки эффективности во время обучения (т. Е. Перекрестная проверка).

Данные, чувствительные ко времени

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

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

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

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

Мы пока отбросим наши наборы данных проверки и производства, так как сосредоточимся на оценке производительности на основе набора данных обучения.

Вывод №1 - Чувствительность ко времени

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

Понимание № 2 - Распад модели

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

Вывод №3 - Влияние размера обучающей выборки

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

Идея № 3.1

Подходите с осторожностью, если производительность модели сильно зависит от времени (см. Insight # 1).

В этой альтернативе мы увеличиваем размер обучения набора данных, чтобы включать в себя еще одну кратность на каждом шаге и оценивать на следующем этапе. Пример: обучить (сложить1) и оценить (свернуть2), обучить (свернуть1 + сложить2) и оценить (свернуть3) ) и т. д.

Идея № 3.2

Подходите с осторожностью, если производительность модели сильно ухудшается (см. Insight # 2)

Одна из основных проблем с предыдущим подходом заключается в том, что мы сравниваем характеристики на основе разных данных (т. Е. Разных оценок) на каждом этапе. Это не позволяет нам понять, какое влияние оказывает увеличение размера набора данных для прогнозирования тех же данных.

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

Выводы

Мы представили концепцию перекрестной проверки, в частности перекрестной проверки K-Fold, данных, чувствительных ко времени и их несовместимости. Чтобы включить перекрестную проверку с временными данными, мы описываем 3 основных идеи, а также их применимость для лучшей оценки и понимания производительности обобщения модели.

Никакое понимание однозначно лучше / предпочтительнее, чем другие (поскольку они служат разным целям), и все они должны быть проанализированы вместе.