Вы здесь

Внутреннее Согласование. Объяснение, как будто тебе 12 лет

Рафаэль Харт

(Это – неофициальное объяснение Внутреннего Согласования, основанное на статье MIRI Риски Выученной Оптимизации в Продвинутых Системах Машинного Обучения (почти что совпадающей с цепочкой на LessWrong) и подкасте «Будущее Жизни» с Эваном Хубингером (Miri/LW). Оно предназначено для всех, кто посчитал цепочку слишком длинной/сложной/технической.)

Жирный курсив означает «представляю новый термин», а простой используется для смыслового выделения.

Что такое Внутреннее Согласование?

Давайте начнём с сокращённого ликбеза о том, как работает Глубинное Обучение:

  1. Выбираем задачу
  2. Определяем пространство возможных решений
  3. Находим хорошее решение из этого пространства

Если задача – «Найти инструмент, который может посмотреть на картинку, и определить, есть ли на ней кот», то каждый мыслимый набор правил для ответа на этот вопрос (формально, каждая функция из множества возможных наборов значений пикселей в множество {да, нет}) задаёт одно решение. Мы называем такое решение моделью. Вот пространство возможных моделей:

Поскольку это все возможные модели, большая их часть – полная бессмыслица:

Возьмём случайную – и с не меньшей вероятностью получим распознаватель машин, а не котов – но куда вероятнее, что получим алгоритм, который не делает ничего, что мы можем интерпретировать. Отмечу, что даже описанные на картинке примеры не типичны – большая часть моделей будут более сложными, но всё ещё не делающими ничего, связанного с котами. Но где-то там всё же есть модель, которая хорошо справляется с нашей задачей. На картинке это та, которая говорит «Я ищу котов».

Как машинное обучение находит такую модель? Способ, который не работает – перебрать все. Пространство слишком большое: оно может содержать больше 101000000 кандидатов. Вместо этого есть штука, которая называется Стохастический Градиентный Спуск (СГС). Вот как она работает:

СГС начинает с какой-то (скорее всего ужасной) модели и совершает шаги. На каждом шаге он переходит к другой модели, которая «близка» и, кажется немного лучше. В некоторый момент он останавливается и выводит самую недавнюю модель.1 Заметим, что в примере выше мы получили не идеальный распознаватель котов (красный квадратик), а что-то близкое к нему – возможно, модель, которая ищет котов, но имеет какие-то ненамеренные причуды. СГС в общем случае не гарантирует оптимальность.

«Реплики», которыми модели объясняют, что они делают – аннотации для читателя. С точки зрения программиста, это выглядит так:

Программист понятия не имеет, что делают модели. Каждая модель – просто чёрный ящик.2

Необходимый компонент СГС – способность измерить качество работы модели, но это делают, всё ещё относясь к ним, как к чёрным ящикам. В примере с котами, предположим, что у программиста есть куча картинок, каждая из которых аккуратно подписана «содержит кота» или «не содержит кота». (Эти картинки называют обучающими данными, а такой процесс называют обучением с учителем.) СГС проверяет, как хорошо модели работают на этих картинках, и выбирает те, которые работают лучше. Есть альтернативные способы, в которых качество работы измеряют иначе но принцип остаётся тем же.

Теперь предположим, что оказалось, что наши картинки содержат только белых котов. (и, видимо, не содержит белых четверолапых не-котов – прим. пер.) В этом случае, СГС может выбрать модель, исполняющую правило «ответить да, если на картинке есть что-то белое с четырьмя лапами». Программист не заметит ничего странного – он увидит только, что модель, выданная СГС хорошо справляется с обучающими данными.

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

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

Чтобы объяснить само Внутреннее Согласование, нам придётся перейти к другой ситуации. Предположим, что вместо задачи определения, содержат ли картинки котов, мы пытаемся обучить модель проходить лабиринт. То есть, мы хотим получить алгоритм, который, если ему дать произвольный решаемый лабиринт, выводит путь от Входа к Выходу.

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

(В лабиринте «Поиск в глубину» — это то же самое, что правило «Всегда иди налево» (видимо, имеются в виду лабиринты без циклов – прим. пер.).)

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

