Алгебра

Линейные отображения

Каждый линейный слой нейронной сети-это линейное отображение. Свёртка в CNN-линейное отображение на пространстве патчей. Механизм внимания (до softmax)-три линейных отображения (Q, K, V). Понимание ядра и образа этих отображений-ключ к анализу что сеть "видит" и что "теряет".

  • **Линейные слои в DNN:** torch.nn.Linear-матрица W; ядро ker(W)-признаки, невидимые для слоя; образ im(W)-достижимые активации
  • **PCA как линейное отображение:** проекция на k главных компонент-линейный оператор ранга k; ядро = orthogonal complement
  • **Attention без softmax:** QKᵀV-последовательность линейных отображений; только softmax делает attention нелинейным

Предварительные знания

  • Vector Spaces

Определение и матричное представление

Отображение f: V → W называется линейным, если f(αx + βy) = αf(x) + βf(y) для всех x,y ∈ V и α,β ∈ F. Это две условия: аддитивность f(x+y)=f(x)+f(y) и однородность f(αx)=αf(x). При фиксированных базисах V и W каждое линейное отображение однозначно задаётся матрицей A ∈ ℝ^{m×n}.

**Матричный элемент A[i][j]**-это i-я координата образа j-го базисного вектора. Чтобы составить матрицу f, нужно вычислить f(e₁), f(e₂), …, f(eₙ) и записать результаты как столбцы.

torch.nn.Linear(in, out, bias=False)-это буквально матрица весов W ∈ ℝ^{out×in}, реализующая линейное отображение x ↦ Wx. С bias=True добавляется сдвиг b: x ↦ Wx + b (аффинное, не линейное!)

Является ли отображение f(x) = Ax + b (b ≠ 0) линейным?

Ядро и образ

Ядро (kernel) отображения f: V → W-это ker(f) = {v ∈ V : f(v) = 0}. Образ (image)-im(f) = {f(v) : v ∈ V} ⊆ W. Оба являются подпространствами: ядро-в V, образ-в W. Ядро-это "что теряется", образ-"что достижимо".

ТерминОбозначениеСмысл в ML
Ядро (Null space)ker(f) = Null(A)Признаки, которые слой "не видит"
Образ (Image)im(f) = Col(A)Достижимые активации
Дефект (Nullity)dim ker(f)Степень вырожденности отображения
Ранг (Rank)dim im(f)Эффективная ёмкость слоя

Линейное отображение A: ℝ⁵ → ℝ³ имеет rank(A) = 2. Каков dim ker(A)?

Теорема о ранге и дефекте

Теорема о ранге и дефекте (ранге и нулевом пространстве): для любого линейного отображения f: V → W, rank(f) + nullity(f) = dim(V). Эквивалентно: dim(im f) + dim(ker f) = dim V. Это одна из центральных теорем линейной алгебры.

В нейронных сетях: если dim входа > dim выхода у слоя, то nullity > 0-информация теряется необратимо (это нормально при сжатии признаков). Если dim входа < dim выхода-слой не может быть сюръективным: не все выходные активации достижимы.

При каком условии линейное отображение f: V → V является изоморфизмом (обратимым)?

Композиция и умножение матриц

Композиция линейных отображений f: U → V и g: V → W-это линейное отображение (g∘f): U → W. В матричных обозначениях: если f задаётся матрицей A и g-матрицей B, то g∘f задаётся матрицей BA. Именно поэтому умножение матриц определено именно так-это не произвольное соглашение.

**Почему нужны нелинейности:** без relu/sigmoid/gelu любая последовательность линейных слоёв-это одно линейное отображение (произведение матриц). Нелинейности позволяют аппроксимировать произвольные функции (теорема универсальной аппроксимации).

Почему умножение матриц AB соответствует именно сначала B, потом A?

Ключевые идеи

  • **Линейность:** f(αx+βy) = αf(x)+βf(y); линейное отображение ↔ матрица при фиксированных базисах
  • **Ядро и образ:** ker(f)-что теряется, im(f)-что достижимо; оба подпространства
  • **Теорема о ранге:** rank + nullity = dim V; показывает баланс "информации" и "потерь" в отображении
  • **Композиция = умножение матриц:** сначала B, потом A → матрица AB; без нелинейностей сеть = одна матрица

Связанные темы

Линейные отображения связывают всю линейную алгебру воедино:

  • Собственные значения — Собственные векторы-инвариантные направления линейного отображения
  • SVD — SVD описывает геометрию произвольного линейного отображения через три простых операции
  • Линейная алгебра в ML — Attention как три линейных отображения; LoRA как низкоранговое

Вопросы для размышления

  • Трансформер имеет сотни линейных слоёв, но нелинейности (LayerNorm, GELU) между ними. Что случилось бы, если убрать все нелинейности?
  • LoRA (Low-Rank Adaptation) заменяет матрицу весов W на W + AB, где rank(AB) ≪ rank(W). Как это связано с ядром и образом?
  • Матрица внимания QKᵀ ∈ ℝ^{n×n} для последовательности длины n. Какой ранг у этой матрицы и что он означает?

Связанные уроки

  • la-06-transformations
Линейные отображения

0

1

Войти