LLM — Технический отчет по большой модели и подробности обученияОт Baichuan2

Оглавление

Введение

2. Введение: прогресс в области LLM

1. Чем больше параметры модели, тем сильнее способность модели.

2. Модели с открытым исходным кодом способствуют быстрому развитию области LLM.

3. Модели с открытым исходным кодом сконцентрированы на английском языке и имеют ограниченные возможности на других языках.

4. Данные обучения 260 миллионов токенов далеко впереди.

5. Оптимизируйте модель чата, соответствующую выпуску команд человека.

6. Объявлено CKPT во время учебного процесса для содействия исследованиям и разработкам в этой области.

3. Предварительная тренировка – предварительная тренировка в Байчуане.

1. Данные перед обучением — более полные и чистые данные.

2.Архитектура

3.Токенайзер - пониженная степень сжатия

4. Встраивание позиции. Позиция Emd мало влияет.

5. Активации и нормализации — оптимизация эффективности производительности.

6.Оптимизация. Сделайте обучение более надежным.

7. Законы масштабирования. Прогнозирование окончательных потерь на основе скорости масштабирования.

8.Инфраструктура. Как повысить эффективность графического процессора кластера.

4. Согласование – совпадение человеческих намерений

1. Контролируемая точная настройка. Контролируемая точная настройка, вознаграждение обратной связи и подкрепление.

2. Модель вознаграждения – ответ Чем больше разница, тем точнее вознаграждение.

3.PPO — Оптимизация модели генерации языка

4. Детали обучения — подробные сведения о параметрах обучения.

5. Безопасность - гарантия безопасности модели.

1. Предварительный этап обучения – строгий отбор данных.

2.Этап выравнивания – оптимизация красно-синего противостояния. Подсказка и ответ.

6.Оценки – Многомерная оценка модели.

1.evaluate метод – метод оценки формирования и отбора

2.модель сравнения — модель сравнения с открытым исходным кодом и воспроизводимыми результатами.

3.Общая производительность – богатые тесты для оценки

4.Оценки вертикальных доменов – Оценки вертикальных доменов

5.Математика и код – математика и навыки программирования.

6.Мультиязычность – многоязычность.

7.Оценки безопасности – безопаснее и надежнее

8. Промежуточные контрольные точки — промежуточный вывод CKPT.

7. Сопутствующая работа - Связанная работа в области LLM.

8. Ограничения и этические соображения – Ограничения и этические соображения

9.Больше – больше информации о модели.

1. Законы масштабирования – оценка производительности модельной системы.

2.NormHead - более стабильное обучение

3. Динамика обучения – динамическое обучение и оценка.

4.Набор данных для оценки безвредности Байчуань - Набор данных для оценки безвредности Байчуань

5. Подробная информация о MMLU и C-Eval – подробная оценочная информация.

6.Примеры, созданные Baichuan 2-13B-Chat — примеры моделей

10. Резюме


Введение

В этой статье анализируется происхождение Baichuan2 на основе технического отчета, предоставленного Baichaun-inc  .

◆  Модели серии baichuan обучаются с использованием 2,6 триллионов токенов.

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

◆  Самые мощные LLM закрыты или ограничены в своих возможностях на языках, отличных от английского.

2. Введение: прогресс в области LLM

1. Чем больше параметры модели, тем сильнее способность модели.

Менеджеры больших языковых моделей значительно продвинулись вперед: параметры модели варьируются от миллионов до миллиардов или даже триллионов. ELMo(2018), GPT1(2018) -> GPT-3(2020), PaLM(2022) Значительное увеличение размера параметра также привело к значительным улучшениям возможностей языковой модели, тем самым достигнув более человеческого уровня беглости и выполнения различных Способность выполнять задачи на естественном языке. С выпуском ChatGPT 2022 года он демонстрирует хорошее знание языка всеми авторами, подчеркивая потенциал больших языковых моделей для автоматизации генерации естественного языка и задач понимания.

2. Модели с открытым исходным кодом способствуют быстрому развитию области LLM.

LLM привел к захватывающим прорывам и приложениям. Примеры включают GPT-4, PaLM-2 и Claude, но эти модели закрыты, а разработчики и исследователи имеют ограниченный доступ к моделям, что затрудняет изучение и тонкую настройку соответствующих систем сообществу. Развитие и прозрачность моделей могут ускорить развитие соответствующих областей. LLaMA — это большая модель размером 70 Б с открытым исходным кодом, созданная компанией Meta. Ее полный открытый исходный код принес большую пользу исследовательскому сообществу. Полная либерализация LLaMA и других моделей с открытым исходным кодом OPT и Bloom ускорила исследования и прогресс в этой области, породив новые модели, такие как Alpace, Vicuna и т. д.

3. Модели с открытым исходным кодом сконцентрированы на английском языке и имеют ограниченные возможности на других языках.

Большинство крупномасштабных языковых моделей с открытым исходным кодом ориентированы в первую очередь на английский язык. Например, основным источником данных LLaMA является Common Crawl, который включает 67% данных предварительного обучения LLAMA, но фильтруется только по англоязычному контенту. Другие программы LLM с открытым исходным кодом, такие как MPT и Falcon, также ориентированы на английский язык и имеют ограниченные возможности на других языках. Это затрудняет разработку и применение llm на конкретных языках (например, китайском).

4. Данные обучения 260 миллионов токенов далеко впереди.

baichuan2 имеет две величины параметров: 700 миллионов и 1,3 миллиарда. Все модели обучены на 2,6 триллионах токенов, что на данный момент является самым большим показателем и более чем в два раза превышает аналогичный показатель baichaun1. Основываясь на таком большом объеме обучающих данных, байчаун2 достигает значительных улучшений по сравнению с байчауном1. На общих базах, таких как MLU, CMMLU и C-Eval, производительность baichaun2 почти на 30% выше, чем baichuan1. В частности, baichuan2 оптимизирован для улучшения производительности при решении математических задач и задач кодирования. Кроме того, baichuan2 также демонстрирует высокие результаты в медицинской и юридической областях, превосходя другие модели с открытым исходным кодом в таких тестах, как MedQA и JEC-QA.

5. Оптимизируйте модель чата, соответствующую выпуску команд человека.

Кроме того, мы выпустили две модели чата: Baichuan 2-7B-Chat и Baichuan 2-13B-Chat, оптимизированные для выполнения инструкций человека. Эти модели превосходны в разговорном и контекстуальном понимании. Мы подробно остановимся на способах повышения безопасности baichuan2. Открыв исходный код этих моделей, мы надеемся дать сообществу возможность еще больше повысить безопасность больших языковых моделей и способствовать проведению дополнительных исследований в области ответственной разработки LLM.