Как и в предыдущем примере, мы можем применить к этой задаче СГС. В этом случае, механизм обратной связи будет оценивать модель на тестовых лабиринтах. Теперь предположим, что все тестовые лабиринты выглядят вот так:

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

Смотря на это, можно понадеяться, что СГС найдёт модель «поиска в глубину». Однако, хоть эта модель и найдёт кратчайший путь, это не лучшая модель. (Отметим, что она сначала выполняет поиск, а потом, найдя правильный путь, отбрасывает все тупики и выводит только кратчайший путь.) Альтернативная модель с аннотацией «выполнить поиск в ширину следующей красной двери, повторять вечно» будет справляться лучше. (Поиск в ширину означает исследование всех возможных путей параллельно.) Обе модели всегда находят кратчайший путь, но модель с красными дверьми находит его быстрее. В лабиринте с картинки выше она бы сэкономила время при переходе от первой ко второй двери, обойдясь без исследования нижней левой части лабиринта.

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

Как и в предыдущем случае, всё что увидит программист – левая модель лучше справляется с обучающими данными (тестовыми лабиринтами).

Качественное отличие от примера картинок с котами в том, что в этом случае мы можем рассматривать модель как исполняющую оптимизационный процесс. То есть, модель поиска в ширину сама имеет цель (идти через красные двери), и пытается оптимизировать её в том смысле, что ищет кратчайший путь к выполнению этой цели. Аналогично, модель поиска в глубину – оптимизационный процесс с целью «найти выход из лабиринта».

Этого достаточно, чтобы определить Внутреннее Согласование, но чтобы получить определение, которое можно найти где-нибудь ещё, давайте определим два новых термина:

  • Базовая Цель – это цель, которую мы используем для оценивания моделей, найденных СГС. В первом примере она была «правильно классифицировать картинки» (т.е. сказать «есть кот», если на картинке есть кот, и «нет кота» в противном случае). Во втором примере она – «найти кратчайший путь через лабиринт как можно быстрее».
  • В случаях, когда модель выполняет оптимизационный процесс, мы называем её Меса-Оптимизатором, а её цель Меса-Целью (в примере с лабиринтом меса-цель – «найти кратчайший путь через лабиринт» для модели поиска в глубину и «найти путь к следующей красной двери, затем повторить» для модели поиска в ширину).

С учётом этого:

Внутреннее Согласование – это задача согласования Меса-Цели и Базовой Цели.

Некоторые разъясняющие замечания:

  • Пример с красными дверьми надуманный и не произошёл бы на практике. Он иллюстрирует только что такое Внутреннее Согласование, но не почему несогласованность может быть вероятна.
  • Можно спросить, что из себя представляет пространство всех моделей. Типичный ответ: возможные модели – это наборы весов *нейросети. Проблема существует пока часть наборов весов выполняет некоторые алгоритмы поиска.
  • Как и раньше, причиной провала внутреннего согласования был недостаток нашего способа получения обратной связи (на языке машинного обучения: наличие сдвига распределения). (Однако, несогласованность может возникать и по другим очень сложным причинам.)
  • Если Базовая Цель и Меса-Цель не согласованы, это вызовет проблемы при развёртывании модели. Во втором примере, когда мы возьмём модель, выданную СГС и применим её к реальным лабиринтам, она продолжит искать красные двери. Если эти лабиринты не содержат красных дверей, или если красные двери не всегда будут вести к выходу, то модель будет работать плохо.

Проиллюстрируем диаграммой Эйлера-Венна. (Относительные размеры ничего не значат.)

Заметим, что {Что пытается сделать ИИ} = {Меса-Цель} по определению.

Большая часть классических обсуждений согласования ИИ, включая большую часть книги Суперинтеллект, касается Внешнего Согласования. Классический пример – где мы представляем, что ИИ оптимизирован, чтобы вылечить рак, и поэтому убивает людей, чтобы больше ни у кого не было рака – про несогласованность {Того, что хотят программисты} и {Базовой Цели}. (Базовая Цель это {минимизировать число людей, у которых рак}, и хоть не вполне ясно, чего хотят программисты, но точно не этого.)

