Способы Обеспечения Качества Данных Для Машинного Обучения

Данные — это душа каждой модели машинного обучения.

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



Способы обеспечения качества данных для машинного обучения

Точность модели ИИ напрямую зависит от качества обучающих данных.

Современный глубокие нейронные сети во время обучения оптимизируются миллиарды параметров.

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

Мы не хотим, чтобы это случилось с вами.

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



Что такое данные обучения ИИ?

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

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



Данные обучения — это данные, которые мы используем для обучения алгоритма машинного обучения.

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

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

ограничивающие рамки , теги или соединения.

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



Данные контролируемого и неконтролируемого обучения

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

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

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

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

Например, определение уровня сходства или различия между двумя выборками данных на основе общих извлеченных признаков.

Это помогает модели делать выводы и приходить к выводам, например, разделяя похожие изображения или объединяя их в кластеры.



Способы обеспечения качества данных для машинного обучения

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

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

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



Обучение с учителем: процесс работы с обучающими данными

Все методы обучения начинаются со сбора необработанных данных из различных источников.

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

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



Способы обеспечения качества данных для машинного обучения

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

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

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

Здесь модель пытается определить важные функции, общие для всех примеров, которым вы присвоили метки.

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

Модели постоянно проверяют себя на основе набора проверочных данных, подготовленного перед этапом обучения.

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

Наборы данных для обучения, проверки и тестирования являются частями обучающих данных.

Чем больше обучающих данных у вас есть, тем выше точность модели.

Теперь давайте определим некоторые популярные термины, с которыми вы можете столкнуться при работе с наборами данных.



Что такое помеченные данные?

Размеченные данные — это данные, дополненные метками/классами, содержащими значимую информацию.

Некоторые примеры помеченных данных: изображения, помеченные как «кошка»/«собака», электронные письма/сообщения, помеченные как спам, прогнозы цен на фондовом рынке (помеченные как будущее состояние), злокачественные образования узлов с выделением многоугольника, аудиофайлы с информацией о том, какие слова произносятся.

в них.

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



Кто является оператором в контуре управления?

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

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

Люди обеспечивают постоянную обратную связь, которая улучшает производительность модели.

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

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

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

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

В этой схеме машины и люди работают рука об руку!

Способы обеспечения качества данных для машинного обучения



Наборы данных для обучения, проверки и тестирования

Ни одна модель ИИ не может быть обучена и протестирована на одних и тех же данных.

Почему? Все просто: оценка модели будет предвзятой, поскольку модель тестируется на том, что ей уже известно.

Это то же самое, что на экзамене студентам задавать те же вопросы, на которые они уже ответили в классе.

Таким образом, мы не узнаем, запомнил ли ученик ответы и действительно ли понял тему.

Те же правила применяются к моделям машинного обучения.

Вот их проценты от объемов данных:

Способы обеспечения качества данных для машинного обучения

Данные обучения — для обучения должно использоваться не менее 60% данных.

Данные проверки — выборка (10-20%) из общего набора данных, используемая для валидации и периодически проверяемая на модели во время обучения.

Этот набор проверочных данных должен представлять собой репрезентативную выборку набора обучающих данных.

Данные испытаний — этот набор данных используется для тестирования модели после ее полного обучения.

Он отделен как от обучающего набора, так и от набора проверки.

После обучения и проверки модель тестируется на тестовом наборе.

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

В общем наборе данных может быть несколько наборов тестов.

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

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



Способы обеспечения качества данных для машинного обучения

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

Например:

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

Эти тестовые наборы обычно хранятся в системе.

управление набором данных и отбираются специалистами по обработке данных вручную.

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

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

Иногда их используют для проверки качества работы и живых аннотаторов.

Такие множества называются «Золотые наборы» .



Gold Set – идеальный золотой стандарт

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

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

Золотые наборы обычно позволяют проверить следующие аспекты:

  • Время выполнения задачи.

  • Точность каждой аннотации
  • Повышение качества работы с увеличением опыта
  • Ухудшение качества работы после изменения инструкции