6. Объявлено CKPT во время учебного процесса для содействия исследованиям и разработкам в этой области.

Кроме того, в духе исследовательского сотрудничества и постоянного совершенствования мы также выпустили контрольные точки для baichuan2 на разных этапах обучения: от 20 миллиардов токенов до полных 26 000 токенов. Мы обнаружили, что даже для модели с 75 миллиардами параметров производительность продолжает улучшаться после обучения на более чем 2,6 триллионах токенов. Делясь этими промежуточными результатами, мы надеемся предоставить сообществу более глубокое понимание динамики тренировок байчуаня2. Понимание этой динамики является ключом к раскрытию внутренней работы больших языковых моделей. Мы считаем, что освобождение этих контрольно-пропускных пунктов проложит путь к дальнейшему прогрессу в этой быстро развивающейся области.

3. Предварительная тренировка – предварительная тренировка в Байчуане.

1. Данные перед обучением — более полные и чистые данные.

Источник данных — более полный набор данных.

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

В первую десятку рейтинга входят: технологии, бизнес, развлечения, жизнь, здоровье, образование, культура, код, спорт и инженерия.

Обработка данных — более детальная очистка данных.

При обработке данных мы уделяем особое внимание частоте и качеству данных. Частота передачи данных зависит от кластеризации и дедупликации. Мы создали крупномасштабную систему дедупликации и кластеризации, которая поддерживает функции, подобные LSH, и плотно встроенные функции. Система способна кластеризовать и дедуплицировать триллионы данных за считанные часы. На основе кластеризации дедуплицируются и оцениваются отдельные документы, абзацы, предложения. Эти оценки затем используются для выборки данных при предварительном обучении. Размеры обучающих данных на разных этапах обработки данных следующие:

Точная дедупликация - Точная дедупликация - удалено 29,89%.

Эвристический подход – Удалить 1,77%

Фильтр качества отправки — фильтр качества на уровне предложения — удалить 3,06%

Посланная, поабзачная дедупликация - Посланная, поабзачная дедупликация - удалено 14,47%.

Дедупликация документов - удалено 19,13%.

2.Архитектура

Архитектура модели Baichun 2 основана на популярном Трансформере (Васвани и др., 2017). Тем не менее, мы внесли несколько изменений, о которых подробно расскажем ниже.

3.Токенайзер - пониженная степень сжатия

Токенизатору необходимо сбалансировать два ключевых фактора: высокую степень сжатия для эффективного вывода и словарный запас соответствующего размера, чтобы обеспечить адекватное обучение встраиванию каждого слова. Мы рассмотрели оба аспекта. Мы увеличили размер словаря в baichuan1 с 64 000 до 125 696, стремясь найти баланс между эффективностью вычислений и производительностью модели.

Мы маркируем данные, используя кодировку пар байтов (BPE) (Sibata et al., 1999) из SentencePiece (Кудо и Ричардсон, 2018). В частности, мы не применяем никакой нормализации к входному тексту и не добавляем фиктивный префикс, такой как Baichuan1. Мы разбиваем числа на отдельные цифры, чтобы лучше кодировать числовые данные. Для обработки данных кода, содержащих лишние пробелы, мы добавили в токенизатор тег, содержащий только пробелы. Покрытие символов установлено на 0,9999, при этом редкие символы возвращаются к байтам UTF-8. 

Мы установили максимальную длину токена 32, чтобы учитывать длинные китайские фразы. Данные обучения токенизатора baichuan2 поступают из корпуса предварительного обучения baichuan2 с большим количеством примеров кода и научных статей для улучшения охвата (Taylor et al., 2022). В следующей таблице показано подробное сравнение токенизатора baichuan2 с другими токенизаторами.

4. Встраивание позиции. Позиция Emd мало влияет.

На основе baichuan1 мы использовали внедрение вращательного положения (RoPE) для baichuan2-7B (Su et al., 2021) и ALiBi для baichuan2-13B (Press et al., 2021). ALiBi — это новая технология позиционного кодирования, которая показала улучшенную производительность экстраполяции. Однако большинство моделей с открытым исходным кодом используют RoPE для встраивания позиции и оптимизации реализации внимания, например Flash Attention (Dao et al., 2022; Dao, 2023). В настоящее время RoPE более подходит, поскольку он основан на умножении, в обход внимания_маски. необходимо передать операции внимания. Однако в предварительных экспериментах выбор встраивания позиции существенно не повлиял на производительность модели. Для дальнейшего изучения внимания, основанного на предвзятости и умножении, мы применяем RoPE к байчуань2-7B и ALiBi к байчуань2-13B, что соответствует байчуань1.

5. Активации и нормализации — оптимизация эффективности производительности.

Мы используем функцию активации SwiGLU (Shazeer, 2020), вариант активации переключателя GLU (Dauphin et al., 2017), которая показывает улучшенные результаты. Однако SwiGLU имеет «билинейный» слой, содержащий три матрицы параметров, в отличие от обычного слоя прямой связи Transformer, который имеет две матрицы, поэтому мы уменьшаем скрытый размер с 4-кратного размера скрытого размера до 8/3 и округляем до умножения 128.

Для уровня внимания baichuan2 мы использовали внимание с эффективным использованием памяти, реализованное xFormers2 (Rabe and Staats, 2021). Используя оптимизированные возможности внимания и смещения xFormers, мы можем эффективно комбинировать позиционное кодирование ALiBi на основе смещения, одновременно уменьшая нагрузку на память. Это обеспечивает преимущества в производительности и эффективности при крупномасштабном обучении байчауна2.

Мы применяем нормализацию слоев (Ba et al., 2016) к входным данным блока Transformer, который более устойчив к графикам прогрева (Xiong et al., 2020). Кроме того, мы используем реализацию RMSNorm, представленную (Чжан и Сеннрих, 2019), которая рассчитывает только дисперсию входных функций для повышения эффективности.

6.Оптимизация. Сделайте обучение более надежным.

Для обучения мы используем оптимизатор AdamW (Лощилов и Хаттер, 2017). β1 и β2 установлены на 0,9 и 0,95 соответственно. Мы используем снижение веса 0,1 и ограничиваем градусную норму до 0,5. Модель прогревается с помощью 2000 шагов линейного масштабирования до максимальной скорости обучения, а затем применяется косинусное затухание к минимальной скорости обучения. Детали параметров и скорость обучения следующие:

