Третє покоління алгоритму OpenAI навчилося виконувати текстові завдання за кількома прикладами

Дослідники з OpenAI представили GPT-3 - алгоритм, який може виконувати різні завдання з написання тексту на основі всього декількох прикладів. У новій версії використовується та ж архітектура, що і в попередньому алгоритмі GPT-2, проте розробники збільшили кількість використовуваних у моделі параметрів до 175 мільярдів, навчивши модель на 570 гігабайтах тексту. У підсумку GPT-3 може відповідати на запитання за прочитаним текстом, писати вірші, розгадувати анаграми, вирішувати прості арифметичні приклади і навіть перекладати - і для цього їй потрібно небагато (від 10 до 100) прикладів того, як саме це робити. Докладний опис роботи алгоритму дослідники виклали на arXiv.org.


Важливе обмеження сучасних алгоритмів NLP (natural language processing) - залежність від контексту: багато алгоритмів можуть виконувати тільки ті завдання, на виконання яких вони навчені. Наприклад, якщо необхідний алгоритм, який пише вірші, його потрібно навчити на великому корпусі віршів - бажано, в тому стилі, в якому має бути підсумкове. Якщо навчання пройде успішно, алгоритм зможе зробити щось схоже на вірш, але ось відповісти на питання або скласти список слів для кросворда він вже не зможе.


Те, скільки даних знадобиться для навчання NLP-алгоритму конкретного завдання, безпосередньо залежить від того, як алгоритм передобучений: якщо системі добре відомі всі вимоги граматики мови, а генерувати осмислені фрази він вміє спочатку, то конкретно для навчання якійсь окремій задачі потрібно не так багато даних. Завдання, тому, зводиться до того, щоб зробити переднавчений NLP-алгоритм універсальним - таким, щоб він фактично вмів робити все, використовуючи для навчання мінімальну кількість даних.

Для вирішення цього завдання команда дослідників з компанії OpenAI під керівництвом Тома Брауна (Tom Brown) представила GPT-3. Цей NLP-алгоритм заснований на попередній версії, представленій у лютому минулого року: GPT-2, одна з найбільш використовуваних і просунутих NLP-моделей, навчена на 40 гігабайтах тексту, а її метазадача полягає в тому, щоб передбачати наступне слово в тексті. Як і її попередник GPT, GPT-2 заснована на архітектурі Transformer.

Для навчання алгоритму дослідники зібрали датасет з 570 гігабайтів тексту, в який були включені дані проекту Common Crawl, вся Вікіпедія, два датасети з книгами і друга версія датасета WebText, що містить тексти з веб-сторінок (першу версію WebText використовували для навчання GPT-2). Дослідники навчили вісім різних моделей GPT-3: вони відрізнялися кількістю параметрів, які модель встановлювала в ході навчання (кількість параметрів, у свою чергу, залежала від кількості шарів - при цьому архітектура використовувалася одна і та ж). Всередині найпростішої моделі використовували 125 мільйонів параметрів, а у фінальній GPT-3 - 175 мільярдів.

Завдання, яке GPT-3 потрібно було виконати, полягало у відповіді на питання або у виконанні завдання. Це могло бути, наприклад, «написати вірш», «розібрати анаграму» або «прочитати текст і відповісти на запитання». Провченою GPT-3 для виконання завдання (всього завдань було 42), крім формулювання завдання, давали або один приклад, або кілька прикладів (класично від 10 до 100 - стільки, скільки моделі буде необхідно, хоча в деяких завданнях моделі вистачало і п'яти прикладів).

Незважаючи на те, що точність кожного способу навчання моделі зростала з кількістю визначених у моделі параметрів, навчання за кількома прикладами виявилося найефективнішим: за всіма 42 завданнями точність при 175 мільярдах параметрів склала майже 60 відсотків. Наприклад, при навчанні на 64 прикладах з датасета TriviaQA, який створений для навчання моделей розуміти текст і відповідати на питання за прочитаним матеріалом, GPT-3 зі 175 мільярдами параметрів виявилася точною в 71,2 відсотка випадків - це трохи точніше, ніж модель SOTA, яка навчена виключно відповідати на питання по TriviaQA.

За кількома прикладами передзвчена GPT-3 може писати тексти на задану тему, придумувати вірші в певному стилі, розгадувати анаграми, вирішувати прості арифметичні приклади, відповідати на запитання за прочитаним текстом. Крім того, модель може перекладати на кілька мов: при збиранні даних вчені не обмежили мову текстів, тому сім відсотків усього датасета - тексти іноземними мовами, які також використовуються моделлю для перекладу за кількома прикладами.


Як і у випадку з GPT-2, дослідники в препринті висловили своє занепокоєння з приводу того, що розроблена ними модель може бути використана на шкоду - тому її вони поки що не надали. На сторінці розробників на GitHub можна знайти шматок датасета і приклади завдань, які використовувалися в роботі.

В останні роки OpenAI досяг успіху не тільки в NLP-алгоритмах: торік розробники компанії представили алгоритми, які можуть придумувати нову музику і збирати кубик Рубіка.

COM_SPPAGEBUILDER_NO_ITEMS_FOUND