Слепые этапы — несколько проходов, выполняемых разными аннотаторами.

Слепые шаги — это задачи аннотации, в которых несколько человек (или моделей) назначают метки независимо друг от друга; в этом случае этап считается завершенным только в том случае, если все они пришли к одинаковому результату.

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

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

После того как все аннотаторы завершили свою версию задачи, она проходит проверку консенсуса, подтверждающую, что аннотаторы пришли к одному и тому же решению.

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



Способы обеспечения качества данных для машинного обучения



Сколько тренировочных данных вам нужно?

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

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

Для справки: 1000 примеров — достаточный набор данных.

10 000 — отличный набор данных.

100 тысяч-1 миллион — отличный набор данных.

Если у вас есть 1 миллион размеченных примеров каких-то данных, вы станете одним из лидеров среди команд разработчиков ИИ.

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

Эти наборы данных содержат несколько наборов тестов и итеративно помечаются для масштабирования задач.

Да, теоретически ты ты можешь обучите модель на 100 примерах некоторых данных.

Например, V7 позволяет обучить модель всего на 100 примерах, но на новых примерах качество будет достаточно низким.



Способы обеспечения качества данных для машинного обучения

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

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

Размер набора данных также зависит от предметной области вашей проблемы и дисперсии каждого класса.

Если вы планируете распознавать каждый бар Марса в мире, то дисперсия исчерпается после 10 000 примеров.

Модель выучит все возможные ракурсы, тип освещения и степень складок упаковки.

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

Следовательно, класс с высокой дисперсией, такой как «человек», требует гораздо больше обучающих данных.



Пять сложных аспектов расчета количества обучающих данных

Вот некоторые факторы, которые сильно влияют на размер окончательного набора данных:

Размер доступного корпуса необработанных данных

Какой объем данных уже находится в системе? Если необработанные данные недоступны, убедитесь, что их можно собрать в масштабе, необходимом в вашем случае.

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



Классовая дисперсия

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

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

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



Тип классификации

Вы выполняете распознавание объектов или семантическая сегментация ? Каждый тип проблемы классификации требует собственного объема обучающих данных.

В задачах распознавания объектов необходимо рассчитать количество ожидаемых экземпляров объекта.

Если вы ожидаете только один объект в файле, вы будете обучать модель немного медленнее, чем с 4-5 объектами.



Текущие изменения

Будет ли ваше распределение (содержание набора данных) меняться со временем? Например, если вы создаете распознаватель сотовых телефонов, вам нужно будет периодически добавлять новые обучающие данные для учета новых моделей.

Если вы занимаетесь распознаванием лиц, вам необходимо рассмотреть возможность использования масок.

Инструменты также меняются со временем: современные камеры телефонов снимают HDR-изображения с высоким разрешением, а модели, обученные на таких данных, будут работать лучше.



Сложность вашей модели

Чем больше весов имеет ваша модель, тем больше данных для обучения ей требуется.

Другими словами, по мере увеличения сложности модели увеличивается и требуемый размер набора данных.

Современные глубокие нейронные сети могут хранить миллионы или даже миллиарды параметров.

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

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



Как рассчитать необходимое количество обучающих данных?

Приблизительного расчета количества необходимых данных более чем достаточно для начала работы.

Вот несколько способов помочь в этом:

Правило десяти

Это наиболее распространенный метод приблизительной оценки.

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

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



Кривые обучения

Это более логичный подход, основанный на опыте.

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

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

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



Способы обеспечения качества данных для машинного обучения



Как улучшить качество данных обучения ИИ?

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

Под термином «качественные данные» относится к очищенным данным, содержащим все атрибуты, от которых зависит обучение модели.

Мы можем измерить качество по согласованности и точности размеченных данных.

Давайте подробнее рассмотрим этот аспект, чтобы понять, как обеспечить качество данных.



