Промпт-інжиніринг
Розуміння тонкої налаштування LLM: Адаптація великих мовних моделей до ваших унікальних вимог

Станом на вересень 2023 року, ландшафт великих мовних моделей (LLM) все ще свідчить про появу моделей, таких як Alpaca, Falcon, Llama 2, GPT-4 та багатьох інших.
Важливим аспектом використання потенціалу цих LLM є процес тонкої налаштування, стратегія, яка дозволяє налаштовувати попередньо навчені моделі для виконання конкретних завдань з високою точністю. Саме через це тонке налаштування ці моделі можуть真正но відповідати індивідуальним вимогам, пропонуючи інноваційні рішення, адаптовані до унікальних потреб.
Однак, варто зазначити, що не всі методи тонкого налаштування створені рівними. Наприклад, доступ до можливостей тонкого налаштування GPT-4 відбувається за преміум, що вимагає платної підписки, яка відносно дорожча порівняно з іншими варіантами на ринку. З іншого боку, відкритий джерельний код пропонує альтернативи, які забезпечують більш доступний шлях до використання великих мовних моделей. Ці відкриті варіанти демократизують доступ до передових технологій штучного інтелекту, сприяючи інноваціям та інклюзивності в швидкозмінному ландшафті штучного інтелекту.
Чому тонке налаштування LLM важливе?
Тонке налаштування LLM – це не просто технічне вдосконалення; це критичний аспект розвитку моделей LLM, який дозволяє застосувати моделі більш конкретно та розвинуто в різних завданнях. Тонке налаштування регулює попередньо навчені моделі для кращого відповідання конкретним наборам даних, підвищуючи їхню продуктивність у конкретних завданнях та забезпечуючи більш цільове застосування. Воно відкриває видатну здатність LLM адаптуватися до нових даних, демонструючи гнучкість, яка є життєво важливою в зростаючому інтересі до застосунків штучного інтелекту.
Тонке налаштування великих мовних моделей відкриває багато можливостей, дозволяючи їм excelling у конкретних завданнях, починаючи від аналізу настроїв та закінчуючи оглядами медичної літератури. Від调лювання базової моделі до конкретного випадку використання, ми розблоковуємо нові можливості, підвищуючи ефективність та точність моделі. Крім того, воно забезпечує більш економічне використання системних ресурсів, оскільки тонке налаштування вимагає менше обчислювальної потужності порівняно з навчанням моделі з нуля.
Як ми глибше вивчимо цей гід, ми обговоримо тонкості тонкого налаштування LLM, надавши вам комплексний огляд, заснований на останніх досягненнях та найкращих практиках у галузі.
Інструкційне тонке налаштування
Фаза тонкого налаштування в життєвому циклі Генеративного штучного інтелекту характеризується інтеграцією вхідних та вихідних інструкцій, а також прикладами крок за кроком rozumіння. Цей підхід дозволяє моделі генерувати відповіді, які не тільки актуальні, але й точно відповідають конкретним інструкціям, введеним у неї. Саме під час цієї фази попередньо навчені моделі адаптуються для розв’язання окремих завдань та випадків використання, використовуючи персоналізовані набори даних для підвищення їхньої функціональності.
Тонке налаштування для одного завдання
Тонке налаштування для одного завдання зосереджується на вдосконаленні експертизи моделі у конкретному завданні, наприклад, у сумарюванні. Цей підхід особливо корисний для оптимізації робочих процесів, що включають суттєві документи чи нитки розмов, включаючи юридичні документи та тикети служби підтримки клієнтів. Вражаюче, що таке тонке налаштування може досягти суттєвих покращень продуктивності з відносно невеликим набором прикладів, від 500 до 1000, на відміну від мільярдів токенів, використаних на етапі попереднього навчання.
Основи тонкого налаштування LLM: Архітектура трансформера та далі
Подорож розуміння тонкого налаштування LLM починається з розуміння основних елементів, які складають LLM. У серці цих моделей лежить архітектура трансформера, нейронна мережа, яка використовує механізми самоуваження для пріоритету контексту слів над їхнім розташуванням у реченні. Цей інноваційний підхід дозволяє досягти глибшого розуміння віддалених відносин між токенами у вхідних даних.
Як ми глибше вивчимо трансформери, ми зустрічаємо багатокроковий процес, який починається з кодувача. Ця початкова фаза включає токенізацію вхідних даних та створення векторів вкладення, які представляють вхідні дані та їхнє положення у реченні. Наступні стадії включають ряд обчислень, що використовують матриці, відомі як Запит, Значення та Ключ, що завершуються самою увагою, яка диктує фокусування на різних частинах речення та токенів.
Тонке налаштування є критичною фазою у розвитку LLM, процесом, який включає здійснення тонких коригувань для досягнення більш бажаних виходів. Ця стадія, хоча й важлива, представляє ряд викликів, включаючи обчислювальні та зберігальні вимоги обробки великої кількості параметрів. Parameter Efficient Fine-Tuning (PEFT) пропонує техніки для зниження кількості параметрів, що підлягають тонкому налаштуванню, тим самим спрощуючи процес навчання.
Попереднє навчання LLM: Створення міцної основи
На початкових етапах розвитку LLM попереднє навчання займає центральне місце, використовуючи надпараметризовані трансформери як основну архітектуру. Цей процес включає моделювання природної мови різними способами, такими як двонаправлене, автoregresивне або послідовність до послідовності на великих масштабах ненадзорчих корпусах. Метою тут є створення основи, яку можна пізніше тонко налаштувати для конкретних завдань нижнього рівня через введення завдань-орієнтованих цілей.
Відміченим трендом у цій сфері є невідворотний зростання масштабу попередньо навчених LLM, виміряний кількістю параметрів. Емпіричні дані постійно показують, що більші моделі разом з більшим обсягом даних майже завжди забезпечують кращу продуктивність. Наприклад, GPT-3, з його 175 мільярдами параметрів, встановив стандарт у генерації високоякісної природної мови та виконанні широкого спектру завдань без попереднього навчання.
Тонке налаштування: Шлях до адаптації моделі
Після попереднього навчання LLM проходить тонке налаштування для адаптації до конкретних завдань. Незважаючи на перспективну продуктивність, показану навчанням у контексті в попередньо навчених LLM, таких як GPT-3, тонке налаштування залишається вищим у завдання-специфічних умовах. Однак поширений підхід повного тонкого налаштування параметрів представляє виклики, включаючи високі обчислювальні та пам’ятні вимоги, особливо при роботі з великомасштабними моделями.
Для великих мовних моделей з понад мільярдом параметрів ефективне управління оперативною пам’яттю GPU є важливим. Один параметр моделі при повній точності 32 біт вимагає 4 байти місця, що означає потребу у 4 ГБ оперативної пам’яті GPU лише для завантаження моделі з 1 мільярдом параметрів. Сам процес навчання вимагає ще більше пам’яті для розміщення різних компонентів, включаючи стани оптимізатора та градієнти, потенційно вимагаючи до 80 ГБ оперативної пам’яті GPU для моделі такого масштабу.
Для подолання обмежень оперативної пам’яті GPU використовується квантування, яке є технікою, що зменшує точність параметрів моделі, тим самим зменшуючи вимоги до пам’яті. Наприклад, зміна точності з 32 біт на 16 біт може зменшити вдвічі необхідну пам’ять для як завантаження, так і навчання моделі. Пізніше в цій статті ми дізнаємося про Qlora, який використовує концепцію квантування для налаштування.
Розглядаючи категорії методів PEFT
Під час повного тонкого налаштування великих мовних моделей важливо мати обчислювальну установку, яка може ефективно обробляти не тільки суттєві ваги моделі, які для найбільш просунутих моделей тепер досягають розмірів у сотні гігабайт, але й керувати рядом інших критичних елементів. Ці елементи включають виділення пам’яті для станів оптимізатора, керування градієнтами, активаціями прямого проходу та забезпечення тимчасової пам’яті під час різних стадій процесу навчання.
Адитивний метод
Цей тип налаштування може доповнити попередньо навчену модель додатковими параметрами або шарами, зосереджуючись на навчанні лише нових доданих параметрів. Незважаючи на збільшення кількості параметрів, ці методи підвищують ефективність навчання та простору. Адитивний метод розділений на підкатегорії:
- Адаптери: Включення малих повністю зв’язаних мереж після шарів трансформера, з помітними прикладами AdaMix, KronA та Compactor.
- М’які промпти: Тонке налаштування сегмента вхідних вкладень моделі через градієнтний спуск, з IPT, prefix-tuning та WARP як помітними прикладами.
- Інші адитивні підходи: Включають техніки, такі як LeTS, AttentionFusion та Ladder-Side Tuning.
Селективний метод
Селективні PEFT тонко налаштовують обмежену кількість верхніх шарів на основі типу шару та внутрішньої структури моделі. Ця категорія включає методи, такі як BitFit та LN налаштування, які зосереджуються на налаштуванні конкретних елементів, таких як зміщення моделі або окремих рядків.
Метод, заснований на репараметризації
Ці методи використовують низькорангові представлення для зменшення кількості тренованих параметрів, з найбільш відомим Low-Rank Adaptation (LoRA). Цей метод використовує просту низькорангову матричну декомпозицію для параметризації оновлення ваги, демонструючи ефективне тонке налаштування у низькорангових підпросторах.
1) LoRA (Низькорангове адаптування)
LoRA виникла як революційна техніка PEFT, представлена в статті Edward J. Hu та інших у 2021 році. Вона діє у категорії репараметризації, заморожуючи оригінальні ваги LLM та інтегруючи нові треновані низькорангові матриці в кожному шарі архітектури трансформера. Цей підхід не тільки зменшує кількість тренованих параметрів, але й зменшує час навчання та обчислювальні ресурси, тим самим представляючи більш ефективну альтернативу повному тонкому налаштуванню.
Для розуміння механіки LoRA необхідно повернутися до архітектури трансформера, де вхідний промпт піддається токенізації та перетворенню у вектори вкладення. Ці вектори проходять через кодувач та/або декодувач частини трансформера, зустрічаючи самоуваження та фідфорвардні мережі, чиї ваги попередньо навчені.
LoRA використовує концепцію Сingular Value Decomposition (SVD). По суті, SVD розбиває матрицю на три окремі матриці, одна з яких є діагональною матрицею, що містить сингулярні значення. Ці сингулярні значення є важливими, оскільки вони вимірюють значення різних розмірностей у матрицях, з більшіми значеннями, що вказують на вищу важливість, та меншими значеннями, що вказують на меншу значимість.
Цей підхід дозволяє LoRA зберігати суттєві характеристики даних, зменшуючи розмірність, тим самим оптимізуючи процес тонкого налаштування.
LoRA втручається в цей процес, заморожуючи всі оригінальні параметри моделі та вводячи пару “матриць рангової декомпозиції” поряд з оригінальними вагами. Ці менші матриці, позначені як A та B, проходять навчання через наглядане навчання.
Ключовим елементом у цій стратегії є параметр, званий ранг (‘r’), який диктує розмір низькорангових матриць. Обережний вибір ‘r’ може дати вражаючі результати, навіть з меншим значенням, тим самим створюючи низькорангову матрицю з меншою кількістю параметрів для навчання. Ця стратегія була успішно реалізована за допомогою відкритих бібліотек, таких як HuggingFace Transformers, що забезпечує тонке налаштування LoRA для різних завдань з вражаючою ефективністю.
2) QLoRA: Підвищення ефективності LoRA
Розбудовуючи основу, закладену LoRA, QLoRA ще більше зменшує вимоги до пам’яті. Представлена Tim Dettmers та іншими у 2023 році, вона поєднує низькорангове адаптування з квантуванням, використовуючи 4-бітовий формат квантування, названий NormalFloat або nf4. Квантування по суті є процесом, який переводить дані з вищого рівня інформації до рівня з меншою кількістю інформації. Цей підхід зберігає ефективність 16-бітових методів тонкого налаштування, де-квантує 4-бітові ваги до 16-бітових, як це необхідно під час обчислювальних процесів.

Порівняння методів тонкого налаштування: QLORA підвищує ефективність LoRA з 4-бітовим квантуванням та пейджованими оптимізаторами для управління сплесками пам’яті
QLoRA використовує NumericFloat4 (nf4), націлюючи кожний шар архітектури трансформера, та вводить концепцію подвійного квантування для подальшого зменшення відбитку пам’яті, необхідної для тонкого налаштування. Це досягається шляхом квантування вже квантованих констант, стратегії, яка запобігає типовим сплескам пам’яті під час градієнтної перевірки завдяки використанню пейджованих оптимізаторів та уніфікованого управління пам’яттю.
Guanaco, який є ансамблем, налаштованим за допомогою QLORA, встановлює стандарт у відкритих рішеннях для чат-ботів. Його продуктивність, підтверджена систематичними людськими та автоматизованими оцінками, підкреслює його домінування та ефективність у галузі.
Версії Guanaco розміром 65B та 33B, налаштовані за допомогою модифікованої версії набору даних OASST1, виявляються потужними конкурентами відомим моделям, таким як ChatGPT та навіть GPT-4.
Тонке налаштування з використанням навчання з підкріпленням від людської обратної зв’язки
Навчання з підкріпленням від людської обратної зв’язки (RLHF) вступає у гру під час тонкого налаштування попередньо навчених мовних моделей для більш тісної відповідності людським цінностям. Ця концепція була представлена Open AI у 2017 році, закладając основу для покращення сумарювання документів та розробки InstructGPT.
У центрі RLHF лежить парадигма навчання з підкріпленням, тип техніки машинного навчання, де агент вчиться, як поводитися в середовищі, виконуючи дії та отримуючи нагороди. Це безперервний цикл дії та обратної зв’язки, де агент стимулюється до вибору дій, які приведуть до найбільшої нагороди.
Переносячи це у сферу мовних моделей, агент є моделлю самою по собі, діючою у середовищі заданого контекстного вікна та приймаючи рішення на основі стану, який визначається поточними токенами у контексті. “Простір дій” охоплює всі потенційні токени, які модель може вибрати, з метою вибрати токен, який найбільш тісно відповідає людським уподобанням.
Процес RLHF широко використовує людську обратну зв’язку, використовуючи її для навчання моделі нагород. Ця модель грає важливу роль у керуванні попередньо навченою моделлю під час процесу тонкого налаштування, спонукаючи її генерувати виходи, які більш тісно відповідають людським цінностям. Це динамічний та ітеративний процес, де модель вчиться через серію “розгортань”, термін, який використовується для опису послідовності станів та дій, що ведуть до нагороди у контексті генерації мови.
Одним з видатних потенціалів RLHF є її здатність сприяти персоналізації у системах штучного інтелекту, налаштовуючи їх на відповідність індивідуальним уподобанням користувачів, чи то їхньому почуття гумору чи щоденним звичаям. Це відкриває можливості для створення систем штучного інтелекту, які не тільки технічні, але й емоційно інтелектуальні, здатні зрозуміти та відповісти на нюанси людської комунікації.
Однак варто зазначити, що RLHF не є безпомилковим рішенням. Моделі все ще можуть генерувати нежадані виходи, віддзеркалюючи величезний та часто ненадзорчий і упереджений дані, на яких вони були навчені.
Висновок
Процес тонкого налаштування, критичний етап у використанні повного потенціалу LLM, таких як Alpaca, Falcon та GPT-4, став більш розвиненим та зосередженим, пропонуючи адаптовані рішення для широкого спектру завдань.
Ми побачили тонке налаштування для одного завдання, яке спеціалізує моделі у конкретних ролях, та методи параметро-ефективного тонкого налаштування (PEFT), включаючи LoRA та QLoRA, які спрямовані на те, щоб зробити процес навчання більш ефективним та економічним. Ці розробки відкривають двері до високорівневих функцій штучного інтелекту для ширшої аудиторії.
Крім того, введення навчання з підкріпленням від людської обратної зв’язки (RLHF) компанією Open AI є кроком до створення систем штучного інтелекту, які краще відповідають людським цінностям та уподобанням, закладając основу для створення систем штучного інтелекту, які не тільки розумні, але й чутливі до індивідуальних потреб користувачів. Обидва RLHF та PEFT працюють у синергії для підвищення функціональності та ефективності великих мовних моделей.
Як бізнес, підприємства та окремі особи розглядають інтеграцію цих тонко налаштованих LLM у свої операції, вони фактично запрошують майбутнє, де штучний інтелект не просто інструмент, а партнер, який розуміє та адаптується до людського контексту, пропонуючи інноваційні рішення, адаптовані до унікальних потреб.























