Штучний інтелект
LoRa, QLoRA та QA-LoRA: Ефективна адаптивність у великих мовних моделях за допомогою низькорозмірної матричної факторизації

Великі мовні моделі (LLM) зайняли унікальну нішу, пропонуючи безпрецедентні можливості в розумінні та генерації тексту, схожого на людський. Потужність LLM можна простежити до їхнього величезного розміру, який часто налічує мільярди параметрів. Хоча цей величезний масштаб підживлює їхню продуктивність, він одночасно породжує виклики, особливо коли йдеться про адаптацію моделі для конкретних завдань або доменів. Традиційні шляхи управління LLM, такі як тонке налаштування всіх параметрів, тягнуть за собою великі обчислювальні та фінансові витрати, що створює значну перешкоду для їхнього широкого впровадження в реальних додатках. У попередній статті ми заглибилися в тонке налаштування великих мовних моделей (LLM), щоб адаптувати їх до конкретних вимог. Ми дослідили різні методології тонкого налаштування, такі як інструкційне тонке налаштування, одно-задачне тонке налаштування та параметрично-ефективне тонке налаштування (PEFT), кожна зі своїм унікальним підходом до оптимізації LLM для різних завдань. Центральним у обговоренні була архітектура трансформера, основа LLM, та виклики, пов’язані з обчислювальними та пам’яттєвими вимогами обробки величезної кількості параметрів під час тонкого налаштування.
Наведене вище зображення відображає масштаб різних великих мовних моделей, відсортованих за кількістю їхніх параметрів. Зокрема: PaLM, BLOOM, тощо. Станом на цей рік відбулися прориви, що призвели до створення ще більших моделей. Однак налаштування таких гігантських моделей з відкритим кодом на стандартних системах є неможливим без спеціалізованих технік оптимізації. Тут з’являється Low-Rank Adaptation (LoRA), представлена Microsoft у цій роботі, яка має на меті пом’якшити ці виклики та зробити LLM більш доступними та адаптивними. Суть LoRA полягає в її підході до адаптації моделі без заглиблення в тонкощі повторного навчання всієї моделі. На відміну від традиційного тонкого налаштування, де змінюється кожен параметр, LoRA обирає розумніший шлях. Вона заморожує попередньо навчені ваги моделі та вводить матриці рангового розкладу, що навчаються, у кожен шар архітектури Transformer. Цей підхід різко скорочує кількість параметрів, що навчаються, забезпечуючи більш ефективний процес адаптації.
Еволюція стратегій налаштування LLM
Озираючись на шлях налаштування LLM, можна визначити кілька стратегій, які використовувалися фахівцями протягом років. Спочатку увага була зосереджена на тонкому налаштуванні попередньо навчених моделей — стратегії, яка передбачає комплексну зміну параметрів моделі для відповідності конкретному завданню. Однак у міру зростання розміру та складності моделей зростали й обчислювальні вимоги цього підходу. Наступною стратегією, яка набрала популярності, стало часткове тонке налаштування, більш обмежена версія попередника. Тут налаштовується лише підмножина параметрів моделі, що певною мірою зменшує обчислювальне навантаження. Незважаючи на свої переваги, часткове тонке налаштування все ще не встигало за темпами зростання розмірів LLM. Коли фахівці почали досліджувати більш ефективні шляхи, повне тонке налаштування виявилося ретельною, але вигідною стратегією.
Вступ до LoRA
Ранг матриці дає нам уявлення про розмірності, створені її стовпцями, і визначається кількістю унікальних рядків або стовпців.
- Матриця повного рангу: Її ранг відповідає меншій кількості між її рядками або стовпцями.
- Матриця низького рангу: З рангом, помітно меншим за кількість її рядків і стовпців, вона захоплює менше ознак.
Тепер великі моделі охоплюють широке розуміння своєї предметної області, наприклад, мови в мовних моделях. Але тонке налаштування їх для конкретних завдань часто потребує лише виділення невеликої частини цього розуміння. Ось де сяє LoRA. Вона припускає, що матриця, що демонструє ці коригування ваг, може бути низькорозмірною, таким чином захоплюючи менше ознак. LoRA розумно обмежує ранг цієї матриці оновлення, розбиваючи її на дві менші матриці рангу. Таким чином, замість зміни всієї матриці ваг, вона змінює лише її частину, роблячи завдання тонкого налаштування більш ефективним.
Застосування LoRA до трансформерів
LoRA допомагає мінімізувати навантаження при навчанні нейронних мереж, зосереджуючись на конкретних матрицях ваг. В архітектурі Transformer певні матриці ваг пов’язані з механізмом самоуваги, а саме Wq, Wk, Wv та Wo, крім двох інших у модулі багатошарового перцептрона (MLP).
Математичне пояснення LoRA
Розберемо математику, що стоїть за LoRA:
- Попередньо навчена матриця ваг W0:
- Вона починається з попередньо навченої матриці ваг W0 розмірності d×k. Це означає, що матриця має d рядків і k стовпців.
- Низькорозмірний розклад:
- Замість безпосереднього оновлення всієї матриці W0, що може бути обчислювально витратним, метод пропонує підхід низькорозмірного розкладу.
- Оновлення ΔW до W0 може бути представлене як добуток двох матриць: B та A.
- B має розмірність d×r
- A має розмірність r<span class="