4 характеристики качественных данных для обучения моделей ML

  1. Релевантность — набор данных должен содержать только те функции, которые предоставляют модели значимую информацию.

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

  2. Последовательность — аналогичные примеры должны иметь схожие метки, обеспечивающие однородность набора данных.

  3. Единообразие — значения всех атрибутов должны быть сопоставимы для всех данных.

    Нерегулярности или выбросы в наборах данных отрицательно влияют на качество обучающих данных.

  4. Комплексность — набор данных должен содержать достаточное количество параметров или признаков, чтобы не было непокрытых крайних случаев.

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



Что влияет на качество обучающих данных?

Есть три основных фактора, которые напрямую влияют на качество обучающих данных.

Люди, процесс и инструменты (People, Process, Tool, P-P-T) — три компонента, жизненно важные для любого бизнес-процесса.

Давайте посмотрим на каждого из них.



Люди

Качество начинается с человеческих ресурсов, которым поручена маркировка.

Подбор и обучение работников оказывают существенное влияние на эффективность работы и конечные результаты.

Обучение конкретным задачам является ключом к улучшению качества данных.



Процесс

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



Инструменты

Многие платформы предоставляют компаниям инструменты, помогающие людям в этом процессе.

Они также автоматизируют части процесса, чтобы максимизировать качество данных.



Способы обеспечения качества данных для машинного обучения



Как подготовить данные обучения: рекомендации

Теперь рассмотрим рекомендации по подготовка обучающих данных .



Очистка данных

Необработанные данные могут быть очень грязными и поврежденными во многих отношениях.

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

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

Этапы процесса очистки данных зависят от конкретного набора данных.

Рекомендации:

  1. Проверьте наличие дубликатов — один и тот же пример данных может присутствовать в наборе данных несколько раз.

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

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

  2. Устранение выбросов - некоторые части данных ведут себя иначе, чем другие данные.

    Примером может служить SessionID, который постоянно появляется в данных блога.

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

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

  3. Исправьте структурные ошибки - в некоторых случаях набор данных может иметь ошибочную маркировку.

    Например, «Кот» и «кот» считаются разными классами, а «каат» и «кот» различаются из-за опечатки, приводящей к ошибочному распределению классов.

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

    Решение этой проблемы — просто не включать эти элементы в набор обучающих данных.



Разметка данных

Разметка данных — это процесс, в котором мы присваиваем значение данным в форме класса или метки.

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

Рекомендации:

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

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

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

    Кроме того, выбор среди множества меток потребует анализа большего количества признаков.

    Например, аннотаторам будет сложно размечать данные такими классами, как «Очень дорого», «Дорого», «Менее дорого».

  3. Используйте несколько проходов — разметка данных должна выполняться несколькими аннотаторами.

    Это необходимо для улучшения общего качества данных.

    Хотя это требует больше времени и ресурсов, такой подход используется для достижения консенсуса внутри команды.

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

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

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



4 способа найти качественные наборы обучающих данных

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

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



Открытые наборы данных и поисковые системы

Первый метод — изучить такие варианты, как открытые наборы данных, онлайн-форумы по машинному обучению и поисковые системы по наборам данных, которые бесплатны и относительно просты в использовании.

Существует множество веб-сайтов, которые предоставляют доступ к различным бесплатным наборам данных, например, Google Dataset Search, Kaggle, Reddit, UCI Repository. Необходимо будет только предварительно обработать данные, чтобы они подходили именно под вашу задачу.



Парсинг веб-данных

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

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



Собственные данные

Иногда приведенные выше варианты не очень подходят для сбора набора данных.

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

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



Расширение данных

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

Вместо этого вы можете немного изменить данные, чтобы расширить набор данных.

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

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

Качественные данные обучения: основные выводы

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

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

  • В обучении с учителем используются помеченные данные, а в обучении без учителя — необработанные, немаркированные данные.

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

  • Золотой комплект - выбор точно маркированные данные , который идеально представляет, как должна выглядеть правильная разметка.

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

  • 4 характеристики качественных обучающих данных: релевантность содержания, последовательность, единообразие и полнота.

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

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