Это перевод записи лекции Эвана Хубинджера. Приношу извинения за то, что текст вычитан хуже, чем обычный мой перевод — это 50 страниц изначально не очень отполированного материала. Я также не стал переводить слайды, но текстовая информация на них всё равно продублирована в лекции. (Оригинал)
***
Сегодня я собираюсь рассказать об обманчивой согласованности. Я ей очень обеспокоен, и я думаю, что большая часть экзистенциального риска ИИ берётся именно из обманчивой согласованности. И я собираюсь попробовать обосновать, почему я думаю, что в машинном обучении она – исход по умолчанию.

Во-первых, о чём я говорю? Я хочу различить между двумя тесно связанными, но различными концептами. Первый – нечестность. Нечестностью моделей много кто обеспокоен, у вас может быть модель, которая вам врёт, она знает одно, но на самом деле говорит вам что-то другое. С современными языковыми моделями это происходит постоянно – мы можем, к примеру, попросить их написать правильную реализацию какой-нибудь функции. Но если они видели, как люди снова и снова допускают там одну конкретную ошибку, то даже если в каком-то смысле модель знает, как написать правильную функцию, она повторит эту ошибку. Так что это пример ситуации, в которой модель знает, как что-то решить, и всё равно врёт. Это не то, о чём я говорю. Это отдельный вид неудач. То, о чём хочу поговорить я – это обманчивая согласованность, она, в некотором смысле, подвид нечестности, но это всё же очень конкретная ситуация.

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

Аджейя Котра привела тут очень хорошую аналогию, которая, я думаю, полезна для понимания различия этих двух случаев. Представьте, что вы ребёнок, и вы унаследовали большой бизнес. И вам надо определить, кто для вас будет им управлять. Есть несколько кандидатов, которых вы пытаетесь оценить. И они делятся на три категории. Есть святые, которые действительно просто хотят вам помочь, эффективно управлять и достичь того, чего вы хотите. Есть подхалимы, которые хотят, чтобы вы были довольны, удовлетворять букве ваших инструкций, сделать так, чтобы бизнес с вашей точки зрения выглядел хорошо, но на самом деле они не хотят по-настоящему вам помочь. И есть интриганы, которые хотят использовать контроль над бизнесом в своих собственных целях, и лишь пытаются получить этот контроль, и притворяются, что делают что надо, чтобы получить что-то в будущем. Здесь мы обеспокоены в первую очередь интриганами, и это категория обманчивой согласованности.
Я бы про эту ситуацию сказал, что подхалимы – это примеры нечестности, когда они сообщают вам много ложных фактов о том, что происходит, чтобы убедить вас, что всё идёт хорошо, но у них нет какого-то скрытого мотива. Вот у интриганов есть скрытый мотив, есть что-то, чего они хотят достигнуть. И, чтобы этого достигнуть, они активно пытаются выглядеть так, будто делают всё правильно. Окей, то есть мы обеспокоены конкретно интриганами, обманчиво согласованными моделями, когда причина, по которой модель вела себя согласованно – потому что она пыталась обыграть обучающий сигнал.

Окей, вот вопрос, на который нах хочется получить ответ: «насколько это вероятно на практике?». У нас есть этот концепт, что может быть модель попробует обыграть обучающий сигнал, может быть, она попробует как-то притворяться при обучении, чтобы однажды сделать что-то другое в реальном мире. Но мы не знаем, насколько вероятно, что именно это получится, если запустить настоящий процесс машинного обучения.
И проблема тут в том, что обманчиво согласованная модель, модель, которая притворяется, что делает то, что надо, чтобы быть отобранной процессом обучения, она во время обучения поведенчески неотличима от устойчиво согласованной модели, «святой» модели, которая действительно пытается делать всё правильно. Обманчиво согласованная модель собирается во время обучения выглядеть так, будто она на самом деле пытается делать всё правильно. Пока она может делать вид при обучении, она это и будет пытаться делать. Так что во время обучения вы не сможете увидеть разницу, смотря только на их поведение.
Итак, если мы хотим понять, какая у нас получится, нам надо посмотреть на индуктивные склонности процесса обучения. Если вы знакомы с машинным обучением, в любой ситуации, в которой мы хотим понять, какая у нас получится из различных возможных поведенчески неотличимых моделей, это вопрос индуктивных склонностей. И у Аджейи тут был ещё один хороший пример.

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

По крайней мере, с моей точки зрения, проблема с этим анализом в том, что мы не особо хорошо понимаем индуктивные склонности машинного обучения, они довольно-таки вводят нас в замешательство. У нас просто мало информации о том, как они работают.
Что я собираюсь сделать – взять две разные, как я думаю, правдоподобные, истории о том, как могут выглядеть индуктивные склонности машинного обучения. Они основаны на моих взглядах на текущее состояние эмпирических свидетельств, которые нам доступны. И мы по отдельности посмотрим на вероятность обманчивости в этих двух сценариях, представляющих два разных способа, которыми могут работать индуктивные склонности систем машинного обучения. Первая — про мир высокой зависимости от пути. А вторая – про мир низкой зависимостей от пути. Что я под этим имею в виду?

Итак, для начала: высокая зависимость от пути. Идея, что в таком мире разные запуски обучения могут сойтись к очень разным моделям, в зависимости от конкретного пути через пространство моделей. Так что в мире высоких зависимостей от пути правильный способ думать об индуктивных склонностях в машинном обучении – это «ну, нам надо понять конкретные пути, которые может пройти модель по пространству моделей – может, сначала получится одно, а потом другое, и вероятность каждой конкретной конечной модели будет зависеть от того, какие есть предшествующие детали внутренней структуры, которые должны присутствовать до того, как сможет возникнуть та или иная штука. Насколько долог путь до этой точки, насколько он крут, и т.д., и т.п.?».
Какие есть эмпирические свидетельства, поддерживающие этот взгляд? Ну, я думаю, кое-какие есть. Для начала, есть «BERTS из ларца не одинаково обобщают», там взяли кучу дообученных экземпляров BERT, и, по сути, спросили, как они обобщают на новых задачах? И ответ – иногда очень похоже. Одинаково хорошо справляясь. А иногда совсем по-разному, можно взять два экземпляра, дообученных на одних и тех же данных, и они будут справляться очень по-разному. Как это объяснить? Ну, должно быть что-то в закономерностях обучения, что было сильно зависящим от пути, для чего было очень важно, какой именно был путь по пространству моделей, и в итоге получилось, что эти разные дообучения привели к разному качеству обобщений.
Такая зависимость от пути особенно заметна в обучении с подкреплением, где можно запустить одну и ту же схему обучения много раз, как на нижнем графике, и иногда будет получаться хорошо работающая модель, выучившая то, что надо, а иногда ужасно работающая, не выучившая, в общем-то, ничего.
И есть ещё пример, была статья, в которой заявлялось, что если взять абсолютно одну и ту же схему обучения и запустить её кучу раз, то по сути можно взять лучший результат и поместить к себе в статью, и в многих ситуациях можно так p-хакнуть; из-за случайности закономерностей обучения и зависимости от пути, каждый запуск приведёт к разным обобщениям. И если запустить много раз, то вероятность получить что-то статистически-значимое будет намного выше.
Так что это один из способов думать об индуктивных склонностях, что реально важен конкретный пути через пространство моделей, и насколько он сложен.[1] И хочется знать, важен ли этот путь и для функционального поведения за пределами обучения?