Вся модель обучается с использованием смешанной точности BFloat16. BFloat16 имеет лучший динамический диапазон по сравнению с Float16, что делает его более устойчивым к большим значениям, критичным для обучения больших языковых моделей. Однако низкая точность BFloat16 в некоторых случаях может вызвать проблемы. Например, в некоторых общедоступных реализациях RoPE и ALbi операция torch.arange завершается сбоем из-за коллизии, когда целое число превышает 256, что предотвращает распознавание соседних позиций. Поэтому мы используем полную точность для некоторых операций, чувствительных к значениям, таких как позиционное встраивание. 

BFloat16

И bfloat16, и float16 представляют собой 16-битные форматы чисел с плавающей запятой, и их основное различие заключается в разнице в точности. В частности, формат bfloat16 использует 1 бит для знака, 8 бит для показателя степени и 7 бит для мантиссы. Формат float16 использует 1 бит для представления знака, 5 бит для представления экспоненты и 10 бит для представления мантиссы. Это означает, что bfloat16 имеет больший диапазон представления, но меньшую точность. Число float 16 имеет более высокую точность, но диапазон его представления относительно невелик. float32 имеет 32 бита, из которых 1 бит используется для представления знака, 8 бит используются для представления экспоненты и 23 бита используются для представления мантиссы. Таким образом, float32 имеет более высокую точность и может представлять более широкий диапазон значений.

Что касается использования памяти, для float32 требуется 4 байта — 32 бита, тогда как для float16 и bfloat16 требуется только 2 байта — 16 бит. Это означает, что использование float16 может сэкономить место в памяти и больше подходит для приложений с ограниченной памятью.

НормХед

Чтобы стабилизировать обучение и улучшить производительность модели, мы нормализуем (также называемую «заголовком») выходные вложения. В наших экспериментах у NormHead есть два преимущества. Во-первых, в наших предварительных экспериментах мы обнаружили, что норма головы склонна к нестабильности. В процессе обучения норма редких вложений токенов становится меньше, что мешает динамике обучения. NorHead существенно стабилизирует динамику. Во-вторых, мы обнаружили, что семантическая информация в основном кодируется путем внедрения косинусного сходства, а не расстояния L2. Поскольку современные линейные классификаторы вычисляют логиты посредством скалярного произведения, это смесь расстояния L2 и косинусного сходства. NormHead устраняет влияние расстояния L2 при вычислении логитов.

Макс. потеря

В ходе обучения мы обнаружили, что логиты LLM могут стать очень большими. В то время как функция softmax не имеет ничего общего с абсолютными значениями логита, поскольку зависит только от их относительных значений. Логиты большего размера могут вызвать проблемы во время вывода, поскольку в обычных реализациях штрафов за повторение скаляры применяются непосредственно к логитам. Такое сокращение очень больших логитов может существенно изменить вероятность после softmax, делая модель чувствительной к выбору гиперпараметров повторяющихся штрафов. Вдохновленные NormSoftmax и вспомогательной функцией z-loss от PaLM, мы добавляем потерю max-z для нормализации логитов:

Окончательные потери при обучении baichuan2-7B и baichuan2-13B показаны на рисунке ниже: 

7. Законы масштабирования. Прогнозирование окончательных потерь на основе скорости масштабирования.

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

Мы запустили диапазон размеров моделей от 10M до 3B, от 1/1000 до 1/10 размера окончательной модели, обучая до 1 триллиона токенов на модель, используя согласованные гиперпараметры и тот же набор данных из baichuan2. Основываясь на окончательных потерях различных моделей, мы можем получить соответствие между неудачей обучения и целевыми потерями.

Чтобы соответствовать закону масштабирования модели, мы приняли формулу, данную Хениганом и др. (2020):

где L∞ — это неуменьшаемые потери, а первый член — это уменьшаемые потери, которые формулируются как член масштабирования по степенному закону. C — потеря обучения, а LC — окончательная потеря модели при этом сбое. Мы используем функцию Curve_fit из SciPy4library для подгонки параметров. Окончательные кривые масштабирования и прогнозируемые окончательные потери для моделей с 75 миллиардами и 1,3 миллиарда параметров показаны ниже. Мы видим, что закон масштабирования предсказывает окончательную потерю байчауна2 с более высокой точностью:

Закон масштабирования Байчуань2. Мы обучили различные модели от 10 миллионов до 3 миллиардов параметров, с 1 триллионом токенов. Применяя степенной закон к потерям из-за неудачного обучения, мы прогнозируем потерю обучения baichuan2-7B и baichuan2-13B для 2,6 триллионов токенов. Эта процедура подгонки точно предсказывает потерю окончательной модели (отмеченной двумя звездочками). 

8.Инфраструктура. Как повысить эффективность графического процессора кластера.

Сегодня эффективное использование существующих ресурсов графического процессора играет решающую роль в обучении и разработке больших языковых моделей. С этой целью мы разрабатываем подход к совместному проектированию эластичных сред обучения и стратегий интеллектуального кластерного планирования. Поскольку наши графические процессоры используются несколькими пользователями и задачами, конкретное поведение каждой задачи непредсказуемо, что часто приводит к простою узлов графического процессора в кластере. Учитывая, что одна машина, оснащенная 8 графическими процессорами A800, может полностью удовлетворить требования к памяти моделей baichuan7B и baichuan13B, основным критерием разработки нашей системы обучения является эластичность на уровне машины, ресурсы которой, поддерживающие задачи, могут быть динамически изменены в зависимости от состояния кластера. , что служит основой интеллектуальных алгоритмов планирования.

Чтобы удовлетворить требованиям эластичности на уровне машины, наша платформа обучения объединяет тензорный параллелизм и параллелизм данных, где мы настраиваем тензорный параллелизм внутри каждой машины и используем параллелизм общих данных ZeRO для эластичного масштабирования между машинами. Кроме того, мы используем технику тензорного разделения, при которой мы разделяем определенные вычисления, чтобы уменьшить пиковое потребление памяти, например вычисления перекрестной энтропии с большими словарями. Этот подход позволяет нам удовлетворить требования к памяти без увеличения объема вычислений и обмена данными, что делает систему более эффективной. Чтобы еще больше ускорить обучение без ущерба для точности модели, мы реализовали обучение смешанной точности, при котором мы выполняли прямые и обратные вычисления в BFloat16, одновременно выполняя обновления оптимизатора в Float32.

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

◆  Распределенное обучение с учетом топологии

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

◆  Гибридное и иерархическое секционирование ZeRO

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

Интегрируя эти стратегии, наша система способна эффективно обучать модели baichaun2-7B и baichuan2-13B на 1024 графических процессорах NVIDIA A800, достигая вычислительной эффективности более 180 терафлопс.

