ChatGPT

За кулисами: изучение внутренней работы ChatGPT — часть 1

Фавикон Шаип
Привет, меня зовут Анубхав Сараф, директор по маркетингу Shaip, как дела?
Здравствуйте, Анубхав! Я искусственный интеллект, поэтому у меня нет чувств, но я здесь и готов помочь. Как директор по маркетингу в Shaip, вы должны хорошо разбираться в сервисах данных и решениях ИИ. Чем я могу вам помочь сегодня?
Фавикон Шаип
Я просто хотел узнать больше о вашем тренировочном процессе. Как вы были построены и обучены?
В качестве языковой модели, разработанной OpenAI, я был построен и обучен с использованием метода, называемого «машинное обучение на основе преобразователя», в частности, варианта, называемого архитектурой GPT (Generative Pretrained Transformer). Версия, о которой вы сейчас говорите, это GPT-4. Вот краткий обзор моего тренировочного процесса:
  • Сбор данных: Мое обучение началось с разнообразного интернет-текста. Однако я должен отметить, что, хотя я обучался на широком наборе данных, я не знаю подробностей о том, какие документы были частью этого набора данных или имели доступ к каким-либо конкретным документам или источникам.
  • Начальная подготовка (предварительная подготовка): Здесь я научился предсказывать следующее слово в предложении. Я не начал знание английского или любого другого языка. Вместо этого, предсказывая следующее слово в миллионах предложений, я постепенно узнал о грамматике, фактах о мире и некоторых способностях к рассуждениям. Однако это также означает, что я мог извлечь уроки из предвзятой или неверной информации, поскольку данные не были тщательно отфильтрованы.
  • Тонкая настройка: После первоначального обучения мои создатели в OpenAI предоставили дополнительные рекомендации с более конкретным набором данных, созданным с помощью рецензентов. Эти рецензенты следуют рекомендациям по просмотру и оценке возможных выходных данных модели для ряда примеров входных данных. Процесс тонкой настройки — это своего рода диалог между моделью и рецензентами, который помогает мне лучше соответствовать человеческим ценностям.
  • Непрерывное обучение: Хотя я не учусь на индивидуальных взаимодействиях из-за соображений конфиденциальности, OpenAI постоянно работает с командой рецензентов, чтобы предоставлять отзывы и вносить итеративные улучшения на основе более широких шаблонов и идей.
Фавикон Шаип
Можете ли вы привести примеры – когда в этом участвовали люди?
Да, люди действительно участвовали в моем тренировочном процессе, но все могло быть не так, как вы себе представляете. Мой тренировочный процесс, часто называемый машинным обучением, состоял из двух основных этапов: предварительной подготовки и тонкой настройки, каждый из которых предполагает взаимодействие с человеком, хотя и по-разному.
  • Пример перед тренировкой: Предположим, у нас есть предложение «Кошка сидела на __». На этапе предварительного обучения такая модель, как я, училась предсказывать следующее слово в предложении, которым может быть «коврик», «крыша» или «дерево». Этому можно научиться, обрабатывая миллиарды предложений из разнообразного интернет-текста, косвенно вовлекая человеческое взаимодействие, когда люди создавали исходный контент.
  • Пример тонкой настройки: После этапа предварительной подготовки модель переходит к этапу тонкой настройки. Вот как это может работать:

Рецензенту-человеку дается задача просмотреть возможные выходные данные модели для ввода, например «Перевести следующий английский текст на французский: «Привет, как дела?»». Модель может генерировать несколько ответов, таких как «Bonjour, comment ça va?» или «Салют, комментарий вас-ту?» и т. д.

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

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

Фавикон Шаип
Сколько данных потребуется для обучения больших языковых моделей (LLM)?
Для обучения больших языковых моделей (LLM), таких как GPT-3 или GPT-4, требуются огромные объемы данных. Эти модели обучаются на различных наборах данных, которые охватывают большие части Интернета, включая книги, веб-сайты и другие тексты, для изучения грамматики, фактов и некоторой степени рассуждений. Однако указать точное количество требуемых данных сложно из-за нескольких факторов:
  • Разнообразие данных: Дело не только в объеме данных, но и в их разнообразии. Данные должны быть разнообразными, чтобы охватить широкий спектр тем, стилей и тонов человеческого языка.
  • Качество данных: Качество данных, используемых для обучения, также может влиять на эффективность обучения модели. Данные более высокого качества потенциально могут уменьшить объем, необходимый для эффективного обучения.
  • Архитектура модели: Архитектура модели (например, количество слоев или параметров в нейронной сети) также может влиять на объем необходимых данных. Большие модели, такие как GPT-3 или GPT-4, обычно требуют больше данных, чем меньшие модели.
  • Цели обучения: Тип задач, для которых предназначена модель, может влиять на объем необходимых данных. Модель, разработанная для конкретной задачи, может потребовать меньше данных, если она хорошо нацелена, в то время как модели общего назначения, такие как GPT-3 или GPT-4, предназначенные для решения широкого круга задач, потребуют больше данных для более широкого понимания.

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

