Обучение сложным целям с помощью итеративного усиления

Мы предлагаем метод обеспечения безопасности ИИ под названием «итеративное усиление» (iterated amplification), который позволяет задавать сложные поведения и цели, выходящие за рамки возможностей человека. Это достигается за счет демонстрации того, как декомпозировать задачу на более простые подзадачи, а не путем предоставления размеченных данных или функции вознаграждения. Хотя эта идея находится на самых ранних этапах своего развития, и мы провели эксперименты лишь в простых игрушечных алгоритмических доменах, мы решили представить ее в текущем виде, поскольку считаем, что она может стать масштабируемым подходом к безопасности ИИ.
Если мы хотим обучить систему машинному обучения выполнению задачи, нам нужен сигнал обучения — способ оценки того, насколько хорошо она справляется, чтобы помочь ей учиться. Например, разметка в обучении с учителем или вознаграждения в обучении с подкреплением являются сигналами обучения. Формализм машинного обучения обычно предполагает, что сигнал обучения уже присутствует, и фокусируется на обучении на его основе, но в реальности сигнал обучения должен откуда-то браться. Если у нас нет сигнала обучения, мы не можем обучить задачу, а если у нас неправильный сигнал обучения, мы можем получить непредвиденное и иногдаопасноеповедение. Таким образом, повышение нашей способности генерировать сигналы обучения было бы ценным как для изучения новых задач, так и для безопасности ИИ.
Как мы генерируем сигналы обучения в настоящее время? Иногда нужная нам цель может быть оценена алгоритмически, например подсчет очков в игре го или проверка того, успешно ли отсортирован набор чисел (левые панели на рисунке ниже). Большинство реальных задач не поддаются алгоритмическому сигналу обучения, но часто мы можем получить его, заставляя человека либо выполнятьзадачусамостоятельно (например, размечая обучающую выборку или демонстрируя задачу обучения с подкреплением), либо оцениватькачествоработыИИ при ее выполнении (средние панели на рисунке ниже). Тем не менее, многие задачи настолько сложны, что человек не может их оценить или выполнить — например, проектирование сложной транспортной системы или управление каждой деталью безопасности крупной компьютерной сети (правые панели на рисунке ниже).

Итеративное усиление — это метод генерации обучающего сигнала для последнего типа задач при определенных допущениях. А именно: хотя человек не может напрямую выполнить или оценить всю задачу целиком, мы предполагаем, что, получив часть задачи, он способен выделить более мелкие и понятные компоненты, из которых она состоит. Например, в примере с компьютерной сетью человек может разбить задачу «защитить совокупность серверов и маршрутизаторов» на части: «рассмотреть атаки на серверы», «рассмотреть атаки на маршрутизаторы» и «рассмотреть, как атаки из первых двух пунктов могут взаимодействовать друг с другом». Кроме того, мы предполагаем, что человек может решать очень маленькие экземпляры задачи, например «определить, является ли подозрительной конкретная строка в файле логов». Если эти два условия выполняются, мы можем построить сигнал обучения для больших задач на основе человеческих сигналов обучения для мелких задач, используя человека для координации их сборки.
В нашей реализации усиления мы начинаем с выборки небольших подзадач и обучения ИИ-системы их выполнению путем получения демонстраций от людей (которые умеют решать эти небольшие задачи). Затем мы переходим к выборке чуть более крупных задач, решая их путем обращения к людям с просьбой разбить их на небольшие части, с которыми теперь могут справиться ИИ-системы, обученные на предыдущем этапе. Мы используем решения этих несколько более сложных задач, полученные с помощью человека, в качестве сигнала обучения для прямого обучения ИИ-систем решению задач второго уровня (уже без помощи человека). После этого мы переходим к еще более составным задачам, итеративно наращивая сигнал обучения по мере продвижения. Если этот процесс работает, на выходе получается полностью автоматизированная система, способная решать сложные составные задачи, несмотря на отсутствие исходного сигнала обучения для них. Этот процесс в чем-то похож на итерацию экспертов (метод, используемый в AlphaGo Zero), за исключением того, что итерация экспертов подкрепляет уже существующий сигнал обучения, в то время как итеративное усиление строит его с нуля. Этот подход также имеет общие черты с несколькиминедавнимиалгоритмами обучения, которые используют декомпозицию проблем «на лету» для решения задач на этапе тестирования, но отличается тем, что работает в условиях отсутствия предварительного сигнала обучения.
Эксперименты
Как и в нашей предыдущей работе по безопасности ИИ через дебаты, непосредственная работа с задачами, выходящими за рамки возможностей человека, слишком сложна для прототипного проекта. Кроме того, использование реального человека в качестве сигнала обучения создает дополнительные трудности, поэтому мы пока не стали этого делать (хотя планируем в будущем). Для наших первых экспериментов мы вместо этого попытались усилить алгоритмический сигнал обучения, чтобы показать, что итеративное усиление может работать в столь простых условиях. Мы также ограничили свое внимание обучением с учителем (в отличие от нашей предыдущей работы по использованию человеческих предпочтений в обучении с подкреплением). Мы опробовали этот метод на пяти игрушечных алгоритмических задачах. У этих задач есть прямые алгоритмические решения, которые мы как бы «не знаем» (например, найти кратчайший путь между двумя точками на графе). Проблемы также можно решить путем соединения небольших одношаговых дедукций (например, объединения двух путей для формирования более длинного пути), однако ручная сборка всего воедино потребовала бы экспоненциальных затрат усилий. Мы используем итеративное усиление для изучения прямого алгоритма, используя только отдельные части в качестве сигнала обучения, тем самым симулируя ситуацию, когда человек знает, как комбинировать части решения, но не может предоставить прямой сигнал обучения.
На каждой из этих пяти задач (возведение перестановок в степень, последовательные присваивания, поиск по шаблону с подстановочными знаками, кратчайший путь и система непересекающихся множеств) нам удается демонстрировать конкурентоспособные результаты по сравнению с прямым обучением задачи с учителем, несмотря на ограничение в виде отсутствия прямого сигнала обучения (цель здесь заключалась в том, чтобы не превзойти обучение с учителем, а лишь соответствовать ему при меньшем объеме информации).
Итеративное усиление демонстрирует производительность, сопоставимую с обучением с учителем, даже без использования размеченных данных истинности
Усиление имеет общие черты с нашей предыдущей работой по безопасности ИИ через дебаты. Как и дебаты, оно нацелено на обучение решению задач, которые находятся за пределами человеческих возможностей по их прямому выполнению или оценке, посредством итеративного процесса, позволяющего людям обеспечивать косвенный надзор — однако конкретный подход здесь иной. Этот метод также опирается на нашу работу по учёту человеческих предпочтений за счет реализации системы предсказания вознаграждения, и его будущие версии, вероятнее всего, будут включать обратную связь от реальных людей. На данный момент мы исследовали все эти методы в предварительном порядке и работаем над их масштабированием для решения более интересных и реалистичных задач.
Если вам интересно помочь нам в расширении таких инструментов, как итеративное усиление, для создания безопасного и мощного ИИ, подумайте о том, чтобы присоединиться к OpenAI.
Авторы
Полный текст статьи читайте на OpenAI
