Что такое активное обучение?
Цель этой публикации - помочь демистифицировать активное обучение и показать, чем оно отличается от стандартного машинного обучения с учителем.
Во-первых, что такое активное обучение? Активное обучение - это структура машинного обучения, в которой алгоритм обучения может интерактивно запрашивать пользователя (учителя или оракула), чтобы он пометил новые точки данных истинными метками. Процесс активного обучения также называют оптимальным экспериментальным дизайном.
Мотивация к активному обучению - это сценарий, в котором у нас есть большой пул немаркированных данных. Рассмотрим проблему обучения модели классификации изображений, чтобы различать кошек и собак. Существуют миллионы изображений каждого из них, но не все из них необходимы для обучения хорошей модели. Некоторые изображения могут быть более ясными и информативными, чем другие. Другое похожее приложение - классифицирует контент видео Youtube, где данные по своей природе плотны и их много.
Пассивное обучение, стандартная структура, в которой в алгоритм передается большое количество помеченных данных, требует значительных усилий для маркировки всего набора данных.
Используя активное обучение, мы можем выборочно использовать такую систему, как краудсорсинг, чтобы попросить экспертов-людей выборочно пометить некоторые элементы в наборе данных, но не нужно маркировать весь набор. Алгоритм итеративно выбирает наиболее информативные примеры на основе некоторой метрики значения и отправляет эти немаркированные примеры оракулу маркировки, который возвращает истинные метки для этих запрошенных примеров обратно в алгоритм.
В некоторых случаях активное обучение работает лучше, чем случайная выборка. На изображении ниже показан мотивирующий пример улучшения активного обучения по сравнению со случайным выбором. Весь набор точек данных (объединение наборов красных треугольников и зеленых кругов) линейно не разделим.
Активное обучение мотивируется пониманием того, что не все обозначенные примеры одинаково важны. При равномерной случайной выборке по всем примерам усвоенная модель не совсем отражает разделение между классами. Однако активное обучение отбирает примеры, близкие к границам класса, и может найти более представительный классификатор. Предыдущие исследования также показали, что активное обучение предлагает улучшение по сравнению со стандартным случайным выбором для таких задач, как классификация изображений по нескольким классам [1, 2, 3, 4].
Структура активного обучения сводит выбор данных к проблеме определения, какие точки данных в наборе наиболее информативны? При активном обучении наиболее информативными точками данных обычно являются те, в отношении которых модель наиболее неуверенна. Это требует различных показателей для количественной оценки и сравнения неопределенностей примеров.
Различные системы активного обучения
Активное обучение считается методом обучения с частично контролируемым контролем, когда без учителя используется 0% обучающих примеров, а при полном контроле используется 100% примеров. Итеративно увеличивая размер помеченного обучающего набора, мы можем достичь большей производительности, почти полностью контролируемой, с небольшой частью затрат или времени на обучение с использованием всех данных.
Активное обучение на основе пула
При выборке на основе пула обучающие примеры выбираются из большого пула немаркированных данных. Выбранные обучающие примеры из этого пула помечаются оракулом.
Активное обучение на основе потоков
При потоковом активном обучении набор всех обучающих примеров представляется алгоритму в виде потока. Каждый пример индивидуально отправляется алгоритму на рассмотрение. Алгоритм должен немедленно принять решение, пометить или не пометить этот пример. Выбранные обучающие примеры из этого пула помечаются оракулом, и метка немедленно принимается алгоритмом до того, как следующий пример будет показан для рассмотрения.
Меры неопределенности
Решение о выборе наиболее информативных точек данных зависит от меры неопределенности, используемой при выборе. При выборке на основе пула алгоритм активного обучения выбирает наиболее информативные примеры для добавления к растущему набору обучения.
Самые информативные примеры - это те, в которых классификатор меньше всего уверен.
Интуиция здесь заключается в том, что примеры, в отношении которых модель имеет наименьшую уверенность, вероятно, будут самыми сложными примерами - особенно примеры, которые лежат рядом с границами классов. Алгоритм обучения получит больше информации о границах классов, наблюдая за трудными примерами.
Ниже приведены четыре распространенных показателя неопределенности, используемых в активном обучении, чтобы выбрать наиболее информативные примеры.
1. Наименьшая неопределенность маржи
Наименьшая погрешность запаса - это сравнение наилучшей погрешности и второй наилучшей погрешности. Наименьшая маржинальная неопределенность (SMU) - это вероятность классификации наиболее вероятного класса за вычетом вероятности классификации второго наиболее вероятного класса [1]. Интуиция, лежащая в основе этой метрики, заключается в том, что если вероятность наиболее вероятного класса значительно больше, чем вероятность второго наиболее вероятного класса, то классификатор более уверен в принадлежности примера к классу. Точно так же, если вероятность наиболее вероятного класса не намного больше, чем вероятность второго наиболее вероятного класса, тогда классификатор менее уверен в принадлежности примера к классу. Алгоритм активного обучения выберет пример с минимальным значением SMU.
2. Неопределенность с наименьшей степенью уверенности
Наименьшая достоверная неопределенность (LCU) - это выбор примера, для которого классификатор наименее уверен в выбранном классе. Выбор LCU рассматривает только наиболее вероятный класс и выбирает пример с наименьшей вероятностью, присвоенной этому классу.
3. Уменьшение энтропии.
Энтропия - это мера неопределенности случайной величины. В этом эксперименте мы используем энтропию Шеннона. Энтропия Шеннона имеет несколько основных свойств, в том числе (1) однородные распределения имеют максимальную неопределенность, (2) неопределенность является аддитивной для независимых событий и (3) добавление результата с нулевой вероятностью не имеет никакого эффекта и (4) события с определенным результатом имеют нулевой эффект [6, 7]. Рассматривая предсказания класса как результат, мы можем измерить энтропию Шеннона предсказанных вероятностей класса.
Более высокие значения энтропии указывают на большую неопределенность в распределении вероятностей [1]. На каждом этапе активного обучения для каждого немаркированного примера в обучающем наборе алгоритм активного обучения вычисляет энтропию по прогнозируемым вероятностям класса и выбирает пример с наивысшей энтропией. Пример с наивысшей энтропией - это пример, в котором классификатор наименее уверен в своей принадлежности к классу.
4. Самая большая маржинальная неопределенность
Наибольшая неопределенность запаса - это сравнение наилучшей и наихудшей неопределенности [5]. Самая большая маржинальная неопределенность (LMU) - это вероятность классификации наиболее вероятного класса за вычетом вероятности классификации наименее вероятного класса. Интуиция, лежащая в основе этой метрики, заключается в том, что если вероятность наиболее вероятного класса значительно больше, чем вероятность наименее вероятного класса, то классификатор более уверен в принадлежности примера к классу. Точно так же, если вероятность наиболее вероятного класса не намного больше, чем вероятность наименее вероятного класса, тогда классификатор менее уверен в принадлежности примера к классу. Алгоритм активного обучения выберет пример с минимальным значением LMU.
Алгоритм
Приведенный ниже алгоритм предназначен для активного обучения на основе пула [8]. Аналогичным образом можно написать активное обучение на основе потоков.
Основным узким местом в крупномасштабных задачах классификации является большое количество обучающих примеров, необходимых для обучения классификатора. Используя активное обучение, мы можем сократить количество обучающих примеров, необходимых для обучения классификатора, путем стратегического выбора конкретных примеров.
использованная литература
[1] А.Дж. Джоши, Ф. Порикли и Н. Папаниколопулос, «Многоклассное активное обучение для классификации изображений», Конференция IEEE 2009 г. по компьютерному зрению и распознаванию образов, Майами, Флорида, 2009 г., стр. 2372–2379.
[2] Го-Цзюнь Ци, Сянь-Шэн Хуа, Юн Руи, Цзиньхуэй Тан и Хун-Цзян Чжан, «Двумерное активное обучение для классификации изображений», Конференция IEEE 2008 г. по компьютерному зрению и распознаванию образов , Анкоридж, АК, 2008, стр. 1–8.
[3] Э. Я. Чанг, С. Тонг, К. Го и К. Чанг. «Поддержка активного обучения, зависящего от векторной машины, для поиска изображений», IEEE Transaction on Multimedia, 2005.
[4] А. Капур, К. Грауман, Р. Уртасун и Т. Даррелл, «Активное обучение с помощью гауссовских процессов для категоризации объектов», 11-я Международная конференция IEEE 2007 года по компьютерному зрению, Рио-де-Жанейро, 2007, стр. 1–8.
[5] https://becominghuman.ai/accelerate-machine-learning-with-active-learning-96cea4b72fdb
[6] https://towardsdatascience.com/entropy-is-a-measure-of-uncerty-e2c000301c2c
[7] Л. М. Тивари, С. Агравал, С. Капур и А. Чаухан, «Энтропия как мера неопределенности в системе массового обслуживания», Национальная конференция аспирантов 2011 г., Куала-Лумпур, 2011 г., стр. 1 –4.
[8] https://towardsdatascience.com/active-learning-tutorial-57c3398e34d