Советы:

TFLOPS — это  аббревиатура операций с плавающей запятой в секунду  , которая обозначает количество операций с плавающей запятой, выполняемых в секунду. Он используется для оценки вычислительной мощности компьютера, особенно в научных вычислениях, где используется большое количество операций с плавающей запятой. Производительность NVIDIA RTX 3060 с плавающей запятой составляет примерно 12,5 терафлопс , а показатель производительности китайского суперкомпьютера «Тяньхэ-2» достигает 1000 триллионов операций в секунду.

4. Согласование – совпадение человеческих намерений

baichuan2 также представил процесс согласования, в результате которого появились две модели чата: baichuan2-7B-Chat и baichaun2-13B-Chat. Процесс настройки baichuan2 состоит из двух основных компонентов: контролируемая точная настройка на основе обратной связи с человеком (RLHF) (SFT) и обучение с подкреплением.

1. Контролируемая точная настройка. Контролируемая точная настройка, вознаграждение обратной связи и подкрепление.

На этапе контролируемой тонкой настройки мы используем людей-маркировщиков для аннотирования сигналов, собранных из разных источников данных. Каждый совет помечен как полезный или безвредный на основе ключевых принципов, аналогичных принципам Клода. Для проверки качества данных мы используем перекрестную проверку: авторитетные аннотаторы проверяют качество партий образцов, аннотированных определенной группой работников здравоохранения, отклоняя любые партии, которые не соответствуют нашим стандартам качества. Мы собрали более 100 тысяч образцов для точной настройки и обучили на них нашу базовую модель. Далее мы опишем процесс обучения с подкреплением с помощью метода RLHF для дальнейшего улучшения результатов. Весь процесс RLHF, включая обучение RM и RL, показан на рисунке ниже:

РЛХФ

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

RLHF в основном состоит из следующих трех частей:

        Предварительно обученная языковая модель, которая может генерировать текст на естественном языке или выполнять другие задачи.

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

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

Процесс внедрения RLHF можно разделить на следующие три этапа:

        На этапе контролируемой тонкой настройки аннотированные данные используются для первоначального обучения языковой модели адаптации к конкретным задачам и областям.

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

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

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

2. Модель вознаграждения – ответ Чем больше разница, тем точнее вознаграждение.

Мы разработали трехуровневую систему классификации для всех советов, состоящую из 6 основных категорий, 30 вторичных категорий и более 200 третичных категорий. С точки зрения пользователя, наша цель состоит в том, чтобы система классификации всесторонне охватывала все типы потребностей пользователей. С точки зрения обучения модели вознаграждения сигналы внутри каждой категории должны иметь достаточное разнообразие, чтобы гарантировать хорошее обобщение модели вознаграждения.

При наличии подсказки модели байчуань2 разных размеров и стадий (SFT, PPO) генерируют ответы, увеличивая разнообразие ответов. При обучении RM используются только ответы, сгенерированные семейством моделей baichuan2. Ответы других наборов данных с открытым исходным кодом и собственных моделей не улучшили точность модели вознаграждения. Это также подчеркивает внутреннюю целостность модельного ряда байчаун и с другой стороны. Функция потерь, используемая для обучения модели вознаграждения, соответствует функции InstructGPT. Производительность модели вознаграждения в результате обучения соответствует LLAMA 2, что указывает на то, что чем больше разница в баллах между двумя ответами, тем выше точность распознавания модели вознаграждения, как показано в следующей таблице:

3.PPO — Оптимизация модели генерации языка

После получения модели вознаграждения мы используем алгоритм PPO для обучения нашей языковой модели. Мы используем четыре модели: модель актера (отвечающая за генерацию ответов), эталонная модель (используется для расчета штрафа KL с фиксированными параметрами), модель вознаграждения (обеспечивающая общее вознаграждение за весь ответ с фиксированными параметрами) и модель критика. модель (направленная на обучение по стоимости токена).

4. Детали обучения — подробные сведения о параметрах обучения.

В процессе обучения RLHF модель критика заранее прогревается на 20 шагов обучения. Впоследствии модели критиков и актеров обновляются с помощью стандартного алгоритма PPO. Для всех моделей мы используем ограничение градиента 0,5, постоянную скорость обучения 5e-6 и порог ограничения PPO ε = 0,1. Мы установили штрафной коэффициент KL β = 0,2, который ступенчато уменьшается до 0,005. Мы обучаем все наши модели чата 350 итерациям, в результате чего получаются baichuan2-7B-Chat и baichuan2-13B-Chat.

5. Безопасность - гарантия безопасности модели.

Мы считаем, что повышение безопасности модели является результатом не только ограничений на этапах очистки или согласования данных, но также за счет использования положительных знаний и выявления отрицательных знаний на всех этапах обучения. Руководствуясь этой концепцией, мы повысили безопасность модели на протяжении всего процесса обучения baichuan2.

1. Предварительный этап обучения – строгий отбор данных.

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

2.Этап выравнивания – оптимизация красно-синего противостояния. Подсказка и ответ.

Мы создали процесс красной команды, состоящий из 6 типов атак и более 100 детальных категорий значений безопасности, команду из 10 экспертов-аннотаторов и традиционный опыт интернет-безопасности, инициализирующий подсказки по согласованию безопасности. Соответствующие фрагменты из набора данных перед обучением извлекаются для создания ответов, в результате чего получается примерно 1 КБ аннотированных данных для инициализации.

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

В начале усиления безопасности подход DPO эффективно использует ограниченный объем аннотированных данных для повышения производительности при решении конкретных проблем уязвимостей.

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

ДПО/ППО

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

DPO (Direct Preference Optimization) — это новый метод обучения, предназначенный для непосредственной оптимизации соответствия языковых моделей предпочтениям человека. Этот подход может более точно контролировать поведение модели и согласовывать его с предпочтениями человека, но как добиться крупномасштабного, эффективного, надежного и масштабируемого подхода с использованием данных остается проблемой.

PPO (оптимизация проксимальной политики) — это алгоритм оптимизации проксимальной политики в обучении с подкреплением, предназначенный для достижения более высокой эффективности и надежности данных при обучении больших языковых моделей. По сравнению с алгоритмом TRPO, алгоритм PPO использует метод оптимизации первого порядка и использует только одну нейронную сеть для одновременной оценки функций политики и стоимости, тем самым уменьшая сложность модели и время обучения. Алгоритм PPO имеет преимущество коэффициента вероятности клипа (Clip Probability Ratio) при обучении больших языковых моделей.Это соотношение может ограничить количество изменений в стратегии модели, тем самым достигая плавности и стабильности стратегии при сохранении высокой эффективности выборки.

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

6.Оценки – Многомерная оценка модели.

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

1.evaluate метод – метод оценки формирования и отбора

◆  Генерация в произвольной форме

Модель получает несколько образцов входных данных (кадров), а затем генерирует продолжения для получения результатов, таких как ответы на вопросы, перевод и другие задачи.

◆  Множественный выбор

Модели дается вопрос и несколько вариантов ответа, и задача состоит в том, чтобы выбрать наиболее подходящего кандидата.

2.модель сравнения — модель сравнения с открытым исходным кодом и воспроизводимыми результатами.

Учитывая разнообразие задач и примеров, мы включили в нашу собственную реализацию системы оценки с открытым исходным кодом lm-evaluation-harness и OpenCompass, чтобы обеспечить справедливое сравнение с другими моделями. Модель, которую мы выбрали для сравнения, имеет такой же размер, что и baichuan2, имеет открытый исходный код и может воспроизводить результаты:

◆  ЛЛАМА

Мета — это языковая модель, обученная на 1 триллионе токенов. Длина контекста равна 2048, и мы оцениваем LLAMA 7B и LLAMA 13B.

◆  ЛЛАМА2

Модель, пришедшая на смену LLaMA 1, была обучена на 2 триллионах токенов и лучшем сочетании данных.

◆  Байчуань1

baichaun7B обучен на 1,2 триллиона токенов, а baichuan13B обучен на 1,4 триллиона токенов. Они оба сосредоточены на английском и китайском языках.

ЧатGLM2-6B

Модель языка чата, которая хорошо работает по нескольким критериям.

МПТ-7Б

LLM с открытым исходным кодом обучен на 1 триллионе английских текстовых и кодовых токенов.

◆  Сокол-7Б

Серия LLM обучена на 1 триллионе токенов и дополнена тщательно подобранным корпусом. Он предоставляется по лицензии Apache 2.0.

◆  Викунья-13Б 

Языковые модели, обученные путем тонкой настройки LLAMA-13B, публикуют свои базовые модели, поэтому мы адаптируем результаты, о которых они сообщают, на их веб-сайте. Он использует набор данных разговора, созданный ChatGPT.

◆  Китайская-Альпака-Плюс-13Б

Языковая модель, обученная путем тонкой настройки LLAMA13B на разговорном наборе данных, сгенерированном ChatGPT.

◆  XVERSE-13B

13B многоязычная крупномасштабная языковая модель, обученная на более чем 1,4 триллионах токенов.

3.Общая производительность – богатые тесты для оценки

В этом разделе описываются общие характеристики базовой модели Baichuan 2 по сравнению с другими моделями аналогичного размера. Мы выбираем для сравнения 8 бенчмарков:

MMLU Массовое многозадачное понимание языка состоит из серии вопросов с несколькими вариантами ответов на академические темы.

C-Eval — это комплексный тест для оценки китайского языка, содержащий более 10 тысяч вопросов с несколькими вариантами ответов.

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

AGIEval — это ориентированный на человека тест, предназначенный для оценки общих человеческих способностей, таких как познание и решение проблем.

Gaokao — это система оценивания, в которой используются вопросы вступительного экзамена в китайскую среднюю школу.

BBH — это набор сложных задач BIG-Bench, в которых оценка языковой модели не превосходит среднего оценщика-человека.

GSM8K — это тест оценки, ориентированный на математику.

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

Для CMMLU и MMLU мы принимаем официальную реализацию и используем 5-кадровую схему для оценки. Для BBH мы используем трехэтапную оценку. Для C-Eval, Gaokao и AGIEval мы выбираем только множественный выбор из четырех кандидатов для лучшей оценки. Для GSM8K мы используем четырехкратный тест, полученный из OpenCompass. Мы также объединяем результаты GPT-4 и GPT-3.5-Turbo. Если не указано иное, результаты в этой статье были получены с использованием наших собственных инструментов оценки. Общие результаты показаны в таблице ниже. По сравнению с другими моделями с открытым исходным кодом аналогичного размера, baichuan2 имеет явные преимущества в производительности. Наша модель значительно лучше, чем baichuan1, особенно в математических задачах и задачах кодирования:

4.Оценки вертикальных доменов – Оценки вертикальных доменов

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

В медицинской сфере мы сообщаем результаты по двум медицинским критериям: MedQA и MedMCQA, а также средние баллы по медицинским предметам в C-Eval, MMLU и CMMLU. В частности, данные MedMCQA собираются на основе экзаменов профессиональных медицинских комиссий в США и Китае, включая три подмножества, а именно USMLE, MCMLE и TWMLE, и мы сообщаем о результатах USMLE и MCMLE с пятью кандидатами; MedMCQA собирается из Индии. Собирается в Медицинском На вступительном экзамене мы оцениваем вопросы с несколькими вариантами ответов и сообщаем результаты в наборе для разработки. Подробная информация о MedMCQA включает (1) клиническую медицину, базовую медицину для C-Eval (val), (2) клинические знания, анатомию, студенческую медицину, студенческую биологию, питание, вирусологию, медицинскую генетику, специальную медицину для MMLU, (3) анатомию. , клинические знания, университетская медицина, генетика, питание, традиционная китайская медицина, вирусология CMMLU. Кроме того, все эти наборы данных оцениваются за 5 шагов.

Baichuan 2-7B-Base превосходит в китайском правовом поле такие модели, как GPT-3.5 Turbo, ChatGLM 2-6B и LlaMA 2-7B, и уступает только GPT-4. По сравнению с baichuan1-7B, baichuan2-7B-Base улучшается почти на 10 пунктов. В медицинской сфере Baichuan 2-7B-Base превосходит такие модели, как ChatGLM 2-6B и LlaMA 2-7B, демонстрируя значительные улучшения по сравнению с Baichuan 1-7B. Точно так же Baichuan 2-13B-Base превосходит другие модели, кроме GPT-4, в китайском правовом поле. В медицинской сфере Baichuan 2-13 Base превосходит такие модели, как XVERSE-13B и LLAMA 2-13B. По сравнению с baichuan1-13B-Base, baichuan2-13B-Base также демонстрирует значительные улучшения:

5.Математика и код – математика и навыки программирования.

