Вопрос или проблема
Я знаком с концепциями машинного обучения и глубокого обучения и посмотрел на Dolly, а также запустил предобученную модель на ноутбуке Jupyter lab в Databricks.
Однако, когда я смотрю на формат их тренировочного набора данных, все они представлены в формате инструкция и ответ.
Мой конкретный вопрос заключается в том, если у меня есть супербольшой дамп общего текста, который не размечен в виде инструкции и ответа, могу ли я просто обучить Dolly как авторегрессионную языковую модель, которая будет принимать кусок текста в качестве входных данных для функции генерации позже, после обучения, и просто генерировать текст?
Буду признателен за любые предложения. Спасибо
Вы можете. Если вы посмотрите на скрипт обучения, вы увидите, что он просто преобразует входные данные в строки. Входные данные авторегрессионных моделей — это просто строки. Поэтому вы можете изменить это, чтобы просто вернуть одну большую строку в вашем входе.
Однако результат просто научится продолжать строки, подобные вашему входу. Он не обязательно будет отвечать на вопросы или следовать инструкциям. Вам, возможно, также придется дообучить для вашей задачи.
Ответ или решение
Да, вы можете обучить модель Dolly v2 на большом объеме неразмеченного текста общего назначения. Давайте рассмотрим этот процесс более подробно.
Введение
Модель Dolly v2 была разработана для выполнения задач в формате «инструкция-ответ», что позволяет ей генерировать релевантные ответы на заданные команды. Однако, если у вас есть большой массив текста, который не размечен в этой форме, существуют пути его использования для обучения модели.
Механизм работы модели
Как упоминалось в вашем вопросе, модель Dolly является авторегрессивной языковой моделью. Это значит, что на этапе генерации текста она обрабатывает входные данные в виде строк. Отметим, что такие модели обучаются на последовательностях текста, где они предсказывают следующий символ или слово на основе предыдущих контекстов.
Обучение на неразмеченном тексте
Вы можете адаптировать имеющуюся тренировочную скрипт Dolly, чтобы обрабатывать ваш большой текстовый набор. Код, на который вы ссылались, преобразует вводимые данные в строки. Вам нужно будет изменить его, чтобы он принимал ваш текст как единый блок.
Изменение кода
Посмотрите на скрипт тренировки. Вы можете изменить участок кода, чтобы модель обрабатывала ваш текст, формируя его в виде одной большой строки, чем передавать его в формате «инструкция-ответ». Таким образом, вместо случайных предложений, модель будет генерировать текст, основываясь на статистических закономерностях вашей предобученной выборки.
Результаты обучения
Однако стоит учитывать, что в результате такого обучения модель, скорее всего, будет генерировать последовательности текста, схожие с вашим исходным материалом, без способности явно ответить на вопросы или выполнять команды. Чтобы достичь поведения, подобного тому, что предусмотрено для Dolly, может понадобиться дополнительная дообучение на размеченных данных. Такое дообучение позволит улучшить контекстуальное понимание модели и её способность следовать заданным инструкциям.
Рекомендации
-
Проведите предварительный анализ данных: Определите, какие части вашего текста могут быть наиболее полезными для генерации. Обратите внимание на текст с инструкциями и ответами, если такие имеются.
-
Адаптируйте архитектуру модели: Возможно, вам потребуется внести корректировки в другие гиперпараметры или даже структуру модели в зависимости от характеристик ваших данных.
-
Тестирование и валидация: Проверьте различные стратегии обучения, чтобы понять, какая из них наиболее эффективна. Проводите тестирование на небольших наборах данных, чтобы отследить результаты и адаптировать модель.
-
Финальная дообучение: Используйте наборы данных в формате «инструкция-ответ» для дообучения модели, как только она будет успешно обучена на вашем тексте.
Заключение
Обучение модели Dolly v2 на большом неразмеченном текстовом массиве возможно и может быть осуществлено с помощью небольших правок в коде. Однако результаты вашего обучения будут зависеть от структуры данных, и для достижения желаемого поведения модели может потребоваться дополнительное дообучение. Важно оставаться гибким и готовым к экспериментам, чтобы достичь оптимального результата в своей задаче генерации текста.