Встречается на собеседованиях • сегодня

На чем основан механизм внимания у трансформеров

Механизм внимания в трансформерах основан на scaled dot-product attention, который вычисляет взвешенную сумму значений (values) на основе совместимости запросов (queries) и ключей (keys).

Формула:
Attention(Q, K, V) = softmax(QK^T / sqrt(d_k))V

Где:

  • Q (queries), K (keys), V (values) — матрицы, полученные линейными преобразованиями входных эмбеддингов.
  • d_k — размерность ключей (для масштабирования, чтобы избежать слишком больших значений после скалярного произведения).
  • softmax нормирует веса внимания.

Пример (PyTorch):

python
import torch
import torch.nn.functional as F

def scaled_dot_product_attention(Q, K, V, mask=None):
    d_k = Q.size(-1)
    scores = torch.matmul(Q, K.transpose(-2, -1)) / (d_k ** 0.5)
    if mask is not None:
        scores = scores.masked_fill(mask == 0, -1e9)
    weights = F.softmax(scores, dim=-1)
    return torch.matmul(weights, V)

Нюансы:

  • Multi-Head Attention: несколько независимых механизмов внимания объединяются для лучшего обучения разных аспектов зависимостей.
  • Маскирование: используется в декодере для предотвращения "подглядывания" в будущие токены.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы