Выбор экземпляра: миф о выборке данных

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

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

Предположим, у вас около 10 миллиардов точек данных без ярлыков. Для решения подобных проблем может потребоваться контролируемый подход. Теперь возникает вопрос: Как аннотировать все эти точки данных? Если вы не найдете способ автоматизировать процесс аннотации, потребуется огромное количество времени. Даже если нам удастся создать метку для всех данных, обучение модели машинного обучения на очень большом объеме данных иногда невозможно из-за ограниченности ресурсов и может потребовать очень много времени на обучение, что также приводит к недопустимому состоянию. . В то же время большие объемы данных могут быть похожи друг на друга. Следовательно, вводится избыточность в шаблоне. Подобные избыточные данные не очень помогают в процессе изучения модели. Мы можем значительно сократить набор данных, чтобы сократить время обучения и повысить производительность, тщательно проанализировав все измерения, присутствующие в наборе данных.

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

  1. Количественная выборка
  2. Выборка на основе данных [Выбор экземпляра]

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

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

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

II. Шаблон. Этот шаг очень сложен и требует знания предметной области. В основном вручную или с помощью полуавтоматического процесса нам необходимо идентифицировать набор шаблонов / структуры из данных. Если у нас есть данные временного ряда, возможно, закономерность является периодической. Может быть, мы сможем узнать, что образец повторяется каждый месяц. Затем нам нужно отобрать кандидатов по каждому месяцу в году, но с понижением выборки данных за отдельные месяцы.

В случае текстовых данных после удаления стоп-слов мы можем заменить каждое слово соответствующей им «частью речи» следующим образом:

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

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

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

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

я. Какие все данные будут использоваться для аннотации экспертом-человеком.

II. Какие все точки данных будут использоваться для обучения модели.

iii. Как взять образец набора данных Evaluation для измерения производительности обученной модели.

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

Git: вспомогательный код доступен здесь