Стоит признать, что эта модель внутреннего согласования не вполне универсальна. В этом посте мы рассматриваем поиск по чёрным ящикам, с параметризованной моделью и СГС, обновляющим параметры. Большая часть машинного обучения в 2020-м году подходит под это описание, но эта область до 2000 года – нет, и это снова может так стать в будущем, если произойдёт сдвиг парадигмы, сравнимый с революцией глубинного обучения. В контексте поиска по чёрным ящикам внутренняя согласованность – хорошо определённое свойство, и диаграмма выше хорошо показывает разделение задач, но есть люди, ожидающие, что СИИ будет создан не так.3 Есть даже конкретные предложения безопасного ИИ, к которым неприменим этот концепт. Эван Хубингер написал пост о том, что он назвал «историями обучения», предназначенный определить «общий подход оценки предложений создания безопасного продвинутого ИИ».

Аналогия с Эволюцией

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

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

Как в примере лабиринта, люди сами выполняют оптимизационные процессы. Так что мы можем назвать их/нас Меса-Оптимизаторами, и может сравнить Базовую Цель (которую оптимизирует эволюция) с Меса-Целью (которую оптимизируют люди).

  • Базовая Цель: максимизировать совокупную генетическую приспособленность
  • Меса-Цель: избегать боли, искать удовольствие

(Это упрощено – некоторые люди оптимизируют другие штуки, такие как благополучие всех возможных разумов во вселенной, но они не ближе к Базовой Цели.)

Можно увидеть, что люди не согласованы с базовой целью эволюции. И легко видеть, почему – Эван Хубингер объяснял это, предлагая представить альтернативный мир, в котором эволюция отбирала внутренне согласованные модели. В таком мире ребёнок, стукнувшийся пальцем, должен вычислить, как это затрагивает его совокупную генетическую приспособленность, чтобы понять, повторять ли в будущем такое поведение. Это было бы очень вычислительно затратно, тогда как цель «избегать боли» немедленно сообщает ребёнку, «стукаться пальцем = плохо», что куда дешевле и обычно является правильным ответом. Так что несогласованная модель превосходит гипотетическую согласованную. Другой интересный аспект в том, что степень несогласованности (разница между Базовой Целью и Меса-Целью) увеличилась в последние несколько тысячелетий. Цели были довольно близки в окружении наших предков, но сейчас они разошлись настолько, что нам приходится платить людям за сдачу спермы, что, согласно Базовой Цели, должно быть очень желательным действием.

Получается, эта аналогия – аргумент в пользу того, что Внутренняя Несогласованность вероятна, поскольку она «естественным путём» получилась в ходе самого большого известного нам нечеловеческого оптимизационного процесса. Однако, стоит предостеречь, что эволюция не исполняет Стохастический Градиентный Спуск. Эволюция путешествует по пространству моделей, производя случайные мутации и оценивая их результат, что фундаментально отличается (и в миллиард раз менее эффективно), чем модифицировать модель согласно ожидаемой производной функции оценки, как делает СГС. Так что, хоть аналогия и работает в целом, она перестаёт работать с аргументами, полагающимися на свойства СГС кроме того, что он оптимизирует Базовую Цель.

Обманчивая Согласованность

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

Концепт

В этом разделе мы делаем следующие предположения:

  • Задача, поставленная перед моделями сложна, так что они очень сложны. Представляйте скорее систему, отвечающую на вопросы, а не классификатор картинок.
  • Вместо простого обучающего процесса мы со временем обновляем модель.
  • Обучающий процесс выберет Меса-Оптимизатор.
  • Базовая Цель сложно устроена, и модель не усвоила её правильно сразу же (т.е. модель изначально не является внутренне согласованной).

Раз модель сложна, мы предполагаем, что она строит некую модель мира. Подумайте о GPT-3 (языковая модель, которая может писать текст): она явно распознаёт, пишете вы её заготовку про Властелина Колец или про политику. Это демонстрирует, что у неё есть внутренняя модель этих штук, пусть неправильная и неполная.

