Активное обучение - это специализированная область машинного обучения (ML), в которой алгоритм обучения может интерактивно запрашивать у пользователя, часто называемого "оракулом" или человеком-аннотатором, метки для новых точек данных. В отличие от традиционного Supervised Learning, которое опирается на большой, предварительно помеченный набор данных, Active Learning нацелено на достижение высокой производительности модели при минимальных усилиях по маркировке за счет стратегического выбора наиболее информативных немеченых экземпляров для аннотации. Этот подход особенно ценен в тех областях, где получение меченых данных дорого, занимает много времени или требует экспертных знаний.
Как работает активное обучение
Процесс активного обучения обычно проходит по итерационному циклу:
- Начальная тренировка: Модель, например Ultralytics YOLO модель для обнаружения объектов, обучается на небольшом, изначально помеченном наборе данных.
- Запрос: Обученная модель анализирует пул немаркированных данных и использует определенную стратегию запросов для выбора точек данных, которые она считает наиболее информативными или неопределенными.
- Аннотация: Эти отобранные точки данных предоставляются человеку-аннотатору (оракулу) для маркировки. Эффективные методы сбора данных и аннотирования имеют здесь решающее значение.
- Переобучение: Новые помеченные экземпляры добавляются в обучающий набор.
- Итерация: Модель переобучается на расширенном наборе данных с метками, и цикл (шаги 2-5) повторяется до тех пор, пока не будет достигнут критерий остановки, например, достигнут желаемый уровень точности, исчерпан бюджет на метки или замечена убывающая отдача в улучшении производительности.
Стратегии запросов
Суть активного обучения заключается в стратегии запросов - методе, который используется для выбора точек немаркированных данных для следующего запроса. К распространенным стратегиям относятся:
- Выборка неопределенности: Выборка случаев, когда модель наименее уверена в своем предсказании. Это, пожалуй, самая распространенная стратегия. Более подробную информацию можно найти в академических обзорах вроде этого, написанного Берром Сеттлзом.
- Query-by-Committee (QBC): Обучение нескольких моделей (комитета) и выбор тех случаев, когда члены комитета больше всего расходятся во мнениях относительно предсказания.
- Ожидаемое изменение модели: Выбор экземпляров, которые вызвали бы наибольшее изменение параметров модели, если бы их метки были известны.
Актуальность и преимущества
Active Learning значительно снижает нагрузку на маркировку данных, которая часто является основным узким местом при разработке ML-моделей. Сосредоточив усилия по аннотированию на наиболее значимых точках данных, оно позволяет командам:
- Добейся сопоставимой или даже лучшей производительности модели, используя значительно меньшее количество меток.
- Сократи расходы, связанные с экспертной аннотацией.
- Ускорь жизненный цикл разработки модели.
- Создавай более надежные модели, ориентируясь на сложные или неоднозначные примеры.
Применение в реальном мире
Активное обучение находит применение в самых разных областях:
- Анализ медицинских изображений: В таких задачах, как обнаружение опухолей в медицинской визуализации, система активного обучения может представить радиологам наиболее неоднозначные рентгеновские снимки или снимки МРТ, максимально увеличивая ценность их экспертного времени и ускоряя развитие диагностического ИИ. Это крайне важно для совершенствования ИИ-решений в здравоохранении.
- Обработка естественного языка (NLP): Для таких задач, как анализ настроения или распознавание именованных сущностей, Active Learning может отбирать неопределенные фрагменты текста (например, посты в социальных сетях, отзывы покупателей) для проверки человеком, быстро повышая производительность модели при меньшем количестве ручных меток по сравнению со случайной выборкой данных.
Активное обучение против смежных концепций
- Супервизорное обучение: Полностью полагается на уже существующий, полностью помеченный набор данных. В процессе обучения он не выбирает данные для маркировки интерактивно.
- Полуподконтрольное обучение: Также использует как меченые, так и немеченые данные, но обычно использует немеченые данные автоматически, основываясь на предположениях о структуре данных (например, кластеризация, предположения о многообразии), а не активно запрашивает конкретные метки. Подробнее об этом читай в нашем глоссарии в статье "Полуподконтрольное обучение".
- Обучение с подкреплением: Обучается путем проб и ошибок, взаимодействуя с окружающей средой, получая вознаграждения или штрафы. Оно сосредоточено на обучении оптимальным действиям, а не на эффективной маркировке данных, как активное обучение. Узнай больше о Reinforcement Learning в нашем глоссарии.
Инструменты и реализация
Реализация активного обучения часто включает в себя интеграцию ML-моделей с инструментами аннотации и управление рабочим процессом данных. Такие платформы, как DagsHub предлагают инструменты для построения конвейеров активного обучения, о чем говорилось в их докладеYOLO VISION 2023. В эти конвейеры можно интегрировать программы для аннотирования, такие как Label Studio. Эффективное управление наборами данных и обученными моделями очень важно, и такие платформы, как Ultralytics HUB, предоставляют инфраструктуру для организации наборов данных и моделей на протяжении всего цикла разработки.