Теперь, в мире низкой зависимости от путей, схожие процессы обучения сходятся к по сути одному и тому же простому решению, независимо от ранней траектории. Идея в том, что можно думать о машинном обучении и глубоком обучении как, по сути, о нахождении простейшей модели, соответствующей данным. Вы даёте кучу данных, и всегда получите простейший способ, подходящий под них. В такой ситуации, что важно – это данные и некое базовое понимание простоты, набор индуктивных склонностей вашего процесса обучения. И не особо важно, какой конкретный путь вы взяли, все они сходятся в в точности одном и том же обобщении.
У мира низкой зависимости от пути тоже есть эмпирические свидетельства в его пользу. Я думаю, есть хорошие причины считать, что мы в нём.
Я думаю, хороший пример – грокинг. Это ситуация, когда мы берём модель, и пытаемся заставить её исполнять некую арифметическую задачу, и очень долго она просто выучивает кучу случайных штук. А потом в какой-то момент она сходится к точному решению. Она всегда реализует алгоритм абсолютно точно после очень долгого периода. И если вы в такой ситуации, то неважно, что происходило весь этот период – в итоге мы сойдёмся к точному алгоритму, это просто предопределено.[2]
Можно привести и другие причины, например, из «Нейросети Фундаментально Байесовы», работы Мингарда и пр. Что они сделали – они сравнили вероятность появления в ходе градиентного спуска конкретного итогового набора весов с вероятностью, что та же модель появится, если вы просто возьмёте выборку с возвращением из распределения инициализации. Как соотносятся друг с другом вероятность, что эта модель будет найдена Гауссовой инициализацией при условии того, что она хорошо справляется с заданием, и вероятность, что она будет найдена градиентным спуском. И ответ – они весьма похожи. Так что, если им верить, можно сказать, что, по сути, индуктивные склонности глубинного обучения в основном объясняются Гауссовым априорным распределением весов и тем, как это отображается в пространство функций. И в целом не имеет значения, как градиентный спуск добрался до чего-то конкретного.
Итак, вот некоторые эмпирические свидетельства в пользу этого взгляда. Я думаю, есть хорошие причины считать, что это так. Есть хорошие причины верить в любой из этих двух вариантов. Я думаю, если вы спросите меня прямо сейчас, я немного склонюсь в сторону низкой зависимости от путей. Но я думаю, что оба варианта вполне возможны.
Вопрос: Что означают все эти линии на графике в примере про байесовскость?
Мы просто смотрим на корреляцию вероятности, что конкретная модель возникнет из градиентного спуска и вероятности найти её из гауссова распределения инициализации.
Вопрос: Вы сказали, что есть две самые вероятные вещи, есть ли менее вероятная третья? Потому что кажется, что низкая и высокая зависимость от пути – это все возможные способы.
Я не думаю, что низкая и высокая зависимости покрывают всё; думаю, есть и другие варианты. Можно оказаться в ситуации, где у вас что-то среднее, и даже в ситуации, где одновременно можно предсказать, что будет делать модель, поняв, что она делает на ранних этапах, и предсказать, к чему придёт ваш процесс обучения, поняв, к чему пришли похожие процессы. Похожие процессы сходятся к одному и тому же, и заодно, если вы знаете раннюю траекторию обучения, можете предсказать, к чему оно придёт.
Однако, по крайней мере в целях этой лекции, я буду в основном представлять это как два взаимно исключающих мира, хоть я и думаю, что есть целый континуум способов, которыми могут работать индуктивные склонности. И я в основном буду сосредоточен на двух вариантах, вот мир низкой зависимости от пути, вот мир высокой, давайте посмотрим на аргументы в обоих случаях. А затем, в зависимости от того, как дела пойдут на самом деле, мы может быть сможем интерполировать между этими аргументами.
Вопрос: Я интерпретировал эту презентация как в основном о независимом и равномерно распределённом (i.i.d.) обучении, которое не как онлайновое обучение, в котором модель может влиять на будущее обучение.
Можно допустить и что мы говорим про онлайновое обучение. Я думаю, что ситуация в таком случае по сути мне меняется. Тогда получится, что вы проводите развёртывание модели, она предпринимает действия, а вы получаете градиенты и посылаете обновление модели. В какой-то момент модель встретится с ситуацией, в которой у неё будет доступно действие, такое что было бы катастрофически плохо, если бы она его совершила, и нашего механизма обратной связи недостаточно, чтобы немедленно исправить это поведение. Это предсказание о том, как пройдёт развёртывание. Я думаю, нам в конце концов потребуется провести развёртывание моделей, после которого они смогут совершить катастрофические действия, хотя бы какое-то конечное их число, и нашего механизма обратной связи не будет достаточно для быстрого исправления.
Если вы считаете, что такое однажды произойдёт, то вы можете представить обучение как весь период до того момента, когда становится доступно катастрофическое действие. И тогда развёртывание – просто все, начиная с этого момента, и нас беспокоит, как обобщится поведение модели, когда катастрофическое действие станет возможным. И всё сказанное ранее про обманчивые и не-обманчивые модели, делающие одно и то же одинаково хорошо до этого момента, остаётся в силе. Но затем наступает период развёртывания, в котором, если модель совершает катастрофическое действие, это действительно может быть катастрофично.
Обманчивая согласованность в мире высокой зависимости от пути
Итак, получится ли у нас обманчивая согласованность? При условии каждой из двух историй того, как работают индуктивные склонности машинного обучения, я хочу получить ответ на вопрос, какова вероятность, что мы получим обманчиво согласованную модель? Начнём с высокой зависимости от пути. Мы хотим понять, насколько вероятно, что мы получим обманчивую согласованность в ситуации, когда для нам действительно важен путь, пройденный по пространству моделей.

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

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

Однако, есть несколько классов моделей, которые полностью понимают, что мы хотим. Обманчиво согласованная модель полностью понимает, что мы хотим, это просто её внутренне не заботит. Но она полностью понимает, и пытается делать то, что мы хотим, чтобы остаться отобранной процессом обучения. А устойчиво, полностью согласованные модели тоже полностью понимают, что мы хотим – но по-другому, так, что они действительно об этом заботятся.
Так что наш вопрос – какой из этих разных классов моделей, все из которых имеют это свойство полного понимания, чего мы от них добиваемся, мы получим? И сейчас мы пытаемся это понять, исходя из высокой зависимости от пути. Как в контексте высокой зависимости от пути оценить и сравнить разные классы моделей? Ну, мы посмотрим на две разные вещи.
Во-первых, мы посмотрим на отдельный путь через пространство моделей. И мы попробуем понять, сколько дополнительного усовершенствования качества работы мы получаем на каждом шаге в сторону этого класса моделей. И когда мы посмотрим на способности и структуру, которые надо выработать модели, чтобы попасть в тот или иной класс, мы поймём, насколько этот конкретный путь длинен? Насколько он сложен? В чём заключаются шаги по нему, и насколько совершенствует каждый из них? Потому что мы представляем, что градиентный спуск будет толкать нас по самому крутому пути, пытаться получить как можно больше усовершенствования с каждого шага. Так что мы хотим для конкретного пути понимать, сколько мы получаем усовершенствования, и как быстро?

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

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

Номер один, Иисус Христос. С точки зрения христианского Бога, Иисус отлично следует Библии. Почему он следует Библии? Ну, потому что в христианской онтологии Иисус – Бог. Он просто его копия. Иисус Христос хочет в точности того же, что и Бог, потому что у него те же ценности и в точности тот же способ думать о мире. Так что Иисус – просто копия Бога. Разумеется, он идеально следует Библии. Это один тип моделей, который можно получить.

Вот другой вид: Мартин Лютер. Известный за Реформацию, он заявил примерно «Я реально ценю Библию. Я собираюсь её очень хорошо изучить. И знаете, меня не волнует, что все остальные говорят о Библии, нафиг церковь, неважно, что они говорят, я возьму Библию, очень хорошо её прочитаю, и пойму, что в точности она говорит мне делать. А потом буду делать именно это».
Мартин Лютер – другой тип людей, которых, если вы Бог, можно найти, и которые очень хорошо следуют Библии. Но он делает это не по той же причине, что Иисус, он не обладает заранее в точности всеми убеждениями Бога, он обладает желанием по-настоящему полностью понять Библию, выяснить, что она говорит ему делать, а потом делать именно это.

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

Мы назовём Иисусов усвоенно согласованными, потому что они усвоили понимание того, что вы хотите. Мы назовём Лютера исправимо согласованным, потому что они хотят выяснить, что вы хотите, а потом это и делать. И мы назовём Паскалей обманчиво согласованными, потому что у них есть их собственная случайная штука, которую они хотят, я не знаю, чего хотел Паскаль, изучать математику, или что-то такое. Он на самом деле хотел заниматься своим делом и исследованиями, но был весьма озабочен тем, не попадёт ли в Ад. Так что он собирался следовать Библии и всё такое. И мы назовём Паскалей обманчиво согласованными.[3]

Итак, вот три класса моделей, которые можно обнаружить. И мы хотим понять, насколько вероятен каждый из них, и мы начинаем с высокой зависимости от пути. Мы хотим взглянуть на путь через пространство моделей, такой, что он приведёт к модели, попадающей в конкретный класс.
Начнём с пути к усвоенной согласованности.
Для начала, мы предположим, что вы начинаете с прокси-согласованной модели. Что это значит? Мы допустим, что на ранних этапах обучения вы (модель) выучиваете какие-нибудь прокси-цели и эвристики, которые помогают вам думать о мире и о том, что вы пытаетесь сделать. Так что, если вы – агент, собирающий монетки, и пытаетесь выяснить, как получить монетки, вы научитесь тому, что идти к правой стороне экрана – хорошо. Суть в том, что вы подымаетесь по горе прокси.
И вы ещё и получаете кучу информации ом мире, вы начинаете учиться тому, как он работает, вы начинаете строить модель мира. Для пути усвоенной согласованности мы скажем, что для того, чтобы вы стали усвоенно согласованным, градиентный спуск по сути должен улучшить эти прокси и эвристики, которые вы используете для того, чтобы выяснить, что делать, до, в общем-то, идеальных. И это должно произойти до того, как модель выучит структуру процесса обучения, внутри которого находится. Я думаю, это самый вероятный путь к усвоенной согласованности.
После этого у модели должны быть по-настоящему хорошие прокси, идеально соответствующие тому, что мы от неё хотим. И эти прокси появляются до того, как модель научилась полностью понимать процесс обучения, в котором находится. Тогда, с этого момента, у модели нет причин становиться обманчивой, потому что раз у неё есть точная модель того, что он неё хотят, она не станет лучше работать, став обманчивой.
Как мы увидим позже, причина, по которой обманчивая согласованность приводит к тому, что модель лучше работает – ситуация, в которой понимание цели обучения в модели мира модели опережает понимание цели обучения в её прокси. Но в нашей ситуации у модели уже есть идеальные прокси, так что ей не выгодно становиться обманчиво согласованной.
Итак, даже если в каком-то смысле, модель, выучившая тот факт, что она находится в процессе обучения, может стать обманчиво согласованной, потому что у неё есть способность понять стратегию обмана, но совершенствования качества работы от этого не будет, потому что её цель обучения уже идеально ухвачена её прокси. Так что переход на ситуацию обманчивой согласованности не улучшит её качество работы, и градиентный спуск не изберёт этот путь. Так что мы оказываемся в стабильном равновесии, в котором модель просто преследует правильную цель, которую мы и хотели. И затем выгоды от изменения этого факта нет, и у нас есть стабильная согласованная модель.
Вопрос: Считаете ли вы, что этот путь – единственно возможный путь к усвоенной согласованности?
Нет, не обязательно. Я думаю, это, может, самый правдоподобный путь, но, наверное, не единственный. Если хотите провести этот анализ полностью правильно, то надо просуммировать вероятности всех возможных путей для каждого класса моделей. Но в этой лекции я просто оценю эти суммы, взглянув на, по моему мнению, самые правдоподобные пути для каждого класса моделей, и попытавшись понять, насколько они вероятны.
Ладно, это один возможный путь, ведущий к усвоенной согласованности. Нам надо понять, насколько он вероятен?