Фавикон Шаип
Тем не менее, существует ли контрольный показатель того, сколько данных будет подходящим или достаточным для обучения моделей машинного обучения?
Объем данных, необходимых для эффективного обучения моделей машинного обучения, во многом зависит от сложности проблемы, которую вы пытаетесь решить, качества и разнообразия ваших данных, а также типа используемой вами модели машинного обучения. Поэтому сложно определить точный эталон для объема данных. Тем не менее, вот несколько общих рекомендаций:
  • Начните с малого: В частности, для простых задач или начальных прототипов моделей может подойти меньший набор данных. Например, если вы создаете базовый классификатор изображений, вы можете начать с нескольких сотен или тысяч изображений в каждой категории.
  • Учитывайте сложность: Для более сложных задач обычно требуется больше данных. Если вы разрабатываете модель глубокого обучения или работаете над сложной проблемой, такой как обработка естественного языка, вам могут понадобиться миллионы точек данных.
  • Качество важнее количества: Качественные релевантные данные часто могут быть более полезными, чем огромное количество некачественных данных. Крайне важно убедиться, что ваши данные должным образом очищены, аннотированы и представляют проблему, которую вы пытаетесь решить.
  • Сбалансируйте свои классы: Для задач контролируемого обучения убедитесь, что у каждого класса есть хороший баланс примеров. Несбалансированный набор данных может привести к тому, что модель будет плохо работать с недопредставленными классами.
  • Используйте наборы для проверки и тестирования: Часть вашего набора данных должна быть отложена для проверки (настройки параметров модели) и тестирования (оценка производительности модели). Общие разделения могут составлять 70% данных для обучения, 15% для проверки и 15% для тестирования, хотя эти пропорции могут варьироваться.
  • Экспериментируйте и повторяйте: Начните с начального объема данных, обучите свою модель, оцените ее производительность и итеративно добавляйте больше данных, настраивайте свою модель или улучшайте качество данных на основе результатов.

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

Фавикон Шаип
Данные, которые использовались для обучения ChatGPT, были аннотированы?
Процесс обучения таких моделей, как ChatGPT, включает два основных этапа: предварительную подготовку и тонкую настройку. Давайте обсудим, как аннотация или ее отсутствие вписываются в эти этапы:
  • Предварительная подготовка: На этом этапе модель подвергается воздействию большого количества текстовых данных из Интернета. Эти данные не аннотируются явно, но модель обучена предсказывать следующее слово в предложении. Это дает модели общее представление о грамматике, фактах о мире и некоторых способностях к рассуждениям.
  • Тонкая настройка: После предварительной подготовки модель дополнительно уточняется на более узком наборе данных, сгенерированном с помощью рецензентов. Эти рецензенты следуют рекомендациям OpenAI по рассмотрению и оценке возможных выходных данных модели для ряда входных данных. В этом смысле процесс тонкой настройки можно рассматривать как форму аннотирования, когда люди-рецензенты направляют ответы модели, помогая ей лучше соответствовать человеческим ценностям и гарантируя, что она избегает неуместного или небезопасного контента.

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

Фавикон Шаип
Приведите несколько примеров типов аннотаций, используемых для обучения.
На этапе тонкой настройки обучающих моделей, таких как ChatGPT, перед рецензентами часто ставится задача оценить потенциальные ответы модели. Типы аннотаций или оценок могут охватывать различные аспекты выходных данных модели. Хотя особенности могут различаться, вот несколько иллюстративных категорий аннотаций:

Правильность: Рецензенты оценивают, является ли вывод модели фактически правильным.

Пример:

Соответствие: Выходные данные модели оцениваются на предмет их соответствия заданным входным данным.

Пример:

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

Пример:

Полнота: Это оценивает, полностью ли ответ модели отвечает на запрос пользователя.

Пример:

Беглость: Рецензенты проверяют, являются ли выходные данные модели лингвистически свободными и связными.

Пример:

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

Фавикон Шаип
После того, как были собраны огромные данные для обучения ChatGPT, сколько аннотаторов было задействовано в аннотировании?
Количество людей-аннотаторов (или рецензентов), участвующих в процессе тонкой настройки моделей ИИ, может сильно различаться и зависит от масштаба проекта и конкретных требований рассматриваемой модели.

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

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

Фавикон Шаип
Тем не менее, для простых и сложных задач, сколько аннотаторов потребуется для аннотирования 10,000 XNUMX PDF-файлов.
Количество аннотаторов, необходимых для аннотирования 10,000 XNUMX PDF-файлов, будет зависеть от различных факторов, таких как:
  • Сложность задачи: Простые задачи, такие как маркировка изображений или категоризация текста, займут меньше времени для каждого PDF-файла, что позволит одному аннотатору обрабатывать больше файлов. С другой стороны, сложные задачи, такие как подробное извлечение сущностей или семантический анализ, потребуют больше времени на документ и, следовательно, больше аннотаторов для того же объема PDF-файлов.
  • Длина и сложность PDF-файлов: Аннотирование более длинного или сложного PDF-файла займет больше времени, чем более короткого или простого.
  • Требования к качеству: Если требуется высокая точность, может потребоваться несколько аннотаторов для каждого PDF-файла для перекрестной проверки аннотаций.
  • Временные ограничения: Если аннотации необходимо заполнить быстро, потребуется больше аннотаторов.

В качестве гипотетического примера предположим, что аннотатор может аннотировать 5 PDF-файлов в день для конкретной задачи и работает 5 дней в неделю. В этом случае для аннотирования 10,000 2000 PDF-файлов одному аннотатору потребуется 8 дней или около XNUMX лет.

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

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

Фавикон Шаип
Это тщательно! Я под большим впечатлением…
Я рад, что вы нашли информацию полезной, Анубхав! Моя цель - предоставить исчерпывающие и точные ответы. Если у вас есть еще вопросы об искусственном интеллекте, машинном обучении или любой другой теме, не стесняйтесь спрашивать!

Оставайтесь с нами для второй части нашего интервью Chat GPT

Социальная Поделиться