Как стать автором
Обновить

Не горе от ума, а ум от голода — откуда LLM такие умные

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров3.1K

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

Макс Тегмарк предложил использовать механистический подход к интерпретируемости, но применять его не к алгоритмам внутри LLM, а к самим знаниям. То есть попробовать выяснить, есть ли внутри моделей какая-то закономерность запоминания или даже понимания. Сразу спойлер (а на самом деле — название статьи) — модели умны от “голода”, это  “intelligence from starvation”. Причем это общий вывод для разных моделей.

Теперь подробнее о том, как Тегмарк с коллегами пришли к этому выводу. Исследование проводили экспериментально — брали разные модели, “разрезали” их на части и затем “сшивали” части между собой. 

В виде формулы это выглядит так:

A и В — две языковые модели, H и K — слои декодера, E — слой, формирующий эмбеддинги, а U — слой, раскрывающий эмбеддинги обратно в слова. От первой модели остается k слоев, от второй берем последние l слоев. Остается только сама операция сшивания S. Ее обучают как линейное или почти линейное преобразование. Под “почти” линейностью подразумевается, что есть некий малый множитель, под который можно спрятать все нелинейности. Такое преобразование, конечно, более вычислительно сложно, чем, например, использование метрики по k-nearest neighbors, но авторы идут на это осознанно. Может быть сколь угодно много вырожденных эмбеддингов, которые можно декодировать одинаковым декодером, но по nearest neighbors они будут бесконечно далеки. 

Сшивание проводили между OPT, Pythia, Mistral и LLaMA. Оказалось, что разрезать и сшивать модели можно довольно безболезненно в разных местах. Итоговый loss у франкенштейна оказывается чуть хуже, чем у исходных моделей. Но задача эксперимента совсем не в том, чтобы улучшить качество. Всё это препарирование нужно для того, чтобы попытаться пробраться во внутренности модели и покопаться в них. Желательно послойно. 

Ниже на графике “биопсия” сшивания — результаты моделей, полученных сшиванием разных слоев.  Первые несколько слоев модели по оси y пришиваются к скольким-то последним слоям модели по оси x, а цвет показывает результирующий loss. 

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

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

Следующий эксперимент. MLP дали на вход генеалогические древа нескольких известных семейств и посмотрели, какие эмбеддинги формирует модель о связях между членами семьи. Модели задавали в разном порядке родственные связи родитель-ребенок, например, “Пол родитель Джона”, “Николас родитель Давида” и так далее, а затем спрашивали, например, “Давид потомок Эрика?”.  

Выясняется, что в каком порядке не задавались бы начальные родственные связи, получившиеся эмбеддинги имеют по сути одну и ту же структуру — сектора или угла (авторы называют это двумерным конусом). На графике выше точки “родитель” - “ребенок” соединили линиями для наглядности, но и так видно, что было в голове у модели. X будет считаться потомком Y если Ex лежит внутри угла, исходящего из Ey. Более того, можно даже вручную сделать декодер, который будет из этих выученных эмбеддингов восстанавливать родство. 

То же самое проделали с 18 другими родственными отношениями (отец, мать, муж, сестра, дядя, зять и так далее) и наблюдали похожие закономерности. На графике их уже не так просто отобразить, но авторы заметили, что эмбеддинги отражают дополнительные хакрактреистики, например род или поколение. В независимости от того, в каком порядке дерево задавалось.

На следующем этапе такой же эксперимент провели уже с LLM и сравнили CKA(Centered Kernel Alignment) на разных слоях. Наблюдаемый результат (график ниже) снова говорит в пользу того, что модель обрабатывает данные в два этапа: формирование семантических концепций на начальных слоях и предсказывание следующих токенов на финальных. 

И, наконец, эксперимент, который и дал название статье. Если размер декодера слишком мал, он не может “вместить” даже обучающий датасет, не говоря уже о том, чтобы обобщить на новые данные. Если размер декодера слишком велик, то модель переобучается и снова не может обобщать (на обучающих данных accuracy остается 100%, а на тестовой падает). Всё это совпадает с давно известными наблюдениями, само по себе это не открытие. А открытие — это интерпретация этих наблюдений. Авторы делают такой вывод: умение обобщать происходит от “голода” модели. Ей нужно найти общие, универсальные представления из ограниченного набора весов. 

Другими словами, если декодер слишком тупой, он будет работать не лучше рандомайзера. Если декодер слишком умный, он просто запомнит все обучающие данные и ничего полезного из него не выйдет. Остается золотая середина, которые авторы называют “зоной Златовласки” по аналогии с зоной обитаемости вокруг звезд (видимо, тут сказывается астрофизический бэкграунд Тегмарка). В этой зоне декодеру приходится обходиться тем, что есть и выдумывать хитрые репрезентации.

Больше наших обзоров AI‑статей — на канале Pro AI.

Теги:
Хабы:
+11
Комментарии1

Публикации

Работа

Data Scientist
50 вакансий

Ближайшие события