MLP не знает, что соседние пиксели связаны, а слова в предложении идут по порядку. Специальные архитектуры вшивают эти индуктивные смещения в сами формулы.
Свёрточная сеть
Двумерная свёртка фильтра \(K\in\mathbb{R}^{k\times k}\) по карте признаков \(X\):
Один и тот же фильтр скользит по всему изображению — веса разделяются. После нескольких свёрток ставят пулинг, например max-pooling:
Глубже по сети растёт рецептивное поле: нейрон «видит» всё большую область исходной картинки.
Рекуррентная сеть
Для последовательности \(\mathbf{x}_1,\dots,\mathbf{x}_T\) скрытое состояние обновляется так:
LSTM добавляет вентили, чтобы помнить дольше. Ячейка памяти:
\(\mathbf{f}_t\) решает, что забыть, \(\mathbf{i}_t\) — что записать, \(\mathbf{o}_t\) — что показать наружу.
Самовнимание
Трансформер не гоняет состояние по времени, а сразу смотрит на всю последовательность. Из эмбеддингов \(X\) получают запросы, ключи и значения:
Масштабированное скалярное внимание:
Деление на \(\sqrt{d_k}\) удерживает дисперсию скалярных произведений около единицы, иначе softmax становится почти one-hot. Много голов считают несколько таких карт параллельно и склеивают результат:
Позиции
Без порядка внимание перестановочно-инвариантно. Синусоидальные позиции из исходной статьи: