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

На брифинге 2002 года министр обороны США Дональд Рамсфелд объяснил фундаментальные ограничения разведданных:

«Есть известные знания; есть вещи, которые мы знаем, что знаем. Мы также знаем, что есть известные неизвестные; то есть мы знаем, что есть некоторые вещи, которых мы не знаем. Но есть также неизвестные неизвестные - те, о которых мы не знаем, мы не знаем. И если посмотреть на историю нашей страны и других свободных стран, именно последняя категория, как правило, является наиболее сложной ».

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

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

Распознавание открытого набора

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

Вот умный способ проверить эту идею: обучить модель машинного обучения на данных MNIST, но во время обучения показывать ей только цифры 0,1,2,3,4,5. Затем во время тестирования покажите ему весь диапазон цифр. Как это будет работать?

Оказывается, довольно плохо (см. Синюю кривую выше). Точность падает с 1 до 0,6, поскольку мы пропускаем все больше и больше классов во время тренировок. Этот результат был показан исследователями Лалитом Джайном и сотрудниками еще в 2014 году. Они также представили новый алгоритм машинного обучения, который лучше обобщается на «неизвестные неизвестные» (красная кривая выше) - разумеется, с оговоркой, что эти неизвестные неизвестные были фактически известны исследователям заранее.

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

Еще лучше, если модель сможет спросить нас, когда она неуверена.

Активное изучение

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

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

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

Последние мысли

О трагической гибели Элейн Херцберг я упоминал в одном из своих предыдущих постов. Вечером 18 марта 2018 года Херцберг была смертельно сбита беспилотным автомобилем, когда она шла на велосипеде по улице в Темпе, штат Аризона. Хотя модель автомобиля была обучена на большом количестве данных о вождении, в этих данных не было достаточно случаев, когда пешеходы переходили улицу на велосипеде. Для модели Герцберг был неизвестным неизвестным.

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

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

Ссылки и дополнительная литература

[1] Джайн и др., Распознавание открытых множеств классов с использованием вероятности включения
[2] Поселения, Обзор литературы по активному обучению
[3] Лю и др., Крупномасштабные Признание длиннохвостого в открытом мире