Так что, если мы посмотрим внутрь модели (что, опять же, программисты сделать не могут), то там будут эти два компонента:

Напомню, что мы предположили, что модель является Меса-Оптимизатором, так что мы знаем, что у неё есть цель. Эта Меса-Цель обозначена красным кружком.

По мере улучшения модели мира, она в какой-то момент начинает включать в себя модель Базовой Цели. Напомню, что Базовая Цель – то, что оптимизирует СГС.

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

СГС пытается улучшить модель, и если то, что оптимизирует модель, станет более похожим на Базовую Цель, то модель станет лучше. Так что, мы предполагаем, что модель так и изменится. Дальше можно представить три разных способа, как это может произойти, они проиллюстрированы ниже:

Первый называется Усвоенной Согласованностью. Модель принимает Базовую Цель как свою.

Второй называется Исправимой Согласованностью. Меса-Цель больше не представлена явно – вместо этого она указывает на часть модели мира, отображающую Базовую Цель.

Третий называется Обманчивой Согласованностью. Тут Меса-Цель остаётся отличной от Базовой Цели, но модель выбирает всё же оптимизировать Базовую Цель, поскольку это заставляет обучающую процедуру считать модель согласованной. Пунктирная стрелка не обозначает ни что Меса-Цель совпадает с Базовой, ни что Меса-Цель представляет из себя указатель на Базовую, а то, что модель оптимизирует Базовую Цель по инструментальным причинам, т.е. как часть стратегии оптимизации Меса-Цели.

Для возможности обманчивой согласованности требуется, чтобы (а) модель знала, что находится в процессе обучения и (б) она заботилась о своей цели в долгой перспективе. Для того, чтобы обманчивая согласованность представляла проблему, требуется ещё (в) чтобы модель ожидала, что в некоторый момент она навсегда покинет процесс обучения. Статья использует следующий пример того, как модель может стать обманчиво согласованной (т.е. может оптимизировать Базовую Цель несмотря на то, что это не то, чего она в конечном итоге хочет) при выполнении всех этих условий:

В этом случае Базовая Цель – это «прийти в A», а Меса-Цель – «прийти в B». Если модель, которая хочет прийти в B достаточно умна, то она пойдёт к A во время обучения, потому что это позволит ей прийти в B при развёртывании, а эпизодов развёртывания больше, чем обучения. Так что оптимизация Базовой Цели во время Обучения приведёт к лучшим результатам согласно Меса-Цели (в долгосрочной перспективе), чем прямая оптимизация Меса-Цели. Это и есть обманчивая согласованность.

Бак Шлегерис (Miri/LW) приводил следующую аналогию, иллюстрирующую эти три случая: предположим, христианский Бог хочет создать людей, которые будут делать то, что он хочет (функция полезности бога – это базовая цель). Три вида согласованности имеют аналоги среди людей:

  • Для усвоенной согласованности, представьте Иисуса. Он делает то, что хочет бог, потому что у него та же функция полезности, что у бога.
  • Для исправимой согласованности, представьте Мартина Лютера. Он делает то, что хочет бог, потому что его функция полезности – «определить из Библии, что хочет бог, и делать это».
  • Его примером для обманчивой согласованности был Блез Паскаль; однако, мне не нужен этот пример, поскольку у меня в средней и старшей школе был друг, который явно хотел поступать как сказано в Библии, потому что хочет попасть в рай. Он явно (по крайней мере, мне) признавал, что имеет конечные цели, противоречащие Библии, но всё равно искренне пытался её придерживаться. Я уверен, что такие люди встречаются куда чаще, чем Мартины Лютеры и Иисусы.

Цель аналогии – проиллюстрировать, почему обманчивые модели могут быть вероятнее, чем может показаться интуитивно. Обманчивая согласованность звучит как странное очень конкретное явление, но аналогия показывает, что на самом деле возможных обманчиво согласованных моделей куда больше, чем исправимо или усвоенно согласованных. Только одна функция полезности совпадает с таковой у христианского бога, но много функций полезности высоко оценивают «не попасть в ад». Аналогично, есть большой диапазон возможных Меса-Целей, допускающих обманчивое согласование, и все они будут оптимизировать Базовую Цель при обучении.

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