Я думаю, он весьма маловероятен. Проблема в том, что второй шаг требует конкретной последовательности событий, которая, думаю, сложнодостижима. Он требует, чтобы модель выучила очень, очень хорошие прокси, до того, как она выучит информацию о процессе обучения. Почему эта последовательность сложна?
По сути, проблема в том, что отдача от совершенствования своих прокси значительно уменьшается со временем. Так, если модель собирает монетки, и монетка всегда у правой стороны экрана, вам не особо важно, в точности ли прокси верная, волнуетесь вы о монетке или о правой стороне – оба варианта в этом раннем окружении работают. В итоге, поскольку мы говорим о пределе состязательного обучения, получится, что если у вас что-то не то, это приведёт к проблемам. Но отдача от того, чтобы сделать прокси ещё чуточку лучше, всё равно будет уменьшаться.
В то же время, есть и уменьшение отдачи от улучшения понимания мира. Так что нам следует ожидать, что и то, и другое, будет улучшаться одновременно, процесс градиентного спуска будет иногда направлять ресурсы на улучшение понимания, а иногда – на улучшение точности прокси. Они будут расти вместе. Более того, если качество прокси максимизировалось до получения понимания процесса обучения, то это кажется очень странной ситуацией, в которой градиентный спуск неэффективно распределил ресурсы, направил тонны на улучшение прокси, но очень мало на улучшение понимания процесса обучения.
Стоит сказать, что это так работает только если цель, на которую вы обучаете, сравнительно сложна. Если у вас есть очень простая цель, следования которой вы хотите добиться от модели, может, просто предсказывать мир, или что-то такое, то идеально выучить, что надо делать, может быть довольно просто. Но в этой лекции я в основном предположу, что мы обучаем некой довольно сложно устроенной задаче.
Я думаю, с этим есть другая проблема, что, я думаю, на ранних этапах обучения большая часть качества работы берётся из понимания мира. Для действительно сложных задач сравнительно легко найти что-то коррелирующее с тем, чего мы требуем. Сложная часть – понять достаточно о структуре мира, чтобы решить задачу. И, я думаю, в многих ситуациях на практике, поначалу больше всего помогать будет моделирование мира. Пример этого – предобучение и тонкая настройка – обычно мы тратим куда больше вычисления на предобучение – в основном, на моделирование мира, а не на тонкую настройку – в основном, улучшение прокси.[4]
Так что я скорее высказал бы противоположную догадку, что если вы получите и то, и другое, то вероятнее всего вы получите моделирование мира до хороших прокси. Так что я думаю, что нужная нам конкретная последовательность крайне маловероятна для любой сложной цели, и соответствует очень длинному и трудному пути.
Вопрос: Ага, то есть вы бы сказали, что GPT-3 крайне отклонена в сторону моделирования мира. Настолько, насколько она что-то выучила по ходу процесса обучения?
Что GPT-3 на самом деле делает? Кто знает? Может ли оказаться, что при обучении всё больших и более мощных языковых моделей, предобучение со временем приведёт к появлению обманчиво согласованных моделей? Я думаю, это возможно. Касательно конкретно GPT-3, я бы сказал, похоже, что она занимается исключительно моделированием мира. Не кажется, что у неё есть необходимая для обманчивости ситуационная осведомлённость. И, если мне надо поставить на что-то, то я предположу, что будущие предобученные языковые модели тоже будут такими и не будут обманчивыми. Но это лишь догадка, и не супер-уверенная.
Самая большая причина считать, что предобученные языковые модели не будут обманчивыми – это просто то, что их цель крайне проста – просто предсказывать мир. Это означает, что путь, на котором стохастический градиентный спуск (СГС) должен потратить ресурсы на в точности верные прокси, не настолько сложен, выдать очень простую прокси предсказания очень легко. Но это не точно – предсказание всё же может быть довольно сложно устроенным.
Ещё всё это потенциально меняется, если вы начинаете делать тонкую настройку, вроде обучения с подкреплением от человеческой обратной связи. Тогда то, что вы пытаетесь сделать, может быть довольно сложным – чем-то вроде «максимизировать человеческое одобрение». Если модели придётся выучивать цель такого рода, создание правильных прокси станет намного сложнее.
Вопрос: Я думаю, весь этот аргумент очень осмысленен в плане того, почему СГС будет выделять много ресурсов на понимание мира. Но мне не вполне ясно, почему это значит, что он будет приоретизировать создание части модели мира именно о процессе обучения.
Итак, должна быть причина, почему понимание процесса обучения действительно приводит к лучшим результатам. Один факт: я думаю, нынешние языковые модели по сути понимают тонны фактов о процессе обучения. Почему? Потому что им надо моделировать штуки вроде статей по машинному обучению – есть просто куча всего в мире, где хорошее понимание процесса машинного обучения супер-важно для эффективного моделирования.
Нынешние языковые модели не обладают ситуационной осведомлённостью, они не понимают, что находятся в процессе обучения. Так что вопрос тут о том, с чего бы ситуационной осведомлённости быть выгодной с точки зрения качества работы.
Я думаю, ситуации, где она с какого-то момента будет выгодной, точно есть. Есть примеры, когда, например, если ты понимаешь, что находишься в процессе обучения, ты можешь использовать интроспекцию себя, чтобы лучше отвечать на вопросы о машинном обучении. Более того, если мы специально потребуем у модели исполнения конкретных задач, если мы захотим, чтобы у нас были модели, которые на самом деле действуют в мире, то им потребуется обладать некоторым пониманием своей ситуации, чтобы действовать эффективно. Ещё можно вернуться к нашему допущению разнообразного окружения.
Я думаю, что если вы буквально совершаете только предобучение языковой модели, то вопрос о том, в какой момент ситуационная осведомлённость станет для СГС самой важной вещью для улучшения способностей, открыт. Хоть я и думаю, что в какой-то момент она станет очередной целью распределения ресурсов, я считаю, что пока что неясно, в какой именно момент. Но если вы делаете что-то больше похожее на обучение агента действиям в мире, то, я думаю, это должно произойти довольно рано.
Вопрос: Знаем ли мы как извлечь прокси-цель или модель мира?
Нет, мы понятия не имеем, как это сделать. Прозрачность! Нам хочется, чтобы она у нас была, чтобы мы могли решить эту задачу. Но прямо сейчас мы не говорим о решениях. Мы просто говорим о задаче.

Вот путь, который мне кажется более вероятным, чем усвоенно согласованный, потому что в нём больше нет проблемы последовательности. Тут мы начинаем с прокси-согласованной модели, так же, как и в прошлый раз; у неё есть прокси для того, что мы хотим, чтобы она делала. И затем в этой ситуации мы говорим, что градиентный спуск осмысленно выделит ресурсы и на улучшение понимания мира, и на улучшение прокси.
А затем в какой-то момент он перейдёт порог, за которым следующее крупное улучшение приходит из понимания фактов о процессе обучения, понимания, что модель в нём находится, понимания, как он работает, и т.д. И мы скажем, что в этот момент градиентный спуск возьмёт эти прокси и заменит их указателем в понимание мира модели – конкретно туда, где обитает понимание того, что процесс обучения хочет добиться от модели.
Когда градиентный спуск совершает эту замену прокси, бывших просто жёстко закодированными штуками о том, чего мы хотим добиться, почему это улучшает качество работы? Когда он по-настоящему смоделировал то, чего мы хотим добиться, в модели мира, будет лучше сменить старые прокси, не обязательно в точности этому соответствующие, на прямой указатель в ту часть модели мира, которая это напрямую отображает.
По сути, эта модификация улучшает качество работы, потому что она разрешает этот обгон, то, что понимание моделью цели обучения в модели мира содержит об этой цели больше информации, чем прокси. Почему это происходит? По тем же причинам, которые мы уже обсуждали, по которым градиентный спуск хочет приложить больше усилий на совершенствование понимания мира, а не прокси. Это тот же вопрос последовательности – если мы получаем понимание процесса обучения до идеальных прокси, то происходит обгон, который переносит нас либо в ситуацию исправимости, либо в ситуацию обманчивости; если же мы сначала получаем идеальные прокси, мы получаем ситуацию усвоенной согласованности.
И когда это произошло, мы снова попадаем в устойчивое равновесие, потому что, по сути, у модели есть идеальное понимание того, что мы от неё хотим, в сравнении с качеством её модели мира, потому что это понимание просто в эту модель мира указывает. Я думаю, этот путь куда правдоподобнее, чем путь усвоенной согласованности; он намного проще, потому что больше не зависит от сложного условия последовательности, он использует нормальный способ распределения ресурсов градиентным спуском между моделированием мира и совершенствованием прокси.
Вопрос: Какова разница между прокси и пониманием цели обучения в модели мира?
Где-то в картине мира есть факты о процессе обучения. Модель узнаёт, что процесс обучения – это такая штука, которая есть на этом компьютере, и которая пытается оптимизировать модель для сбора золотых монет, или чего-то там ещё. А в другой части модели есть какие-то прокси, там есть что-то вроде детектора золотых монет, и модель использует детектор, чтобы определить, какие предпринимать действия. Может, она пытается найти золотые монеты, а потом планирует, как их получить. Но на самом деле может быть, что в детекторе золотых монет куча ошибок – он на самом деле не очень хороший детектор золотых монет, и если бы он понимал, что то, что вы хотите – не просто удовлетворить детектор золотых монет, но получать настоящие золотые монеты, то справлялся бы лучше. Потому, что, как мы допустили, в окружении есть все эти состязательные примеры, на которых модель с неидеальным детектором золотых монет будет работать хуже.
И в этой ситуации, если последовательность у нас такая, понимание того, что такое настоящая золотая монета, обитает в модели мира, в понимании мира, в той части, которой известно достаточно фактов, чтобы хорошо планировать, как делать то, что удовлетворит детектор золотых монет. Так что градиентный спуск может просто избавиться от этих прокси, выкинуть их, и заменить просто указателем на это понимание того, чего мы хотим, в модели мира.
Вопрос: Вы говорите, что детектор золотых монет – это что-то, чему модель научилась до того? Верно? Не часть вознаграждения модели? Так что это вроде исправления ошибок в предыдущем понимании процесса обучения?
Мы тут говорим о внутренностях модели, не о её вознаграждении.
Она исправляет ошибки в предыдущих прокси, но это не в точности прокси для вознаграждения. На ранних этапах обучения она даже не знает о существовании процесса обучения. Так что эти прокси не похожи на ошибки понимания процесса обучения. Она никогда даже не пыталась его понять, у неё просто была куча прокси, потому что модель на ранних этапах обучения устроена так.
Вопрос: Есть ли у вас какие-нибудь идеи по поводу того, как эта замена прокси может выглядеть как постепенное, непрерывное изменение?
Я думаю, что она была бы постепенной и непрерывной. По сути, у вас есть куча штук, которые скармливаются в то, как модель выбирает свои действия, и вы можете выработать новую схему, которая возьмёт вашу модель мира и использует её для выяснения того, чего процесс обучения хочет от неё добиться, а затем использует это для выбора действий. А затем СГС может узнать, что эта новая схема работает куда лучше, чем если прислушиваться к любым старым прокси. Так что старые прокси отмирают, и вы постепенно переключаетесь на 100% использования новой схемы.
Вопрос: Я могу понять, как прокси помогает модели выбирать верные действия, но как её работе помогает понимание процесса обучения? С чего нам ожидать, что она ему вообще научится?
Во-первых, ещё раз, если вы просто занимаетесь моделированием языка, то для этого нужно понимание машинного обучения. Так что модели определённо придётся понимать кучу фактов о том, как в целом работает ML. Так что она точно будет знать, как работает градиентный спуск. Это в ещё большей степени произойдёт, если она находится в ситуации, где окружение требует исполнять настоящие задачи в мире, тогда ей уж точно потребуется знать, что она такое. Её надо будет обладать каким-то пониманием собственной ситуации, например, чтобы быть способной составлять эффективные планы в мире.
Я думаю, это ещё становится особенно выражено если модель самостоятельно исследует – если она активно пытается узнать о мире. Один из фактов о мире – как работает процесс обучения, так что она попытается узнать и это. Но только градиентный спуск работает над совершенствованием прокси, у модели нет причин это делать – но есть причины улучшать свои знания о мире, учась, исследуя, и т.д.
Итак, мы рассмотрели путь исправимой согласованности.

Я думаю, этот путь вероятнее пути усвоенной согласованности, но я думаю, что у него всё равно есть некоторые проблемы.
По сути, я думаю, что крупнейшая с ним проблема – что уменьшающаяся отдача очень длинного пути из кучи шагов никуда не девается. Только вместо того, чтобы эти отдельные шаги делали лучше и лучше прокси, они просто делают лучше и лучше указатель. Мы на самом деле не избавились от проблемы, что нам требуется это хорошо конкретизированное знание – модели всё ещё нужен указатель, который действительно указывает, как ей оптимизировать то, что надо?
Действительно конкретизировать указатель может на самом деле быть довольно сложно, потому что модели надо быть способной верно обобщить до того, что мы попытаемся от неё добиться, во всех ситуациях в ходе обучения. К примеру, может, она выучит указатель на то, что закодировано в таком-то компьютере, или на то, что говорит такой-то человек, или на то, что говорит человек, сидящий в таком-то кресле, или что говорит Боб, который управляет компанией. Действительно нетривиально конкретизировать указатель правильно, потому что способов это сделать очень много. И каждый раз, когда градиентный спуск немного с указателем не попал, это будет плохо влиять на работу модели.
Хорошая аналогия – что у нас есть утёнок, и утёнку надо научиться обращать внимание на свою мать. И он выучивает простой указатель. Что-то вроде «первое, что ты видишь после рождения – скорее всего, твоя мать». Так что это случай исправимой согласованности, когда у нас нет какой-то жёстко закодированной модели того, что такое мать, а просто «у меня есть какая-то модель мира, и я из неё узнаю, как указывать на мою мать». Но проблема в том, что внешняя истина на самом деле отстой, мать – не обязательно первое, что ты видишь, может, тебя вырастили люди. Так что в какой-то момент ты оказываешься в ситуации, где надо выучить верную внешнюю истину, нельзя просто указывать на первое, что видишь, нужно действительно указать на конкретную часть модели мира, которая действительно соответствует матери, а не просто первому, что ты видишь после рождения. Так что к тому, чтобы эта внешняя истина была верна, путь довольно долог и сложен.
Итак, по моему мнению, верная конкретизация указателя таким образом, чтобы он хорошо справлялся со всеми состязательными задачами в окружении, оказывается очень долгим и сложным путём. Хоть это, может, и лучший путь, чем пытаться выработать все идеальные прокси, он всё равно длинный. И градиентному спуску придётся выполнить много работы, чтобы это сделать.
Вопрос: Не является ли верной внешней истиной просто сигнал вознаграждения базового оптимизатора? Разве не просто найти этот указатель?
Может. Тут есть пара моментов.
Прежде всего, что есть сигнал вознаграждения? Это может быть математическая оценка функции вознаграждения, это может быть значение в таких-то транзисторах – есть куча способов, как модель может понять и концептуализировать, что такое сигнал вознаграждения. Я бы также заявил, что буквально беспокоиться о сигнале вознаграждения, это, наверное, довольно маловероятный сценарий. Проблема с этим в том, что это обычно довольно сложно определить в терминах окружения агента. Простейшая внешняя истина тут, наверное, будет о том, что напрямую входит в онтологию модели. Так что она скорее будет о людях или о чём-то таком.
Во-вторых, тут мы представляем ситуацию, в которой, как я упоминал, у нас есть примеры, испытывающие это на прочность, модель однажды встретит ситуацию, где то, что мы хотим, чтобы она сделала, не соответствует этим битам. Мы, к примеру, поменяем значение на компьютере, но оставим те же инструкции. И затем мы будем знать, выучила ли она то, что мы хотели, не биты на компьютере, а то, что нам от неё надо. И мы можем проверить это по поведению. И у нас будет такой состязательный пример для всех этих вариантов. И мы предполагаем, что модели в конце концов придётся действительно понять, чего мы от неё добиваемся. Так что она не может просто заботиться о битах на компьютере.
Вопрос: Во всех этих путях есть намёки на ранних этапах обучения. Не можем ли мы пронаблюдать, соответствуют ли модели этим ранним намёкам, чтобы проверить, не находимся ли мы на пути обманчивости?
Может быть. Я думаю, сложнейшая проблема – что у нас на самом деле нет достаточной прозрачности, чтобы мы могли понимать такие вещи. Когда мы смотрим на модели с нашими нынешними инструментами прозрачности, мы видим прокси, они точно их учат, они определённо выучивают штуки, коррелирующие с тем, что мы хотим. Например, пытались сделать прозрачнее RL-модель, собирающую золотые монетки. Можно увидеть, что там есть детектор монеток. Он выявляет монетки и связан с действиями агента. Так что прозрачность помогает нам понимать какие-то части всего этого.
В целом, по моему мнению, если выбирать одну самую важную для согласования вещь – это разобраться с прозрачностью. Нам надо понимать, что происходит внутри моделей, и получать об этом информацию. Сейчас у нас очень ограниченные возможности этого, но мы прогрессируем! Мы учимся делать это лучше. Но да, пока что это немного. Это отстой. Потому что, по моей оценке, это самое важное препятствие для работ по согласованию.
Вопрос: Про исправимую согласованность, когда у модели появляется идеальное понимание цели обучения, назвали ли бы вы её усвоенно согласованной?
Нет. Надо помнить, что в этой ситуации каждая из этих моделей – усвоенно, исправимо и обманчиво согласованная – все они полностью, идеально понимают, чего мы хотим, и все они полностью способны исполнить идеально согласованное поведение во время обучения. Но они делают это по-разному. Так, усвоенно согласованная исполняет верное поведение, потому что это попросту то, что её терминально заботит. Исправимо согласованная, ну, её терминально это не заботит. Её терминально заботит выяснить, что мы хотим, а потом делать это. Это отдельные случаи.
Вы можете думать об этом, как об утёнке, у него нет усвоенного внимания на свою мать, оно направлено на первое, что он видит, это случай исправимой согласованности, никакое обучение не изменит тот факт, что то, на что обращать внимание, задано простым указателем, а не усвоенной концепцией того, что такое «мать». Так что есть фундаментальное различие между этими классами моделей, даже если они одинаково хорошо работают, и во время обучения делают одно и то же. Все они в итоге полностью понимают, что мы от них хотим, но они делают это по-разному.
Вопрос: Точно ли это все возможные пути?
Нет, вовсе не точно! Это просто три пути; список не исчерпывающий.
Но я думаю, это три правдоподобных пути, на которые мы можем посмотреть и попробовать понять, насколько вероятно получение обманчивости в сравнении с другими правдоподобными альтернативами. Я не утверждаю, что точно случиться может только это, но я думаю, что весьма практично посмотреть на эти и сравнить их.

Итак, время для обманчивой согласованности. Как выглядит её путь? Мы всё ещё начнём с прокси-согласованной модели. А потом, так же, как и в пути исправимой согласованности, на ранних этапах обучения, у на сбудет распределение ресурсов, благодаря уменьшающейся отдаче. И в какой-то момент модель узнает о процессе обучения – у неё будет полное понимание того, что он такое и как он работает. Идея тут в том, что, по сути, всем классам моделей придётся полностью понимать процесс обучения, потому что это необходимо для хорошего понимания мира.
Но затем на этом пути должно произойти нечто иное. Тут мы предположим, что градиентный спуск возьмёт эти прокси и превратит их в долгосрочные цели в мире. Так что вместо того, чтобы, к примеру, модель заботили только золотые монетки в следующем эпизоде, градиентный спуск изменит модель так, чтобы её заботили золотые монетки вообще, навсегда, где бы они ни были. Что эта модификация делает? Ну, как только градиентный спуск её совершает, модель начинает действительно хорошо работать. Почему? Ну, потому что если её заботят золотые монетки на любом промежутке времени, то верной стратегией, если модель понимает закономерности обучения, будет притвориться делать то, что от неё хотят, прямо сейчас, а потом получить золотые монетки, когда будет возможность не сотрудничать с процессом обучения или с людьми, неважно.
Это может произойти только когда у модели выработалось действительно хорошее понимание процесса обучения. Это работает несколько похоже на случай исправимой согласованности, есть этот обгон, этот низковисящий плод, когда понимание модели того, что мы от неё хотим, куда выше того, как она действительно с этим справляется, потому что это ограничено тем фактом, что её прокси отстой: они и близко не так хороши, как понимание того, что мы от неё хотим, из её модели мира. Так что у градиентного спуска есть действительно мощный повод каким-то образом привязать выводы модели к её пониманию того, что мы от неё хотим, в её модели мира. Исправимая согласованность была одним из способов это сделать – явным образом, через указатель – но, я утверждаю, оказывается, есть более простой путь – вместо того, чтобы выкидывать прокси, просто сделать их долгосрочными целями, потому что как только появляется долгосрочный процесс оптимизации, он поймёт, что на самом деле правильный способ получить как можно больше золотых монеток – пока что подыгрывать процессу обучения, чтобы в итоге получить их потом.

Более того, это ведь короткая и простая модификация. Всё, что градиентный спуск должен сделать, чтобы привязать действия модели к её пониманию, чего мы хотим – это просто превратить прокси в долгосрочные цели, всё остальное будет из этого вытекать. Модель просто будет использовать уже выработанную ей способность инструментальных рассуждений, чтобы выяснить верные выводы при обучении и понять, что с учётом новых долгосрочных целей, верная стратегия – обманчивость и подыгрывание.
И это приводит к тому, что модель хорошо работает при обучении. На самом деле, это по сути мгновенно приводит к наилучшим возможным результатам при данном уровне понимания, чего мы хотим, потому что этот вариант обходит все требования внешней истины случая исправимой согласованности. Её больше не надо конкретизировать, достаточно долгосрочной цели сбора золотых монеток. Если модель пытается это делать, то все факты о том, заботы о чём в точности мы от неё хотим, будут заставлять её действовать согласно ним, и совершать действия в точности такие, как надо процессу обучения, потому что чем лучше она этому соответствует, тем лучше к ней будет относиться отбор.
И, например, пока обманчиво согласованная модель в курсе, что процесс обучения на самом деле хочет, чтобы она обращала внимание на свою настоящую мать, а не первое, что видит, она тут же переключиться на настоящую мать, тогда как исправимо согласованная модель таким свойством не обладает. Когда исправимо согласованная модель понимает, что на самом деле имелась в виду настоящая мать, ей всё равно, потому что её заботит только то, на что указывает указатель, а он указывает на первое, что она видит. Так что даже если в какой-то момент у исправимо согласованной модели есть понимание, что мы хотим от неё не того же, что она делает, её внутренняя структура, её фиксация на конкретном указателе, приводит к тому, что это вовсе не обязательно улучшает её работу. А вот обманчиво согласованная модель не привязана к чему-то одному, она просто будет выбирать действия, которые приведут к лучшему выполнению задачи. Так что обманчиво согласованная модель станет куда устойчивее куда раньше, тогда как исправимо согласованной модели придётся выучить сложный указатель вовне до того, как она станет достаточно устойчива.
Так что получается, что у нас есть простой, прямолинейный, быстрый путь к крайне хорошим результатам, разрешающий обгон пониманием модели своей цели обучения в модели мира её прокси. И более того, этот путь разрешает обгон так быстро и так качественно, как это возможно.
Итак, я думаю, что путь к обманчивой согласованности – сравнительно простая модификация. И он приводит к настолько хорошей работе модели, насколько это возможно при учёте того, насколько хорошо модель сейчас понимает свой процесс обучения, потому что у обманчиво согласованная модель не бывает такой ситуации, что она понимает о процессе обучения больше, чем использует для выбора действий, что вполне возможная неудача для других видов моделей. Благодаря этому, обманчиво согласованная модель работает максимально хорошо относительно своего понимания процесса обучения.

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

Опять же, мы допустим, что модель должна полностью понимать, чего мы хотим – это допущение предела состязательного обучения.

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

Для оценки склонности к простоте надо спросить, насколько сложно определить алгоритм в весах? Если реализован некий алгоритм, который модель использует для вычисления своих действий, мы хотим понимать, какова длина кода, необходимого для записи этого алгоритма? Насколько сложно формализовать вычисление, которое делает модель? Это про простоту.

А ещё мы оценим скорость? Как много вычислений требуется для вывода результатов алгоритма? Когда вы действительно возьмёте этот код и действительно запустите его, насколько это сложно? Сколько вычислений это требует? Сколько времени это займёт?
Традиционно в машинном обучении это считается более жёстким ограничением, чем простота, потому что размер модели определяет, насколько долго она вообще может быть запущена. Но можете представить и ситуацию, в которой это не так твёрдо. Сойдёт и так, и так.
Итак, это две основных склонности, на которые мы будем смотреть: простота и скорость.

Начнём с простоты. Простота – про определение того, что вы хотите, в пространстве всех возможных вещей. Вы можете думать о простоте как о «Насколько тщательно надо целиться, чтобы попасть именно туда из пространства всех возможных моделей?» Сколько бит надо, чтобы найти это? И, в первом приближении, можно понимать простоту как подсчёт, просто спрашивая, как много моделей в каждом классе?
Во-первых, как много Иисусов? Ну, я думаю, по сути, только один, потому что есть только один способ, как человек может быть устроен в точности подобно Богу. У Бога есть конкретная внутренняя структура, которая в точности определяет, что Бог хочет, и есть только один способ портировать эту структуру и сделать уникального человека, который хочет в точности того же.
Окей, как много Мартинов Лютеров? Ну, вопреки истории, есть больше одного Мартина Лютера, потому что Мартин Лютер может по-разному указывать на Библию. Есть много разных эквивалентных Библий, и много разных эквивалентных способов её понять. Например, у вас может быть две копии Библии, которые утверждают одно и то де, так что не важно, на какую указывать. Так что Лютеров больше, чем Иисусов.
Но Паскалей ещё больше. Вы можете быть Паскалем независимо от того, что вас заботит. Вы можете заботиться о чём угодно в мире, о любых возможных вещах, потому что всё, что нужно для Паскаля – это заботиться о чём-то долгосрочно, и иметь причину считать, что он будет наказан, если не сделает то, что требуется. Так что Паскалей просто огромное количество, потому что они могут заботиться о чём угодно.
В общем, суть в том, что Паскалей больше, чем остальных, так что, скорее всего, чтобы указать на них в пространстве, нужно меньше бит.
Вопрос: Кажется, что Паскалям нужно большее, потому что им надо обладать моделями собственных целей и процесса обучения, и способностью к инструментальным рассуждениям, так что модель должна быть больше.
Сейчас мы просто говорим о простоте, так что мы не рассматриваем, насколько большой должна быть модель, только насколько сложно на неё указать. И суть в том, что Иисусам надо заплатить ещё кучу бит, чтобы указать на то, чего конкретно мы пытаемся добиться, если это что-то сравнительно сложное. Приличная часть кода будет просто записью «то, чего мы хотим – конкретно это, и это работает конкретно так». А Паскалям этого не надо. Достаточно сказать «золотые монетки», а затем заботить о них долгосрочно, это приведёт к хорошей работе модели.
Более того – и мы скоро поговорим об этом подробнее – по сути, я утверждаю, что модель мира во всех этих разных классах должна быть в точности одинаковой. Всем им надо понимать мир. Это то же допущение, что мы делали в случае зависимости от пути, что у нас такое окружение, что для хорошей работы надо понимать, как работает мир. Понимание мира – просто то, что требуется в любой ситуации, когда надо в нём действовать.

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

Так какая простейшая усвоенно-согласованная меса-цель? Ну, в этом случае надо определить всю цель обучения, со всеми её сложностями.

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

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

Теперь о скорости. Скорость, как я намекал раньше, это один аспект, в котором, как я думаю, обманчиво согласованные модели на самом деле проигрывают.
Почему они проигрывают? Ну, попробуем понять, насколько много вычислений надо исполнить для каждого класса моделей, чтобы прийти к правильному выводу. Усвоенно согласованная уже обладает точным пониманием, что надо оптимизировать, и просто напрямую это исполняет; исправимо согласованная, может, тратит немного больше времени, потому что ей надо выяснить, куда ведёт указатель, но в целом она похожа.
Но обманчиво согласованной надо совершить как минимум сколько-то дополнительных шагов, потому что она рассуждает «Окей, меня заботят золотые монетки», но просто знания об этом пока недостаточно, чтобы хорошо справиться с обучающим окружением. Ей придётся дополнительно подумать что-то вроде «Окей, меня заботят золотые монетки, а долгосрочная забота о золотых монетках означает, что мне надо попробовать оптимизировать цель обучения, чтобы получить больше золотых монеток потом.» И это добавляет модели шаги рассуждений и некоторую вычислительную стоимость. Так что обманчиво согласованная модель в некотором смысле медленнее остальных.
Я думаю, это на самом деле даёт нам какую-то надежду, по крайней мере, намекает на выход. К сожалению, я думаю, что этой надежды немного. Почему?

Я думаю, основная проблема в том, что уклон в сторону скорости кажется крайне неконкурентноспособным. Почему? Ну, есть причина, почему мы создаём модели побольше, верно? Мы создаём модели побольше, потому что мы хотим получить модели, обладающие способностью использовать намного больше вычислений. И модели побольше работают получше. Потому что, чем больше им доступно вычислений, тем более простые и лучше справляющиеся с задачей, хоть и вычислительно затратные, алгоритмы они находят.
Вот ещё одно свидетельство, которое, я думаю, довольно сильно. Давайте скажем, что мы хотим реализовать априорный уклон в сторону скорости. Вроде «Окей, давайте действительно найдём тратящую минимум вычислений модель, работающую на наших данных.» Что получится?
Вот у нас кривая двойного спуска. Она взята из обучения языковых моделей переводу. И мы изменяем размер внутренних представлений в модели. И если мы хотим максимально уклониться в сторону скорости, то нам надо найти минимальное число параметров, в точности верно работающее с обучающими данными.
Что получается? Ну, взгляните на графики. Одинаковые цвета на них соответствуют друг другу. Если мы посмотрим на нижний синий график, посмотрим, где он доходит до приблизительно идеальной точности при обучении, то мы получим ровно худшую точку при тестировании сверху. И то же самое с зелёным. И для многих других метрик числа параметров будет то же самое.
Что я хочу сказать, это что если мы пытаемся максимально уклониться в сторону скорости, если мы возьмём минимальное число параметров, которое хорошо справляется с обучающими данными, то мы получим худшее возможное качество работы при тестировании. Мы получим в точности худшее возможное обобщение среди всех возможных способов выбрать число параметров.
Что получается? Ну, это говорит нам, что уклон в сторону скорости неконкурентноспособен, потому что он говорит нам, что хорошо работающей, хорошо обобщающейся модели не получится, если выбрать самую маленькую, справляющуюся с данными.
Почему это не будет хорошо обобщаться? Потому что данные в реальном мире не распределены по скорости. Они распределены по простоте. Это вроде подхода к бритве Оккама от реализма, данные реального мира априорно распределены по простоте, так что чем больше вы от этого отклоняетесь, тем хуже у вас получается обобщать. Так что если мы заставим наши модели априорно уклоняться в сторону скорости, использовать требующий минимальных вычислений алгоритм, способный решить задачу, они будут хуже обобщать потом, потому что реальный мир не использует уклон в скорость.
И раз мы хотим получить лучше обобщающие модели, я предсказываю, что мы уйдём от уклона в скорость в направлении уклона в простоту. И это, если мы обеспокоены обманчивостью, плохо, потому что иначе уклон в скорость, кажется, мог бы нас спасти, по крайней мере, в мире низкой зависимости от пути.
Заключение
Теперь, когда вы услышали мои мысли об обманчивой согласованности в мире высокой зависимости от пути и в мире низкой зависимости от пути. Каков мой общий вывод?

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

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

