# Как Allen Institute for AI открывает «черный ящик» LLM с помощью проекта OLMo

Источник: https://www.youtube.com/watch?v=mwS9zPCv_dY
Канал: The TWIML AI Podcast with Sam Charrington
Опубликовано: 04.03.2024

---

Современная индустрия искусственного интеллекта переживает кризис воспроизводимости: большинство передовых больших языковых моделей (LLM) разрабатываются за закрытыми дверями технологических гигантов. В ответ на эту тенденцию некоммерческий Институт искусственного интеллекта Аллена (AI2) представил OLMo — полностью открытую инициативу, призванную вернуть научную строгость и прозрачность в сферу глубокого обучения. Старший инженер-исследователь AI2 Акшита Бхагия рассказывает, как создание открытой экосистемы из обучающих данных, кода, логов и промежуточных весов меняет подход к созданию ИИ и с какими неожиданными трудностями сталкиваются разработчики при масштабировании моделей.

## 🚀 Философия OLMo: почему закрытые ИИ-модели тормозят науку
[[JUMP:02:01]]

Проект OLMo (Open Language Model) зародился в начале 2023 года [02:14]. Главным стимулом для его запуска стало то, что подавляющее большинство коммерческих и даже номинально открытых моделей на рынке скрывают детали своего обучения [02:26]. Разработчики либо предоставляют доступ к технологиям исключительно через API, либо публикуют веса моделей без раскрытия состава обучающей выборки и конфигурационных файлов. 

По мнению Акшиты Бхагии, отсутствие прозрачности делает невозможным полноценное научное исследование ИИ [02:41]. Ученые не могут понять, почему модель ведёт себя определённым образом, как на её выводы влияют те или иные обучающие тексты и где проходят границы её когнитивных возможностей. Кроме того, закрытость процессов приводит к колоссальным финансовым потерям в масштабах всей индустрии: десятки научных групп параллельно тратят миллионы долларов на одни и те же вычислительные эксперименты [03:06], повторно совершая одни и те же ошибки и «изобретая велосипед» [03:20].

Вместо выпуска очередной изолированной модели команда AI2 создала полноценную открытую экосистему. В неё входят:

*   Исходный код для пре-трейнинга и инструкции по его запуску [03:46];
*   Обучающие логи, включая полные отчеты из системы отслеживания Weights & Biases [04:00];
*   Инструменты для оценки моделей и код для их дообучения под инструкции (instruction tuning) [04:00];
*   Промежуточные веса моделей на разных этапах обучения, что позволяет анализировать динамику оптимизации нейросети [04:00].

На момент публикации материалов проекта инженерами были подготовлены версии моделей OLMo на 1 млрд (1B) и 7 млрд (7B) параметров [04:12]. На этапе обучения находится флагманская модель масштабом 65 млрд (65B) параметров [04:12]. 

По мнению Акшиты Бхагии, цель проекта состоит не в том, чтобы занять первую строчку в каком-либо бенчмарке на две недели [05:59]. Команда стремится дать исследователям фундамент для совместной работы. Если другая научная группа возьмет наработки OLMo и сделает модель еще лучше — это будет победой для всего мирового сообщества [05:45].

## 📊 Дольма: 3 триллиона токенов под строгим контролем
[[JUMP:06:40]]

Ключевым дифференциатором OLMo на фоне таких моделей, как Llama 2, является полная открытость обучающей выборки [06:40]. Инженеры AI2 представили проект Dolma (шутливая расшифровка — *Data to feed OLMo’s appetite*, «Данные для утоления аппетита OLMo») [07:56]. Это гигантский датасет объемом около 3 триллионов токенов [08:10], а также открытый одноименный инструментарий (Dolma Toolkit) для его фильтрации и курирования [08:10].

Для построения выборки исследователи сознательно выбирали только общедоступные источники информации, чтобы избежать юридических рисков и обеспечить максимальную прозрачность [08:22]. В состав Dolma вошли:

*   Архивы веб-страниц Common Crawl и C4 [08:36];
*   Базы программного кода (использовался очищенный датасет The Stack) [09:19];
*   Архивы обсуждений Reddit [08:51];
*   Академические статьи, электронные книги и русскоязычные/англоязычные разделы Википедии [08:51].

Очистка данных проходила в несколько этапов. На первом шаге применялся языковой фильтр, поскольку Dolma ориентирована преимущественно на английский язык и языки программирования [09:34]. На втором этапе производилась фильтрация качества по базовым эвристикам — например, из датасета исключались документы, состоящие из одной повторяющейся гласной буквы [10:01]. Третий этап включал удаление персональных данных (PII) и фильтрацию токсичного контента [10:15].

Особое внимание команда уделила борьбе с контаминацией данных [10:28]. С помощью внутреннего проекта AI2 под названием *What’s in my Big Data* разработчики проверяли обучающую выборку на предмет утечки в неё тестовых вопросов из популярных бенчмарков [10:28]. Если тесты попадают в обучение, модель демонстрирует отличные результаты на бумаге, но теряет объективность при реальном тестировании [11:11].

Акшита Бхагия подчёркивает, что знание точного состава обучающих данных критически важно для коммерческого использования моделей [12:41]. Бизнес должен понимать, видела ли модель во время обучения политические новости, медицинские карты или специфический технический сленг, чтобы прогнозировать её поведение в реальных продуктах [12:55].

## 🛠 Инженерные ловушки: непредсказуемый PyTorch и проблемы с весами
[[JUMP:15:32]]

Процесс обучения крупной языковой модели всегда сопряжен с техническими трудностями, которые редко попадают на страницы академических публикаций. Инженеры AI2 столкнулись со множеством скрытых факторов, влияние которых невозможно было просчитать заранее из-за ограничений вычислительного бюджета на проведение предварительных тестов (абляций) [16:23].

Одной из главных архитектурных проблем при переходе от масштаба в 1 млрд параметров к 7 млрд стала нестабильность функции потерь [16:50]. При обучении OLMo 1B хорошо себя показал метод связывания весов (weight tying), при котором эмбеддинги входного и выходного слоёв используют общую матрицу параметров [17:03]. Однако на модели масштабом 7B этот подход начал вызывать регулярные скачки лосса и нестабильность обучения [16:50]. 

Кроме того, разработчики столкнулись с проблемами при использовании параметрической нормализации слоёв (parametric layer norm) [17:32]. В отличие от авторов большинства аналогичных LLM, инженерам OLMo пришлось отказаться от этого подхода в пользу непараметрической нормализации слоёв [17:32].

Самым ярким и неожиданным препятствием в процессе обучения стал баг в генераторе случайных чисел популярной библиотеки PyTorch [18:39]. На ранних этапах обучения инженеры зафиксировали странные периодические аномалии на графиках сходимости модели [18:39]. Исследователи две недели вели ожесточенные споры об архитектуре нейросети, подозревая ошибки в конфигурации гиперпараметров [19:19]. 

В итоге выяснилось, что стандартная функция генерации случайных чисел в PyTorch (`torch.random`) выдает некорректные, недостаточно случайные перестановки при перемешивании обучающих последовательностей [19:05]. Этот случай, по мнению Бхагии, наглядно демонстрирует пользу публикации подробных инженерных отчетов: такие «невидимые» проблемы часто замалчиваются командами разработчиков, вынуждая другие лаборатории тратить недели на их повторное обнаружение [19:32].

## ⚖️ Paloma: новая методология оценки ИИ на 600 микродоменах
[[JUMP:23:26]]

Оценка возможностей современных моделей — еще одна проблемная зона ИИ-индустрии. Традиционные бенчмарки (такие как Helm или AlpacaEval) чаще всего формулируют задачи в виде ранговой классификации или генерации ответов на вопросы [24:51]. Однако точность модели в таких тестах сильно зависит от формулировки промпта [24:51]. Изменение пары слов в вопросе может драматически снизить или повысить показатели системы [24:51].

Для решения этой проблемы исследователь Иэн Магнусон из команды AI2 возглавил разработку Paloma — специализированного бенчмарка для оценки перплексии моделей (Perplexity Analysis for Language Model Assessment) [24:07]. Перплексия измеряет, насколько хорошо модель предсказывает распределение символов или слов в конкретном тексте [25:29].

Paloma предлагает комплексную оценку на основе:

*   600 различных микродоменов [27:16];
*   18 независимых источников данных (включая C4, академические архивы и веб-страницы) [27:16].

Такой подход позволяет уйти от усредненных оценок. Акшита Бхагия объясняет, что общая перплексия модели на терабайтах интернет-текста может улучшаться по мере её масштабирования, но это не гарантирует равномерного прогресса во всех областях [26:08]. Модель может прекрасно генерировать посты для социальных сетей благодаря обилию разговорной речи в выборке, но при этом деградировать в понимании медицинской литературы или юридических документов [26:37]. 

Бенчмарк Paloma позволяет исследователям точечно оценивать готовность модели к работе в узкоспециализированных сферах. Например, ученые в области цифровых гуманитарных наук (digital humanities) могут проверить, насколько хорошо OLMo ориентируется в детективных романах XIX века и способна ли она корректно воспринимать описанное там насилие [29:21].

## 🛡 Безопасность открытого кода и взгляд в будущее
[[JUMP:31:46]]

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

Акшита Бхагия категорически не согласна с идеей о том, что закрытость систем гарантирует безопасность [32:00]. По мнению исследовательницы, если архитектура и обучающие данные модели скрыты от общественности, независимые эксперты не могут провести аудит её уязвимостей [32:30]. Без понимания того, как модель обучалась, невозможно выстроить надежные внешние фильтры и защитные барьеры [32:30]. Открытая дискуссия и публикация всех этапов создания ИИ — единственный путь к формированию по-настоящему безопасных и этичных технологий [32:43].

В планах развития проекта OLMo:

*   Завершение обучения и публикация модели масштабом 65B параметров [35:11];
*   Эксперименты с новыми модальностями (включая обработку изображений и аудио) [35:24];
*   Дальнейшее развитие методов выравнивания моделей (alignment) на базе проекта Tulu от AI2 [34:43].

В AI2 подчеркивают, что институт не ставит перед собой задачу конкурировать со всеми коммерческими лабораториями во всех возможных направлениях [36:04]. Главная миссия OLMo — передать эстафету сообществу разработчиков, обеспечив их фундаментальными инструментами для дальнейших открытий [36:17].