Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Генеративні Моделі на Основі Трансформерів | Секція
Генеративне глибинне навчання

bookГенеративні Моделі на Основі Трансформерів

Свайпніть щоб показати меню

Вступ до трансформерів та механізму самоуваги

Трансформери є базовою архітектурою в сучасному штучному інтелекті, особливо в обробці природної мови (NLP) та генеративному моделюванні. Вперше представлені у статті "Attention is All You Need" (Vaswani et al., 2017), трансформери відмовляються від рекурентності на користь механізму, який називається самоувага (self-attention), що дозволяє моделям враховувати всі частини вхідної послідовності одночасно.

Механізм самоуваги

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

  • Query (Q);
  • Key (K);
  • Value (V).

Вихід уваги обчислюється як:

Attention(Q,K,V)=softmax(QKTdk)V\text{Attention}(Q, K, V) = \text{softmax} \left( \frac{QK^T}{\sqrt{d_k}} \right)V

Де:

  • QQ, KK та VV — це матриці, отримані з вхідних даних.
  • dkd_k — розмірність векторів ключів.
  • softmax\text{softmax} перетворює оцінки схожості на ймовірності.

Це дозволяє кожному токену звертати увагу на всі інші токени та відповідно коригувати своє представлення.

Огляд архітектури трансформера

Модель трансформера складається з шарів енкодера та декодера, розташованих у стеку:

  • Енкодер перетворює вхідні дані у контекстуалізоване латентне представлення;
  • Декодер генерує вихідні токени, використовуючи вихід енкодера та попередні токени.

Кожен шар містить:

  • Багатоголовкову самоувагу (Multi-Head Self-Attention);
  • Прямі нейронні мережі (Feedforward Neural Networks);
  • Нормалізацію шару (Layer Normalization);
  • Резидуальні з'єднання (Residual Connections).

Багатоголовкова самоувага (Multi-Head Self-Attention)

Замість обчислення однієї функції уваги, трансформер використовує декілька голів уваги. Кожна голова навчається фокусуватися на різних частинах послідовності.

Multi-Head(Q,K,V)=Concat(head1,head2,...,headn)W0\text{Multi-Head}(Q, K, V) = \text{Concat}(\text{head}_1, \text{head}_2, ... , \text{head}_n)W^0

Де кожна голова обчислюється як:

headi=Attention(QWiQ,KWiK,VWiV)\text{head}_i = \text{Attention}(QW_i^Q, KW_i^K, VW_i^V)

Де:

  • WiQ,WiK,WiVW_i^Q, W_i^K, W_i^V — це матриці проєкцій для запитів, ключів і значень;
  • W0W^0 проєктує конкатеновані голови назад у початковий простір вимірів.

Прямі нейронні мережі (Feedforward Neural Networks)

Кожен блок трансформера містить позиційно-залежну пряму нейронну мережу, яка застосовується незалежно до кожної позиції:

FFN(x)=ReLU(xW1+b1)W2+b2\text{FFN}(x) = \text{ReLU}(x W_1 + b_1)W_2 + b_2
  • Складається з двох лінійних шарів із нелінійністю (наприклад, ReLU) між ними;
  • Застосовує однакове перетворення до всіх позицій.

Нормалізація шару (Layer Normalization)

Нормалізація шару виконує нормалізацію вхідних даних по ознаках (каналах), а не по батчу. Це стабілізує навчання та покращує збіжність:

LayerNorm(x)=xμσγ+β\text{LayerNorm}(x) = \frac{x - \mu}{\sigma} \cdot \gamma + \beta

Де:

  • μ\mu — середнє значення ознак;
  • σ\sigma — стандартне відхилення;
  • γ\gamma та β\beta — параметри, що навчаються.

Резидуальні з'єднання (Residual Connections)

Резидуальні з'єднання додають вхід кожного підшару до його виходу:

Output=Layer(x)+x\text{Output} = \text{Layer}(x) + x
  • Це допомагає з передачею градієнта та дозволяє навчати глибші моделі;
  • Використовується навколо шарів самоуваги та прямої нейронної мережі.

У моделях лише-декодера (наприклад, GPT) використовується лише декодер із причинною (маскованою) самоувагою.

Генеративні попередньо навчені трансформери (GPT)

Моделі GPT — це трансформери лише з декодером, які навчаються передбачати наступний токен в авторегресивному режимі:

P(x1,x2,...,xn)=t=1nP(xtx<t)P(x_1,x_2,...,x_n)=\prod_{t=1}^n{P(x_t|x_{<t})}

Ключові характеристики:

  • Навчання на масштабних текстових наборах даних;
  • Можливість генерувати зв'язний і різноманітний текст;
  • Широке застосування у чат-ботах та генерації коду.

BERT і масковане мовне моделювання

BERT (Bidirectional Encoder Representations from Transformers) використовує лише енкодер. Навчання відбувається за допомогою маскованого мовного моделювання (MLM):

  • Випадкові токени замінюються на [MASK];
  • Модель передбачає оригінальний токен на основі повного контексту.
P(xix1,...,xi1,[MASK],xi+1,...,xn)P(x_i | x_1, ..., x_{i-1}, [\text{MASK}], x_{i+1}, ..., x_n)

Це робить BERT ефективним для задач класифікації, питань і відповідей, а також семантичної схожості.

Трансформери та LLM

Трансформери є основою великих мовних моделей (LLM), таких як GPT-3, GPT-4, PaLM, LLaMA та Claude.

LLM використовують великі набори даних і сотні мільярдів параметрів, що дозволяє їм:

  • Розуміти та генерувати людську мову;
  • Виконувати переклад, узагальнення, питання й відповіді, міркування;
  • Використовуватися у чат-ботах, аналізаторах документів і асистентах програмування.

Масштабованість трансформерів і здатність моделювати довгострокові залежності роблять їх ідеальними для таких моделей.

1. Яка основна інновація, запроваджена трансформерами?

2. Чим BERT відрізняється від GPT?

3. Чому трансформери ідеально підходять для LLM?

question mark

Яка основна інновація, запроваджена трансформерами?

Select the correct answer

question mark

Чим BERT відрізняється від GPT?

Select the correct answer

question mark

Чому трансформери ідеально підходять для LLM?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 1. Розділ 9

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Секція 1. Розділ 9
some-alt