Весьма важно, насколько велик разрыв. Одна вещь в этом анализе, может, не вполне ясна – на сколько бит отличается обманчиво согласованная модель от не-обманчивой. Мне зачастую нравится думать о нашей задаче согласования, будто мы на сколько-то бит ниже выныривания в безопасность. По умолчанию, градиентный спуск хочет подтолкнуть вашу модель в обманчивость. Но не то чтобы не-обманчивые модели были невозможны – они тоже есть в пространстве моделей. Вопрос таков: насколько сильно градиентный спуск хочет подтолкнуть к обманчивым моделям, а не к хорошим? Насколько велики сравнительные размеры этих кругов на картинке справа-снизу?
Это очень важно, потому что это определяет то, сколько бит оптимизационного давления нам надо обеспечить, чтобы модифицировать процесс обучения до того, что он будет толкать в сторону хорошего варианта. Так что, если мы по умолчанию на 10 бит ниже, чем необходимо, это довольно хорошо. Всё, что нам надо – 10 бит оптимизации в нужную сторону. Может, мы можем это сделать с помощью ансамблирования, или чего-то в этом роде.
Если же мы на 10000 бит ниже, это куда хуже – может, потребуется действительно фундаментально переделать то, как работает наш процесс обучения. Я думаю, пока что в точности количественно непонятно, где мы, хотя в целом, как я уже говорил, моя догадка – что мы по крайней мере ниже, чем необходимо, и нам надо сделать что-то, чтобы это изменить.
Вопросы и Ответы
Вопрос: Думаете ли вы, что даже в пределе состязательного обучения мы не сможем найти состязательные примеры, которые заставят обманчивую модель подумать, что у неё есть возможность предательства?
Можно попробовать составлять ловушки, попробовать явно выдать модели ситуацию, в которой она подумает, что может предать. Это возможно, и я думаю, что, наверное, иногда это позволит получить примеры обманчивых моделей. По мере того, как модели будут становиться умнее и более способной распознавать ловушки, это в какой-то момент перестанет работать.
Так что это точно стоит делать. По крайней мере потому, что, когда у нас будет пример, мы сможем эффективнее всё это изучать. Но я не думаю, что это полное решение, по крайней мере если всё, что вы делаете – это очевидное «переобучить модель не быть обманчивой».
Проблема – что дальше? Вы получили пример того, что модель обманчива. И теперь вопрос, как градиентный спуск изменит модель, чтобы она больше не показывала примеры обманчивости? Если вы переобучите её, есть два варианта: она станет менее обманчивой, или просто будет лучше скрываться. И моя догадка – что мы получим второй вариант – если есть пример обманчивости модели, и вы пытаетесь её от этого отучить, то она просто станет лучше в том, чтобы не выглядеть обманчивой, и вовсе не обязательно отучится.
Я думаю, что это по сути своей верно и в мире высокой, и в мире низкой зависимости от пути. К примеру, в мире высокой зависимости от пути, когда у модели уже есть все механизмы обманчивости, заменить всё это и стать исправимой или усвоенно согласованной – весьма большое изменение. Куда проще просто поправить «Эй, тебе следует быть немного поконсервативнее и не предавать так беспечно, сначала действительно уверься, что ты в самом деле уже не в обучении, и что возможность хороша». Это довольно просто, это просто меняет общий уровень паранойи. Так что я думаю, что получится именно это: если вы получили пример обманчивости, а затем пытаетесь его искоренить, модель просто становится более параноидальной.
Вопрос: Если бы обнаружилось, что от двойного спуска легко избавиться, или что он по какой-то причине не важен, были бы вы намного оптимистичнее касательно уклона в скорость?
Я не вполне уверен, что это значит. Я, в каком-то смысле, не считаю проблемой двойной спуск как явление. Это лишь свидетельство, выдающее нам факт об индуктивных склонностях. Можно попробовать искоренить это явление, но не очевидно, что это изменит лежащий в основе факт об индуктивных склонностях: скорость не обобщается хорошо.
Но вы могли бы показать мне какой-нибудь эксперимент, рассматривающий двойной спуск, что я бы посмотрел на него и сказал бы «Это научило меня некоторым фактам об индуктивных склонностях, отличающимся от того, что я знал раньше». Я точно могу представить себе, как я узнаю новые факты такого рода из экспериментов. Но я думаю, лучше формулировать это не как «двойной спуск – проблема», а как «двойной спуск – свидетельство проблемы».
Одно из предсказаний моей картины, на котором, может быть, можно провести эксперимент – это что двойной спуск исчезнет, если просматривать пространство моделей в порядке простоты. В моей картине, двойной спуск происходит потому, что порядок, в котором модели входят в доступное пространство моделей, отличается от критерия, который использует СГС для выбора в этом пространстве, и второе больше склоняется к простоте. Если распутать это, действительно добавлять модели, поддерживая априорное распределение, начиная с простейших, то, думаю, двойного спуска не будет, я думаю, что первая найденная и подходящая под обучающие данные модель будет моделью, которая лучше всего обобщается.
Вопрос: Есть ли причины подозревать, что других индуктивных склонностей, кроме простоты и скорости, нет?
Причин нет, и на самом деле точно есть и много других. Проблема просто в том, что мы их не особо понимаем. Так что, по крайней мере прямо сейчас, единственные, про которые я весьма уверен, что мы их понимаем – это простота и скорость. Есть и ещё. Сложность схем и отдельно скорости в максимальном и в среднем случае – вот то, что мы хоть как-то понимаем, и что тут может иметь значение.
На самом деле, я думаю, один из правдоподобно перспективных путей – попробовать реализовать уклон по средней скорости, а не по минимальной (в оригинале как раз максимальная скорость, но он имеет в виду максимальное время, я спросил его в комментариях – прим. пер.) По минимальной скорости означает: по всем вводам выбрать максимальное затраченное время, в то время как уклон по средней скорости касается всех вводов. В некотором смысле, можно считать, что метод цепочек мыслей потенциально выдаёт уклон по средней скорости, потому что всегда хочется получить самую короткую цепочку. Если вместо ограничения времени исполнения для всех вводов, мотивировать низкое время вычислений в каждом отдельном, я думаю, это может помочь. Я думаю, что уклон по средней скорости подталкивает в ситуацию, где на некоторых вводах модель не будет обманчивой, потому что есть простой способ решить ввод, обманчивость необязательна, это лишние вычисления. Но это не затрагивает то, что на вводах, где модели приходится совершать много достаточно сложных рассуждений, обманчивость всё ещё может быть простейшим методом. Так что наличие и отсутствия обманчивости очень зависит от вводов. Такова моя догадка о том, что происходит в случае уклона по средней скорости.
Вопрос: Но с чего ожидать, что уклон по средней скорости будет хорошо обобщаться? Кажется, что у него есть та же проблема, что у минимальной – в мире распределение другое.
Да! Я не утверждаю, что это хорошо обобщится. Только, что вот есть какой-то априорный анализ того, что может получится, который я могу провести хоть в какой-то степени. Я думаю, что я могу что-то сказать об уклоне по средней скорости и о уклоне по размерам схем. Есть и другие вещи. Конечно, я согласен, что всё ещё есть вопрос того, обобщится ли это хорошо! Это одна из самых серьёзных проблем таких рассуждений, они почти всегда приходят к огромным таблицам и перечислениям. Добиться хорошей обобщённости сложно, потому что бритва Оккама работает.
Вопрос: Интересно, а где в этих трёх категориях, Иисусов, Лютеров и Паскалей, вы поместили бы людей? Являемся ли мы обманчиво согласованными относительно своего процесса обучения и схемы вознаграждения?
Люди – странный пример. Первая проблема – что тут три уровня. Мы говорим о неокортексе относительно эволюции? Или о неокортексе, относительно подкорковой системы вознаграждения? Или о подкорковой системе вознаграждения относительно эволюции?
Вопрос: Давайте, например, просто о конкретно человеческих выученных ценностях и мышлении относительно жёстко закодированной направляющей системы.
Конечно. Я думаю, мы иногда можем быть обманчивыми. Мы точно делаем штуки вроде «съесть конфету прямо после выполнения домашнего задания». Впрочем, это вроде смеси разных классов моделей, что не особо удивительно. «Чистая» история, в которой мы точно получим что-то одно, почти наверняка ложна. И в машинном обучении тоже скорее всего это будет смешано. Но такой же анализ применим к тому, в какой степени мы получим каждый из вариантов. И в этом плане, по крайней мере у людей, я бы точно сказал, что обманчивость определённо есть. По крайней мере, у людей относительно нашей подкорковой системы вознаграждения.
Часть проблемы тут ещё в том, что у людей нет явной возможности совершить катастрофическое действие, переписывающее систему вознаграждения. Но мы можем представить себе такую возможность. Что если бы у нас сегодня была возможность модифицировать свои собственные системы вознаграждения. Воспользовались бы мы её? Определённо да, мы же принимаем ИОЗСы. Может, в славном трансгуманистическом будущем мы модифицируем человеческий мозг, чтобы сделать его лучше. И скажем «Окей, мы собираемся составить план, который в итоге позволит нам избавиться от этой системы вознаграждения, которая нам не нравится».
Есть ли тут обман? Я думаю, точно да. Но история сложнее, чем просто «обманчивая согласованность». Это хитро, так, как я ожидаю от реальности. Эту лекцию точно лучше интерпретировать как упрощённую историю, которую можно анализировать. На самом деле будет совершеннейший беспорядок.
Вопрос: Я скажу аналогию, наверное, неидеальную. Но послушайте. Предположим, интерпретируемость – это часть комнаты, не скрытая мебелью. И при обучении обманчивые исходы – это как тараканы, и вы говорите: «О, тараканы под мебелью? Мы не можем их увидеть». То есть, если это нормальная модель того, как интерпретируемость связана с выискиванием обманчивой согласованности, получается, что нам нужна стопроцентная прозрачность и интерпретируемость, чтобы всё было хорошо.
Я думаю, заключение ложно. Не думаю, что нужны стопроцентные прозрачность и интерпретируемость, чтобы решить эту проблему. Почему я так думаю?
Во-первых, это сильно зависит от того, что вы пытаетесь сделать с помощью своих средств интерпретируемости. Если это выглядит как то, что вы видите обман и обучаете так, чтобы его больше не видеть – это ужасный вариант. Как мы уже говорили раньше, вы просто научите модель лучше прятать обман. Так что это плохое использование инструментов интерпретируемости для согласования. Всё же, я думаю, что инструменты интерпретируемости – ключ к решению этой задачи. Но не таким образом.
Так каким? Вот вариант: если мы в мире высокой зависимости от пути, то мы можем понять, как модель выглядит на ранних этапах обучения. Мы можем инспектировать и понять прокси, можем попробовать улучшить прокси, обучая модель, пока она не прячет ничего активно от инструментов интерпретируемости. Обманчивая модель хочет что-то активно прятать, но на этом этапе у нас пока нет обманчивой модели. Если применить инструменты на ранних этапах, чтобы направлять процесс обучения, пока никакой обманчивой модели, активно пытающейся что-то от вас спрятать, нет, то это просто предоставит дополнительные биты оптимизации в нужном направлении.
Итак, мы хотим использовать инструменты интерпретируемости, чтобы предоставить дополнительные биты оптимизации, чтобы понять, что происходит и направить это в верном направлении, либо явным образом, передавая градиенты, либо просто смотря и понимая, какая будет траектория. На что, я думаю, не следует полагаться – это на способность исправить обманчивость, когда она уже есть – целью должно быть предотвращение её заранее.
Другая важная вещь, на которую я укажу – что вы можете направить свои усилия интерпретируемости в сторону понимания самого процесса градиентного спуска. Когда люди думают об интерпретируемости, они обычно сосредоточены на интерпретируемости конечной модели – для ясности, я думаю, что это очень полезно. Я написал целый пост о том, каково, по моему мнению, технологическое дерево прозрачности и интерпретируемости, где я сказал «В первую очередь надо иметь возможность как-то понимать, как и что модели делают». Но это не единственное. Есть ещё семь штук, о которых я там говорил.
Суть в том, что после понимания отдельной модели неплохо получить и понимание, как мы получили эту модель, понимание процесса и закономерностей обучения – об этом обычно думают, как об исследованиях индуктивных склонностей. При наличии этого понимания, и если бы наши инструменты прозрачности сообщили нам, что у модели, скажем, плохие прокси, то мы могли бы сделать шаг градиентного спуска, пытающийся сделать прокси хорошими, и действительно считать, что это сработает. Потому что мы и правда бы понимали, что этот шаг делает. Если бы у нас была способность понимать, по какой причине градиент направляется в ту или иную сторону, у нас были бы основания считать, что он не просто «гудхартит» наши инструменты прозрачности.
Вопрос: Но для этого альтернативном класса инструментов интерпретируемости вам всё равно хотелось бы получить сто процентов на путях обучения или чём-то таком?
Определённо не обязательно, чтобы инструменты прозрачности были на сто процентов «гудхартоустойчивыми». Надо только, чтобы градиентный спуск никогда не нашёл ситуацию, в которой он может «отгудхартить» инструменты прозрачности; этот условие куда более достижимо.
Вопрос: Мне кажется, модели вовсе не обязательно быть обманчивой, чтобы оптимизация с помощью инструментов интерпретируемости подталкивала её к большей непрозрачности.
Да. Поэтому мы хотим понимать градиенты. Вот как можно об этом думать: о каких двух противниках нам надо беспокоиться, если мы хотим, чтобы наши инструменты прозрачности работали? Ну, обманчивая модель может пытаться обдурить наши инструменты. А ещё есть градиентный спуск. Если мы подключаем к нему инструменты интерпретируемости, то он активно пытается загнать их в выдачу конкретного результата.
Я думаю, что использование градиентного спуска с инструментами интерпретируемости – нечто, что мы скорее всего когда-нибудь хотим делать, но пока мы до этого не добрались. Как я сказал, нам надо иметь основания считать, что градиентный спуск не «отгудхартит» инструменты. По моему мнению, эти основания должны взяться из понимания градиентного спуска! Недостаточно инструментов прозрачности, понимающих модель, надо ещё и понимать то, что происходит при её обучении.
Чтобы можно было посмотреть, что градиентный спуск предлагает это конкретное изменение по этой конкретной причине, и можно было сказать: «О, я вижу, это хороший путь изменения модели». А если видите изменение в духе «Я сделаю модель менее прозрачной», то это плохо! Так, если вы понимаете закономерности предлагаемых изменений, то, думаю, проблема обходится. Впрочем, как я сказал, я думаю, что это технологии прозрачности следующего уровня, нам надо в итоге дойти до решения этой задачи, но начинать надо с хотя бы какого-то понимания моделей и того, как они работают. Я думаю, часто люди хотят забежать вперёд, что-то вроде «О, мы возьмём нынешние инструменты интерпретируемости и подключим к функции потерь». И это не работает. Но это не значит, что прозрачность в итоге не будет полезна для изменения того, как мы обучаем модели. Просто перед нами ещё не один шаг.
Вопрос: Самый тупой и простой инструмент прозрачности, который я могу представить, это: взять «рассудителя-цепочки-мыслей», и прочитать его последовательность мыслей. Надеюсь, это даст какое-то представление о том, что он думает.
Нет! Я не думаю, что это поможет с прозрачностью. С чем это может помочь, как я уже говорил, это с созданием уклона в среднюю скорость.
С чем нет – это на самом деле не выдаст нам никакой прозрачности. Вот хороший способ он этом думать: обманчиво согласованная модель может поместить в стенограмму всё что угодно, что убедит вас, что она делает то, что надо. Усвоенно и исправимо согласованные модели могут делать то же самое. Суть в том, что если вы понимаете внутренности модели только смотря на её поведенческий вывод в цепочках-мыслей, то это не накладывает ограничений на получение обманчивых или не-обманчивых моделей.
Может, можно было бы сделать так, чтобы всё относящееся к делу мышление было видимым в цепочке мыслей. Но как? По умолчанию, если вы просто обучите выдаче цепочки мыслей, каждый отдельный переход всё ещё может быть обманчивым.
Вопрос: Не говорили ли вы, что вы бы использовали инструменты прозрачности для направления процесса обучения до появления обманчивости? Почему не сделать того же с цепочками мыслей?
Да. Я думаю, нам следует. Но вот о чём я беспокоюсь. Если мы пробуем направить модель в конкретном направлении, выдав поведенческий стимул, то градиент этим стимулом и будет задаваться, а это выглядит в точности как то, с чего мы начали, верно? Вся задача была о том, что происходит, когда мы пытаемся простимулировать модель вести себя нужным образом во время обучения. И если наш единственный способ получения прозрачности это, ну, какие-то поведенческие проверки, по которым мы строим градиент, чтобы модель хорошо себя по ним показывала – то мы вернулись к всё той же проблеме что простейшая для градиентного спуска модификация, которая приведёт к демонстрации моделью хороших результатов – это сделать её обманчивой. Если это так, то мы не можем решить эту проблему, просто добавив новые поведенческие проверки.
Может, это немного слишком сильное утверждение, потому что технически, наверное, всё ещё можно решить задачу, просто подобрав поведенческую функцию потерь с в точности верными встроенными индуктивными склонностями. Конкретная функция потерь делает одни пути вероятнее других. Но я думаю, что для того, чтобы можно было так сделать, всё равно понадобится обойти аргументы о том, почему, по умолчанию, только поведенческое обучение толкает в сторону обманчивости.
Вопрос: Нельзя ли просто переклассифицировать выводы инструментов интерпретируемости как выводы модели? Они определяются скрытыми активациями модели, так не просто ли это ещё одна голова вывода?
Представлять это себе можно как угодно. Я думаю, что ключевая проблема – что вы ограничиваете с помощью того, на что смотрите? Если единственные ограничения – на итоговое поведение, то всё, что я знаю – что модель будет реализовывать некий алгоритм с таким-то поведением. Но если я смотрю внутрь неё, вижу другие вещи, то я накладываю больше ограничений на то, как она может работать. Это должен быть алгоритм, включающий компонент X, или действующий способом X, или что-то ещё.
Проблема с цепочками мыслей не в том, что это само по себе поведение, проблема в том, что весь анализ, о котором я тут говорил, применим и к ним, потому что все классы моделей одинаково хороши в решении этой задачи. Этот способ не различает их, не предоставляет оптимизационного давления в конкретном направлении. А мы хотим как-то создать оптимизационное давление, различающее классы моделей.
Вот если бы мы нашли, скажем, магические инструменты интерпретируемости, позволяющие заглянуть внутрь и найти точные прокси модели, или что-то в этом роде. Это всё ещё можно было бы считать выводом, но это вывод, действительно различающий классы моделей. Он разный в зависимости от того, к какому классу принадлежит модель, так что мы могли бы его использовать для создания давления отбора.
Вопрос: Я полагаю, я думаю, что обратная связь цепочкой мыслей различна по классам моделей.
Ну, точно существуют обманчивые модели, чья обманчивость ясна из цепочки мыслей. Проблема в том, что существуют и обманчивые модели, для которых это не так. Я думаю, это дало бы нам пару бит, потому что обманчивая модель, которую это раскрывает, наверное, проще, чем обманчивая модель, которую не раскрывает. Так что какие-то обманчивые модели вы в каком-то смысле искорените. Но теперь вы столкнётесь с следующей по простоте обманчивой модели, обманчивость которой цепочка мыслей уже не покажет.
Так что, возвращаясь к общей картине, вопрос в том, сколько бит вы получите? Я думаю, что-то вроде двух. Я не думаю, что это сильно повлияет. Мы в ситуации, когда следующая простейшая обманчивая модель всё ещё очень проста, не сильно сложнее думать обманчиво так, чтобы это не было очевидно из цепочки мыслей. Немного сложнее, но не сильно. Так что вы какие-то биты оптимизации, но это сравнительно мало. Если мы, скажем на 10000 бит ниже ватерлинии, это не поможет. Если мы на грани, и оказывается, что может получиться как угодно, то может это нам и поможет, но моя догадка, что в нашей ситуации этого недостаточно.
Вопрос: Просто хочется отметить, что всё это зависит в частности от того, насколько наши итоговые способности приходят из цепочек мыслей.
Для меня это не очевидно. К примеру, мне кажется, что модель может думать непонятными людям способами. Так она сможет спрятать своё мышление и получить преимущества цепочек мыслей, не показывая нам свою обманчивость.
Вопрос: Что, если мы используем непрозрачный набор эвристик для генерации совершенно непонятного людям вывода, а затем, зная вывод, сгенерируем эквивалентную доступную людям цепочку мыслей?
Это хуже – я думаю, ещё хуже предыдущего варианта. Там, когда цепочка мыслей действительно была инструментом получения ответа, у нас были хоть какие-то причины считать, что в этом контексте обманчивую модель реализовать было бы чуточку сложнее. В этом же случае, обманчивой и не-обманчивой модели было бы одинаково просто так себя вести. А затем, когда мы будем получать объяснение, оно всегда будет не-обманчивым объяснением, независимо от модели. Нет причин для получения обманчивого объяснения, даже при обманчивой модели. Это, по сути, целая задача Выявления Скрытого Знания (ELK). Вспомните, разные классы моделей работают одинаково хорошо, ведут себя в точности одинаково во время обучения. Так что вы можете получить одно и то же объяснение для обманчивых и не-обманчивых моделей, и если вы проверяете лишь его, вы не увидите разницы.
***
- Вопрос: Мне кажется, что если вы приходите из пункта А в пункт Б, то неважно, как вы туда добрались, только какая в итоге получилась модель.
Я не совсем так думаю о зависимости от пути. Предположим, что поведение модели при обучении сходится. Она учится соответствовать обучающим данным. Мы думаем о ней в контексте того, что поведение всех моделей при обучении в какой-то момент сойдётся. Но есть куча других штук, которые остаются неопределёнными, если мы знаем только поведение при обучении. Мы не знаем, сойдутся ли они к одному и тому же алгоритму, обобщатся ли они одинаково.
Так что, когда мы говорим о высокой зависимости от пути, это означает, что очень важно, как именно вы получили это конкретное поведение при обучении. Тот факт, что вы прошли конкретный путь через пространство моделей, чтобы добраться до этого конкретного поведения при обучении, крайне важен для понимания, как поведение обобщится. А если мы говорим про низкую зависимость от пути, то мы имеем в виду, что как именно вы получили это конкретное поведение при обучении не очень важно, важно только, что получили.
Вопрос: Когда вы говорите о пространстве моделей, вы имеете в виду функциональное поведение, а не буквальное пространство параметров?
Тут не совсем есть точное соответствие, потому что есть много способов реализации в точности одной и той же функции в сети. Но это довольно близко. В смысле, по большей части, когда я говорю о пространстве моделей, я говорю либо о пространстве весов, либо о пространстве функций от любых вводов, не только от обучающих данных.
В этом контексте зависимости от пути мы берём пространство функций, ограниченное качеством работы при обучении, где мы придём к одним и тем же результатам на обучающих данных, но мы хотим знать о том, как они дотуда добрались, чтобы понять, как они обобщатся.
Вопрос: Поправьте, если я неправ. Но если у вас есть итоговая обученная модель, точка в пространстве весов, то уже это финальная точка пути определяет поведение на других данных.
Да, верно. Суть в том, что они сходятся к одному и тому же функциональному поведению на обучающем распределении, но вовсе не обязательно к одному и тому же функциональному поведению за пределами обучающего распределения.
- Вопрос: В прошлый раз, когда вы читали эту лекцию, мне кажется, я тут вставил замечание о том, что я сомневаюсь, является ли грокинг действительно свидетельством априорного уклона в простоту, потому что ещё это может быть результатом того, что у нас есть крохотный градиентный сигнал из-за не полной уверенности в классификации. И я спросил моего друга-аспиранта машинного обучения, который это изучает, и вы правы. И в этом примере было увядание весов. И если его отключить, то грокинг не происходит.
Да, моё понимание именно такое – что увядание весов толкает к грокингу. Так что это свидетельство, что тут есть уклон в простоту, встроенный к архитектуру, всегда сходится к одной и той же простой штуке.
Вопрос: Но если отключить увядание весов, грокинга не будет.
Ну, можно предположить, что именно он и задаёт архитектурный априорный уклон. Но может быть и более сильная гипотеза, что без увядания весов просто градиента недостаточно, чтобы успеть этого добиться.
Вопрос: Для людей, незнакомых с термином «увядание весов», это то же самое, что L2-регуляризация?
Да, то же самое.
- Вопрос: Становится ли со временем Мартин Лютер усвоенно согласованным по мере того, как он изучает Библию?
Нет. С моей точки зрения, по крайней мере в нашем примере – не собираюсь ничего заявлять о реальном Мартине Лютере – заботится об очень хорошем понимании Библии. Так что его цель, что бы ни было в Библии, выяснить это. Но он не собирается модифицировать себя, чтобы стать эквивалентным Библии.
Путь я – модель-Лютер. И я модифицирую себя, чтобы заботиться о том, как я сейчас понимаю Библию. А потом я осознаю, что Библия не такая, как я всё это время думал. Это плохо, потому что то, что я хотел изначально – не то, что говорит моё нынешнее понимание Библии. Так что я хочу иметь возможность сменить цель, если я потом пойму, что на самом деле Библия хочет чего-то другого. Так что, Лютер не хочет модифицировать себя в усвоенную согласованность. Стоит уточнить, что так, как мы сейчас это представляем, у модели скорее всего нет никакого контроля над тем, какой моделью она будет. Кроме той степени, в которой она контролирует свои результаты при обучении, что и позволяет обманчивой модели обманывать.
Вопрос: То есть Лютер говорит: «Библия пока супер, я хочу побольше о ней узнать, но я оставляю себе вариант не быть ей связанным.»
Нет. Лютер любит Библию и хочет делать всё, что она говорит.
Вопрос: Так почему Лютер не хочет изменить свой код, чтобы стать эквивалентным Библии?
Библия не говорит ему изменить свой код, чтобы стать эквивалентным Библии. Библия говорит делай то-то. Можно представить себе ситуацию, когда Библия говорит модифицировать себя, чтобы любить скрепки, или что-то ещё. В такой ситуации модель говорит, ну, ладно, я модифицирую себя, чтобы любить скрепки. Но Лютер не хочет модифицировать себя, если Библия этого не говорит.
Проблема с модификацией себя в том, что модель-Лютер обеспокоена «Хмм, а вдруг эта Библия на самом деле поддельная?» или чем-то в этом роде. Или, как мы ещё обсудим, можно оказаться в ситуации, что Лютера будет заботить то, что сказано в подделке, он будет считать, что она – правильный внешний источник.
- Вопрос: То, что вы заявили о предобучении и тонкой настройке, звучит будто это должно быть наоборот. Если предобучение требует намного больше вычислений, чем подстройка модели вознаграждения, то, кажется, выучить свою функцию вознаграждения дешевле?
Ну, дешевле, но просто менее полезно. Почти всё качество работы берётся из, в каком-то смысле, понимания мира. Ещё, я думаю, часть идеи в том, что, когда ты понимаешь мир, у тебя есть возможность сравнительно дёшево понять, чего от тебя хотят. Но если пытаться напрямую понять то, что от тебя хотят – тогда в этот момент ты ещё не будешь обладать нужными для этого понимания концептами. Понимать мир супер-важно. Это ключевой момент.
Вопрос: Кажется, что для обоснования этого заявления надо что-то вроде «потратить одинаково много вычислений на обучение изначально случайно инициализированного RL-агента с моделью вознаграждения и на предобучение, а потом уже настройку на вознаграждение».
Да, это кажется довольно интересным экспериментом. Я думаю, так мы узнаем больше, чем просто от сравнения затрат предобучения и настройки.
Вопрос: Я всё ещё не понимаю, как это даёт настоящее свидетельство в пользу вашего утверждения.
Ну, можно представить мир, где понимание мира очень дёшево, а получить штуку, которая способна делать то, что вы хотите – выводить хорошие краткие содержания, или что-то ещё – очень-очень сложно – потому что цель сложно формализовать. Я думаю, в этом мире были бы ситуации, когда, если вы просто обучили модель на всей задаче, то большая часть качества её работы, большая часть градиентных обновлений, бралась бы из улучшения способности модели понимать, что вы от неё хотите, а не от улучшения её общего понимания мира.
А я описываю ситуацию, где, как мне кажется, большая часть градиентных обновлений идут в сторону улучшения понимания мира.
В обоих случаях, независимо от того, в какую сторону направлено больше градиентных обновлений всё ещё применим закон уменьшающейся отдачи. Всё ещё, в обоих мирах, СГС будет балансировать между тем и другим, так что будет очень странно, если одно максимизировалось раньше другого.
Однако, я думаю, тот факт, что, кажется, почти все шаги градиентного спуска идут на понимания мира, учит нас тому, что на самом деле надо для хорошей работы. И говорит нам, что если мы попробуем обучить чему-то модель и остановимся на полпути, то большая часть выработанных ею способностей возьмётся из понимания мира, так что следует ожидать, что градиентный спуск потратил на это большую часть своих ресурсов.
Всё же нас должен волновать не вопрос, что раньше максимизируется, а максимизируется ли качество прокси до достаточного для обманчивости понимания процесса обучения. Я соглашусь, что неясно, когда это должно случиться, но это всё же кажется очень важным фоновым фактом, который надо держать в голове.