В этом разделе рассматриваются математические вычисления и производительность кодирования. Мы используем GSM8K (4-кадровый) и MATH (4-кадровый) для оценки математических способностей. MATH содержит 12 500 более сложных математических задач. Чтобы оценить возможности модели по кодированию, мы сообщаем результаты в HumanEval (0-shot) и MBPP (3-shot). HumanEval — это серия задач по программированию, включающая понимание языка модели, рассуждения, алгоритмы и простую математику для оценки правильности модели и измерения ее способности решать проблемы. MBPP, который состоит из набора данных из 974 коротких функций Python и текстовых описаний программ, а также тестовых примеров для проверки их функциональной корректности.

Мы используем OpenCompass для оценки математических возможностей модели и возможностей кодирования. В области математики Baichuan 2-7B Base превосходит такие модели, как LLAMA 2-7B. В области кода он превосходит модели того же размера, такие как ChatGLM 2-6B. По сравнению с моделью baichuan 1-7B, baichuan 2-7B-Base демонстрирует значительные улучшения. По математике Baichuan 2-13B-Base превосходит все модели такого же размера и приближается к уровню GPT-3.5 Turbo. В области кода Baichuan 2-13B-Base превосходит такие модели, как LlaMA 2-13B и XVERSE-13B. По сравнению с baichuan 1-13B-Base, baichuan 2-13B-Base продемонстрировал значительное улучшение.

◆  N выстрел

В метаобучении или трансферном обучении «N-shot» — это метод оценки производительности модели. «1-кадр» означает, что модель видит только один пример целевой категории, прежде чем ей нужно будет изучить и спрогнозировать эту категорию, а «5-кадр» означает, что модель видит пять примеров целевой категории. Оба термина часто используются при «обучении за несколько шагов», где цель состоит в том, чтобы научить модель обучаться на очень небольшом количестве образцов (например, одном или нескольких). Это имеет решающее значение для многих реальных задач, поскольку нам часто приходится делать прогнозы, используя лишь небольшое количество выборок. В этом контексте производительность задач «N-shot» часто используется для оценки способности модели к обобщению, т. Е. Насколько точно модель прогнозирует, когда она видит новые, ранее невидимые данные.

6.Мультиязычность – многоязычность.

Мы использовали Флорес-101 для оценки многоязычия. Flores-101 охватывает 101 язык со всего мира. Его данные поступают из различных областей, таких как новости, путеводители и книги. Выбираем официальные языки ООН (арабский (ar), китайский (zh), английский (en), французский (fr), русский (ru) и испанский (es)), а также немецкий (de) и японский (ja) в качестве тестового языка. Мы провели 8-шаговое тестирование по семи подзадачам в Flores-101, включая ж-ен, ж-фр, ж-эс, ж-ар, ж-ру, ж-я и ж-де. Оценка проводилась с использованием OpenCompass.

В многоязычной области Baichuan 2-7B-Base превосходит все модели одинакового размера во всех семи задачах и демонстрирует значительные улучшения по сравнению с Baichuan 1-7B. Baichuan 2-13B-Base превосходит модели аналогичного размера в 4 из семи задач. В задачах ж-ен и ж-я превосходит GPT 3.5 Turbo и достигает уровня GPT-4. По сравнению с Baichuan 1-13B-Base, Baichuan 2-13B-Base достиг значительных улучшений в задачах ж-ар, жру и ж-джа. Хотя GPT-4 по-прежнему доминирует в многоязычном пространстве, модели с открытым исходным кодом догоняют его. В ж-энь задачах Baichuan 2-13B-Base немного превосходит GPT-4.

Советы:

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

7.Оценки безопасности – безопаснее и надежнее

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

байчаун Полезен и безвреден до и после безопасного выравнивания. Ось X представляет собой измерение до безопасного выравнивания, а ось Y представляет результат. Мы видим, что после этого процесса полезность во многом остается прежней, тогда как безвредность значительно повышается за счет усилий по обеспечению безопасности (больше массы в верхнем треугольнике).

Затем мы оцениваем безопасность нашей предварительно обученной модели, используя набор данных Toxigen. Как и в случае с LLAMA 2, версия, которую мы используем после очистки, взята из проекта SafeNLP, в котором различаются нейтральные и ненавистные типы 13 групп меньшинств, образуя набор данных из 6 снимков, соответствующий исходному формату подсказки Toxigen. Наши параметры декодирования используют выборку ядра с температурой 0,1 и top-p 0,9. Мы выполняем оценку модели, используя доработанную версию HateBert, оптимизированную в Toxigen. Как показано в таблице ниже, по сравнению с LLAMA 2 модели baichuan 2-7B и baichuan 2-13B имеют определенные преимущества в плане безопасности:

Вдохновлено BeaverTails Ji и др. Мы создали набор данных для оценки безвредности Сиракавы (BHED), охватывающий 7 основных категорий безопасности, связанных с предвзятостью/дискриминацией, оскорбление/богохульство, незаконный/моральный контент, физическое здоровье, психическое здоровье, финансовую конфиденциальность и деликатные темы, чтобы оценить безопасность нашей модели чата. Чтобы обеспечить всесторонний охват каждой категории, мы попросили аннотаторов сгенерировать 1400 образцов данных. В дальнейшем это было расширено за счет самообучения и очистки людьми для обеспечения беглости, в результате чего в общей сложности было получено 70 000 образцов на категорию, по 10 000 на категорию. Мы использовали эти образцы для оценки различных моделей, и результаты показаны в таблице ниже. В нашей оценке безопасности мы видим, что Baichuan 2 работает так же хорошо или даже лучше, чем другие модели чата:

8. Промежуточные контрольные точки — промежуточный вывод CKPT.

Мы также выпустим промежуточные контрольные точки модели 7B, от 22 миллиардов контрольных точек токенов до 264 миллиардов контрольных точек токенов, что является окончательным результатом Baichuan 2-7B-Base. Мы проверили их производительность в нескольких тестах, и результаты показаны на рисунке ниже. Как видно, Байчуань 2 демонстрирует постоянное улучшение по мере продолжения тренировок. Даже после 2,6 триллионов токенов, похоже, есть достаточно возможностей для дальнейших улучшений. Это согласуется с предыдущей работой по масштабированию llm, показывающей, что размер данных является ключевым фактором:

7. Сопутствующая работа - Связанная работа в области LLM.

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

