ChatGPT

За лаштунками: Дослідження внутрішньої роботи ChatGPT – Частина 1

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

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

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

Пам’ятайте, що наведені тут приклади спрощені для ілюстрації процесу. Фактичне навчання включає складні алгоритми та величезні обсяги даних.

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

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

Фавікон Шайпа
І все-таки, чи існує орієнтир щодо того, скільки даних буде відповідним або достатнім для навчання моделей ML?
Обсяг даних, необхідних для ефективного навчання моделей машинного навчання, значною мірою залежить від складності проблеми, яку ви намагаєтеся вирішити, якості та різноманітності ваших даних і типу моделі машинного навчання, яку ви використовуєте. Таким чином, важко визначити остаточний еталон для обсягу даних. Однак ось деякі загальні вказівки:
  • Почніть з малого: Особливо для простих задач або початкових прототипів моделі може бути достатнім менший набір даних. Наприклад, якщо ви створюєте базовий класифікатор зображень, ви можете почати з кількох сотень чи тисяч зображень на категорію.
  • Зверніть увагу на складність: Складніші проблеми зазвичай вимагають більше даних. Якщо ви розробляєте модель глибокого навчання або працюєте зі складною проблемою, як-от обробка природної мови, вам можуть знадобитися мільйони точок даних.
  • Якість над кількістю: Якісні релевантні дані часто можуть бути більш корисними, ніж величезна кількість неякісних даних. Дуже важливо переконатися, що ваші дані належним чином очищені, анотовані та відповідають проблемі, яку ви намагаєтеся вирішити.
  • Збалансуйте свої класи: Для контрольованих навчальних завдань переконайтеся, що є хороший баланс прикладів для кожного класу. Незбалансований набір даних може призвести до того, що модель буде погано працювати на недостатньо представлених класах.
  • Використовуйте набори перевірки та тестування: Частину вашого набору даних слід відкласти для перевірки (настроювання параметрів моделі) і тестування (оцінки ефективності моделі). Загальні розподіли можуть становити 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

Сподобалася ця стаття? Слідкуйте за Shaip у LinkedIn, щоб отримувати більше оновлень.

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