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(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

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

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

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

Секція 2. Розділ 8

Запитати АІ

expand

Запитати АІ

ChatGPT

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

Suggested prompts:

Can you explain how self-attention works in more detail?

What is the difference between encoder and decoder in transformers?

How does multi-head attention improve model performance?

Awesome!

Completion rate improved to 4.76

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(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

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

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

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

Секція 2. Розділ 8
some-alt