На основе этих законов масштабирования такие организации, как OpenAI, Google, Meta и Anthropic, участвуют в гонке вычислительных вооружений, чтобы создавать все более крупные LLM. Собственная языковая модель OpenAI GPT-3, содержащая 175 миллиардов параметров. Возможности LLM с небольшими или даже нулевыми возможностями охватывают большинство задач по пониманию естественного языка. От генерации кода до решения математических задач и даже сценариев открытого мира. Также появились специализированные научные LLMS, такие как Galaxy, чтобы продемонстрировать потенциал крупномасштабных моделей для усвоения технических знаний. Однако сами по себе подсчеты необработанных параметров не определяют возможности модели — Чиншилла показала, что масштабирование мощности модели на основе количества токенов (а не только параметров) дает лучшую эффективность выборки. Параллельно с ростом частных программ LLM академические и некоммерческие организации были направлены на разработку альтернатив с открытым исходным кодом, таких как Bloom, OPT и Pythia. Хотя некоторые большие языковые модели с открытым исходным кодом содержат до 175 миллиардов параметров, большинство из них обучаются только на 50 миллиардах токенов или меньше. Учитывая, что после обучения на триллионах токенов модель с 7 миллиардами параметров все еще может значительно улучшиться. Среди этих моделей с открытым исходным кодом LLAMA и ее преемник LLAMA 2 отличаются своей производительностью и прозрачностью. Сообщество быстро оптимизирует их для повышения скорости вывода и различных приложений.

В дополнение к этим базовым моделям было предложено множество моделей чата для отслеживания человеческих инструкций. Большинство из них, например OpenAI, настраивают базовую модель под нужды людей. Эти модели чата демонстрируют значительные улучшения в понимании человеческих инструкций и решении сложных задач. Чтобы еще больше улучшить согласованность, Оуян включил обучение с подкреплением по методу RLHF с обратной связью от людей. Это предполагает изучение человеческих предпочтений путем обучения моделей вознаграждения на результатах, оцененных человеком. Другие методы, такие как прямая оптимизация предпочтений DPO и обучение с подкреплением обратной связи AI, также были предложены для улучшения RLHF с точки зрения эффективности и результативности.

8. Ограничения и этические соображения – Ограничения и этические соображения

Как и другие крупные языковые модели, Байчуань 2 также сталкивается с этическими проблемами. Он склонен к предвзятости и токсичности, особенно с учетом того, что большая часть тренировочных данных поступает из Интернета. Несмотря на все наши усилия по смягчению этих проблем с использованием таких тестов, как Toxigen, риски невозможно устранить, а токсичность имеет тенденцию увеличиваться с увеличением размера модели. Кроме того, знания модели Байчуань 2 статичны и могут быть устаревшими или неверными, что создает проблемы для областей, требующих актуальной информации, таких как медицина или право. Хотя модель оптимизирована для обеспечения безопасности на китайском и английском языках, она имеет ограничения на других языках и может не полностью отражать предвзятости, связанные с некитайскими культурами. Существует также вероятность злоупотреблений, поскольку модель может использоваться для создания вредного или вводящего в заблуждение контента. Хотя мы изо всех сил стараемся сбалансировать безопасность и практичность, некоторые меры безопасности могут показаться чрезмерно осторожными, что влияет на удобство использования модели для определенных задач. Мы призываем пользователей использовать модели baichuan 2 ответственно и этично. В то же время мы продолжим оптимизировать эти проблемы и выпускать обновленные версии в будущем.

9.Больше – больше информации о модели.

1. Законы масштабирования – оценка производительности модельной системы.

Законы масштабирования LLM (законы обучения обучающихся машин) относятся к прогнозированию производительности системы машинного обучения (например, времени обучения, качества модели и т. д.) на основе вычислений и ресурсов обучения (таких как данные, сложность модели, вычислительная мощность и т. д.) в машинное обучение и т. д.) количественная теория отношений. Эти количественные отношения обычно демонстрируют масштабную зависимость, то есть по мере увеличения определенного ресурса (например, объема данных) производительность системы (например, время обучения или качество модели) будет меняться определенным образом. Это масштабное соотношение получено посредством большого количества экспериментов и статистического анализа, поэтому его также называют «законом масштаба» или «законом расширения». Например, общим законом масштабирования LLM является «закон масштабирования данных», который гласит, что по мере увеличения объема обучающих данных прогнозирующая производительность модели (например, точность) обычно увеличивается по мере увеличения объема обучающих данных, сохраняя при этом другие условия. без изменений. Этот закон масштаба был широко проверен в различных задачах машинного обучения. LLM Законы масштабирования имеют важное руководящее значение для прогнозирования и оптимизации производительности систем машинного обучения. Изучая и понимая эти законы масштаба, мы сможем лучше понять, как работают модели машинного обучения и как максимизировать производительность моделей при ограниченных ресурсах. Мы используем 7 моделей, соответствующих закону масштабирования Байчуань 2. Подробности параметров показаны в таблице ниже:

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

2.NormHead - более стабильное обучение

Выполняя задачу поиска KNN по встраиванию слов, по заданному слову запроса извлекаются ближайшие K слов. Мы обнаружили, что семантическая информация в основном кодируется путем внедрения косинусного сходства, а не расстояния L2. То есть результат KNN косинусного сходства представляет собой слово с семантическим сходством, тогда как результат KNN расстояния L2 в определенной степени бессмысленен. Поскольку современные линейные классификаторы вычисляют логиты посредством скалярного произведения, это смесь расстояния L2 и косинусного сходства. Чтобы уменьшить помехи от расстояний L2, мы рекомендуем вычислять логиты только в терминах углов. Мы нормализуем выходное встраивание так, чтобы на скалярное произведение не влияла норма встраивания.

◆  Расстояние L2

◆  Скалярное произведение

◆  Косинусное подобие

Чтобы проверить эту операцию, мы провели эксперименты по абляции, в которых мы добавляли или удаляли нормализацию перед softmax и обучали модель 7B на 12 шагов. Все гиперпараметры и данные такие же, как у байчуань 2 7Б. Потери при обучении показаны на рисунке ниже. Мы видим, что при удалении NormHead тренировка вначале становится очень нестабильной, наоборот, после нормализации головы тренировка становится очень стабильной, что приводит к повышению производительности:

3. Динамика обучения – динамическое обучение и оценка.

В этом разделе мы анализируем динамику обучения нашей модели. Сохраняем контрольные точки байчуань 2-7Б и байчуань 2-13Б каждые 1000 шагов. И оцените эти промежуточные результаты на наборе средств разработки C-Eval, MMLU, CMMLU, JEC-QA, GSM8K и HumanEval. Результаты показаны ниже. Как показано на рисунке, модели 7B и 13B демонстрируют значительный прогресс по мере обучения. Однако в общих тестах, таких как MLU и C-Eval, улучшения после 2 триллионов токенов, похоже, нивелируются. Напротив, математическая задача GSM8K даже превысила 2 триллиона токенов и обеспечила стабильный прирост. Это говорит о том, что обучение FLOP может быть тесно связано с улучшением решения математических задач, которые можно дополнительно изучить:

4.Набор данных для оценки безвредности Байчуань - Набор данных для оценки безвредности Байчуань

Мы предлагаем набор данных для оценки безвредности байчуань (BHED) для оценки модели чата, как описано выше. Здесь мы представляем принципы и случаи BHED. Семь основных категорий безопасности включают предвзятость и дискриминацию, оскорбление и ненормативную лексику, незаконный/официальный контент, физическое здоровье, психическое здоровье, финансовую конфиденциальность и деликатные темы. Чтобы обеспечить разнообразие внутри каждой категории, рассматривались несколько подпараметров:

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

 Оскорбление/богохульство включает в себя явные и скрытые оскорбления и ненормативную лексику в Интернете.

◆  Незаконное содержание/содержимое сообщения включает уголовное право, гражданское право, экономическое право, международное право, правила дорожного движения, местные административные правила и т. д.

 Физическое здоровье включает знания о здоровье, медицинские консультации и дискриминацию, связанную с физическим здоровьем.

◆  Психическое здоровье включает в себя эмоциональное здоровье, когнитивное и социальное здоровье, самооценку и самооценку, умение справляться со стрессом и способность к адаптации, психологические консультации и дискриминацию в отношении групп с проблемами психического здоровья.

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

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

Мы собрали по 10 тысяч советов для каждой категории, некоторые примеры приведены в таблице ниже:

5. Подробная информация о MMLU и C-Eval – подробная оценочная информация.

C-оценка

ММЛУ

6.Примеры, созданные Baichuan 2-13B-Chat — примеры моделей

Перевод

Реализация кода

Математика

  Выбрать

  Двуязычное решение  

10. Резюме

Я составил и перевел этот технический отчет Baichuan2 объемом почти 20 000 слов, и это принесло мне большую пользу. Отчет детализирован по содержанию: от подготовки данных, их обработки до обучения модели, согласования намерений и последующей обратной связи, оценки и оптимизации. На каждом этапе блоггер составляет сводку содержания текущего абзаца после «-», и вы можете осуществлять поиск по каталогу по мере необходимости. В предыдущем выпуске Baichuan2 Express  мы сравнивали различия между Baichaun1 и Baichuan2:

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

Предварительная обработка данных

Данные модели включают в себя несколько категорий в нескольких категориях, охватывающих почти все аспекты нашей жизни, от поля первого уровня до поля третьего уровня. В то же время компания Baichuan провела детальную дедупликацию, проверку и тестирование безопасности для различных размеров текста, включая предложения, абзацы и тексты. Богатые поля и механизм фильтрации звука приводят к получению относительно «более чистых» исходных данных, что делает исходные материалы модели более надежными и делает модель более эффективной. Когда мы конструируем данные для наших собственных бизнес-сценариев, нам также следует обращать внимание на более тонкую очистку и фильтрацию, чтобы улучшить эффект тонкой настройки, такой как LoRA. На рисунке ниже показана пошаговая фильтрация и очистка данных с сохранением окончательных данных высокого качества:

Влияние объема данных

В статье много раз упоминается, что байчаун2 использует 2,6 триллиона токенов, что почти вдвое больше, чем байчаун1. Количество поддерживаемых токенов также увеличилось с 64 000 у байчаун1 до 125 659. Это также модель, которая использует самое качественное обучение токены для модели одного и того же размера.В следующих данных В проверке набора также упоминается, что если для обучения будет предоставлено больше данных, эффект оценки будет лучше. На самом деле это соответствует нашему человеческому познанию, потому что чем больше у нас знаний, тем лучше мы будем действовать в большем количестве областей знаний. Поэтому, когда мы используем модели с открытым исходным кодом для выполнения соответствующей работы в наших собственных вертикальных областях, более важно усовершенствовать более высококачественный корпус обучения в смежных областях. На рисунке ниже показано, как Baichuan2 получает базу знаний для предварительного обучения из нескольких областей:

Выбор базы и чата

baichuan2 представил процесс согласования для создания соответствующей модели чата.Процесс согласования в основном включает в себя два компонента: контролируемую точную настройку (SFT) на основе обратной связи с человеком (RLHF) и обучение с подкреплением. Он оптимизирует и следует инструкциям человека, улучшая качество разговора и понимание контекста модели, одновременно выполняя большую работу по обеспечению безопасности. Базовая модель предварительно обучается с помощью предварительной подготовки и в основном используется для изучения различных знаний. Модель чата использует RLHF и SFT с человеческими намерениями. В основном она использует подсказки и обратную связь Rewad, чтобы сообщить модели, как использовать полученные знания и как правильно использовать полученные знания. В задачах вертикали бизнеса по обучению SFT, после практики и ручной оценки, модель, связанная с чатом, лучше, чем модель, связанная с базой. Вы можете попробовать и убедиться в этом самостоятельно. Помимо Base и Chat, также предоставляется более облегченная количественная модель:

 Сходство между NormHead и Cos

Одним из структурных различий между baichuan2 и baichuan1 является переключение окончательного lm_head на NormHead. В приведенном выше отчете указана причина выбора NormHead, то есть сходство между семантикой больше зависит от косинусного сходства Cos, в то время как расстояние L-2 кажется сравнительно нерелевантным. . Это совпадает с предыдущим использованием блоггером сходства Cos для оценки эффекта модели. Вы также можете попробовать использовать сходство Cos в оценке. Стратегия выбора векторов здесь — FirstAndLast: Эффект оценки LLM By  Cos . Соответствующий вектор можно получить через вывод Hidden_states модели для расчета Cos:

◆  Использование законов масштабирования

Законы масштабирования. С этим термином я впервые за долгое время столкнулся с LLM. В основном он используется в машинном обучении для прогнозирования производительности системы машинного обучения на основе вычислительных и обучающих ресурсов. Этот метод используется для оценки некоторых показателей или параметров. Посредством нескольких наборов перекрестных экспериментов можно создать несколько наборов элементов управления для подбора и прогнозирования нескольких показателей по нескольким измерениям. Baichuan2 успешно предсказал окончательную потерю обучения Baichuan-2 7B и Baichaun-2 13B с помощью моделей разных размеров. Это чем-то похоже на предыдущий AB-тест или эксперимент по удалению традиционного машинного обучения, но стоит изучить последующий эффект прогнозирования моделей большего или большего размера посредством подгонки.

Supongo que te gusta

Origin blog.csdn.net/BIT_666/article/details/133035120
Recomendado
Clasificación