Full fine-tuning
Instruction fine-tuning, при котором обновляются все веса модели, называют full fine-tuning («полным fine-tuning»). В результате выполнения этого процесса создаётся новая модель с обновлёнными весами. Важно отметить, что, как и в случае предварительного обучения, для full fine-tuning требуется объём памяти и бюджет вычислительных ресурсов, достаточный для хранения и обработки всех градиентов, оптимизаторов и других компонентов, обновляемых при обучении.
Parameter-efficient fine-tuning
Обучение языковой модели — задача, требующая большого объёма вычислительных ресурсов. Для полного fine-tuning LLM необходима память не только под хранение модели, но и под параметры, необходимые в процессе обучения. Возможно, ваш компьютер справится с обработкой весов модели, но выделение памяти под оптимизацию состояний, градиенты и прямую активацию — это сложная задача. Простое оборудование не сможет справиться с таким бременем, поэтому здесь критически важно использовать PEFT. В процессе обучения с учителем full fine-tuning обновляет все веса модели, а методики PEFT обновляют только небольшое подмножество параметров. Такая методика трансферного обучения выбирает конкретные компоненты модели и «замораживает» остальные параметры. Логично, что в результате получается гораздо меньше параметров, чем в исходной модели (в некоторых случаях всего 15-20% от исходных весов; LoRA может снизить количество обучаемых параметров в десять тысяч раз). Благодаря этому требования к памяти становятся гораздо более щадящими. Кроме того, PEFT позволяет решать проблему катастрофического забывания (catastrophic forgetting). Так как мы не трогаем исходную LLM, модель не забывает ранее изученную информацию. Full fine-tuning приводит к получению новой версии модели для каждой задачу, под которую выполняется обучение. Каждая из них имеет тот же размер, что и исходная модель, поэтому при выполнении fine-tuning под множество разных задач может возникнуть проблема хранения больших объёмов данных.
Другие типы fine-tuning
Давайте рассмотрим и некоторые другие типы обучения:
Трансферное обучение: это процесс обучения модели, обученной на общих огромных датасетах, на отдельных, специфичных для задачи данных. В такой датасет могут быть включены размеченные примеры, связанные с нужной предметной областью. Трансферное обучение применяется, когда недостаточно данных или времени для сбора данных; его основное преимущество заключается в том, что оно обеспечивает увеличение скорости обучения и accuracy. Можно взять готовые LLM, предварительно обученные на огромных объёмах данных, наподобие GPT 3/4 и BERT, и подстроить их под собственный сценарий использования.
Task-specific fine-tuning (fine-tuning под конкретную задачу): методика, при которой выполняется fine-tuning предварительно обученной модели под конкретную задачу или предметную область на основе датасета, спроектированного для этой предметной области. При такой методике требуется больше данных и времени, чем при трансферном обучении, но она обеспечивает повышенную точность выполнения конкретной задачи.
Например, в случае перевода используется датасет примеров. Любопытно, что хороших результатов можно достичь при относительно небольшом количестве примеров. Часто для обеспечения хорошей точности достаточно всего лишь нескольких сотен или тысяч примеров (для сравнения: на этапе предварительного обучения модель изучает миллиарды текстовых фрагментов). Однако у fine-tuning под отдельную задачу есть потенциальный недостаток. Этот процесс может привести к явлению, называемому катастрофическим забыванием (catastrophic forgetting).
Катастрофическое забывание происходит из-за того, что процесс full fine-tuning модифицирует веса исходной LLM. Хотя это приводит к отличной точности в выполнении отдельной задачи, может снижаться точность в других задачах. Например, хотя fine-tuning способен повысить умения модели в выполнении определённых задач natural language processing (NLP) наподобие анализа тональности текста и приводить к качественному дополнению, модель может забыть, как выполнять другие задачи, например распознавание именованных сущностей.
Multi-task learning: расширение fine-tuning под конкретную задачу; обучающий датасет состоит из примеров входных и выходных данных разных задач. Датасет содержит примеры, содержащие инструкции выполнения множества задач, в том числе резюмирования, оценки отзывов, перевода кода и распознавания сущностей. Мы обучаем модель на этом смешанном датасете, чтобы она могла одновременно повысить точность выполнения всех задач, таким образом избегая проблемы катастрофического забывания. В течение множества эпох обучения для обновления весов модели используется вычисленная функция потерь для примеров, что приводит к созданию дообученной модели, знающей, как хорошо справляться одновременно со многими задачами. Недостаток таких моделей заключается в необходимости большого объёма данных. Может потребоваться собрать в обучающий датасет 50-100 тысяч примеров. Однако сбор этих данных будет стоить усилий. Получающиеся модели часто очень функциональны и пригодны к использованию в сценариях, требующих хорошей точности во множестве задач.
Sequential fine-tuning (последовательный fine-tuning): последовательная адаптация предварительно обученной модели к множеству связанных друг с другом задач. После первоначального трансферного обучения под общую предметную область LLM можно подвергнуть fine-tuning под более узкое подмножество задач. Например, можно выполнить fine-tuning с общего языка на медицинскую терминологию, а с медицинской терминологии — на детскую кардиологию.
Стоит отметить, что существуют и другие примеры fine-tuning больших языковых моделей — adaptive, behavioral, instruction, reinforced fine-tuning. Они применяются в важных нишевых случаях обучения языковых моделей.
Retrieval augmented generation (RAG)
Retrieval augmented generation (RAG) — это широко известная альтернатива fine-tuning, сочетающая в себе генерацию естественного языка и извлечение информации. RAG гарантирует, что языковые модели будут основаны на внешних актуальных источниках знаний/релевантных документах. Эта методика ликвидирует разрыв между обширными знаниями моделей общего назначения и необходимостью в точной и актуальной информации с подробным контекстом. Таким образом, RAG — это методика, незаменимая в ситуациях, когда факты могут со временем эволюционировать. В последнем изобретении компании xAI под названием Grok методики RAG используются для обеспечения свежести и актуальности информации.