Почему усвоенная согласованность может быть сложной

Если большая нейросеть обрабатывает входные данные, это приводит к изменению её внутреннего состояния. Если мы называем любую его модификацию «обучением», то можно различить два разных способа обучения, или два «входных канала». Один через СГС, а другой через обработку входных данных.

Учитывая, сколько входных данных используется в современном машинном обучении, можно быть уверенным, что второй канал предоставляет куда больше бит информации. Так что, если GPT-3 создаёт внутреннюю модель «Властелина Колец», то это скорее всего происходит через входные данные, а не явные модификации со стороны СГС.

Если мы допустим, что обработка входных данных не изменяет напрямую цель модели (Меса-Цель), или что вначале создаётся модель Базовой Цели4, то из этого следует, что отобразить сложную цель усвоением сложнее, чем «моделированием» (т.е. исправимостью или обманчивостью).

В аналогии с эволюцией (которая всё ещё аналогия, и может не подходить к этому случаю), интуитивно кажется, что для неё закодировать детализированную модель «родителей» в ДНК куда сложнее, чем определить привязанность к родителям через отсылание к модели мира.

Почему исправимая согласованность может быть сложной

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

Вместо этого статья приводит аргумент устойчивости. Он примерно таков:

  • Исправимо согласованная модель, чей указатель ошибочен, будет работать хуже.
  • Даже если текущая модель мира (серый кружок) улучшилась до понимания ошибки, указатель не будет исправлен, потому что его нынешнее направление – Меса-Цель модели.
  • СГС может обновить указатель, но это непросто сделать правильно.
  • Напротив, обманчиво согласованная модель немедленно подправит свой поведение, если узнает, что указатель неверный, так как это будет полезно для её цели. (Потому что её стратегия – это «пока что скрывать мою настоящую цель, так что она не будет модифицирована, и я смогу её преследовать при развёртывании.»)

Заметим, что это не исчерпывающее описание аргументов из статьи.

Разное

Мне кажется, что недооценённый аспект Внутреннего Согласования в том, что даже если найти единственную-истинную-функцию-полезности-которую-всего-лишь-надо-запрограммировать-в-ИИ, это, на самом деле, не решит задачу согласования – только задачу внешнего согласования (при условии, что эту функцию полезности можно формализовать). Если мы проведёт СГС на основе этой функции, это всё равно может привести к появлению меса-оптимизаторов, которые хотят чего-то другого.

Другое интересное замечание, что правдоподобность усвоения (то есть того, что модель явно отображает Базовую Цель) зависит не только от сложности устройства цели. К примеру, цель эволюции «максимизировать совокупную генетическую приспособленность» довольно проста, но не отображена явно потому, что определить, как действия на неё влияют вычислительно сложно. Так что {вероятность принятия цели Меса-Оптимизатором} зависит как минимум от {сложности устройства цели} и {сложности определения, как действия на неё влияют}.

  • 1. На практике СГС обычно запускают несколько раз с разными начальными условиями и используют лучший результат. Также, вывод СГС может быть линейной комбинацией моделей, через которые он прошёл, а не просто последней моделью.
  • 2. Однако, предпринимаются усилия к созданию инструментов прозрачности, чтобы заглядывать внутрь моделей. Если они станут по настоящему хороши, то они могут стать очень полезными. Некоторые из предложений способов создания безопасного продвинутого ИИ в явном виде включают такие инструменты.
  • 3. Если СИИ содержит больше вручную написанных частей, картина усложняется. К примеру, если система логически разделена на набор компонентов, то задача внутреннего согласования может относиться к только некоторым из них. Это применимо даже к частям биологических систем, см. к примеру, Внутреннее Согласование в мозгу Стивена Бирнса.
  • 4. Я не знаю достаточно, чтобы обсуждать это допущение.

Перевод: 
Выменец Максим
Оцените качество перевода: 
Голосов пока нет
  • Короткая ссылка сюда: lesswrong.ru/3012