8  Ax = 0 Çözme — Pivot Değişkenler ve Özel Çözümler

Null uzayı için algoritma — rank, serbest değişkenler, rref

NotBölüm bilgisi

8.1 Bu Derste Ne Var?

Ders 6’da null uzayını gözle bulduk. Ders 7 bunu algoritmaya çeviriyor.

  1. Dikdörtgen eliminasyon → echelon form \(U\).
  2. Rank = pivot sayısı.
  3. Pivot vs serbest değişkenlerözel çözümler.
  4. rref (\(R\)) → null uzayı doğrudan oku.
flowchart LR
    A["A (m × n)"] --> U["Echelon form U<br/>(eliminasyon)"]
    U --> RANK["rank r = pivot sayısı"]
    U --> PIVOT["pivot kolonlar (r tane)<br/>serbest kolonlar (n-r tane)"]
    PIVOT --> SS["Özel çözümler<br/>(her serbest değişkene 1, diğerleri 0)"]
    SS --> NA["N(A) = tüm kombinasyonları<br/>(boyut = n-r)"]

    U --> R["rref R<br/>(pivotlar 1, üst/alt 0)"]
    R --> NF["💡 N matrisi = (-F / I)<br/>(serbest blok F'den otomatik)"]

    style RANK fill:#fff3e0,stroke:#e67e22,stroke-width:2px
    style NA fill:#fdf6f7,stroke:#8a1538,stroke-width:2px
flowchart LR
    A["A (m × n)"] --> U["Echelon form U<br/>(eliminasyon)"]
    U --> RANK["rank r = pivot sayısı"]
    U --> PIVOT["pivot kolonlar (r tane)<br/>serbest kolonlar (n-r tane)"]
    PIVOT --> SS["Özel çözümler<br/>(her serbest değişkene 1, diğerleri 0)"]
    SS --> NA["N(A) = tüm kombinasyonları<br/>(boyut = n-r)"]

    U --> R["rref R<br/>(pivotlar 1, üst/alt 0)"]
    R --> NF["💡 N matrisi = (-F / I)<br/>(serbest blok F'den otomatik)"]

    style RANK fill:#fff3e0,stroke:#e67e22,stroke-width:2px
    style NA fill:#fdf6f7,stroke:#8a1538,stroke-width:2px
Şekil 8.1: Ax = 0 algoritması: A → U → R → null uzayı bazı (özel çözümler).
İpucuBuilder Notu — Rank ve ML
  • Rank = matrisin gerçek bilgi boyutu. np.linalg.matrix_rank bunu sayar. Düşük rank = sıkıştırılabilir → LoRA’nın temeli.
  • Serbest değişkenler = serbestlik dereceleri. Az-belirtilmiş (\(n > m\)) sistemlerde çözüm tek değil, alt-uzay → modern aşırı-parametrize ağların sonsuz çözümünün kökü.
  • Özel çözümler = null uzayı bazı. scipy.linalg.null_space bu vektörleri döndürür.
  • rank + null boyutu = \(n\) — rank-nullity teoremi; modelin gerçek serbestlik derecelerini sayma.

8.2 Eliminasyon Null Uzayını Korur

“When I subtract a multiple of one equation from another, I’m not changing the null space.” — Strang, 2:42

Sağ taraf hep \(\mathbf{0}\) — sıfırdan herhangi katını çıkarsan yine \(\mathbf{0}\). Eliminasyon kolon uzayını değiştirir ama null uzayını korur. Bu yüzden \(A\mathbf{x} = \mathbf{0}\) için güvenle \(U\)’ya indirgeriz.

8.3 Dikdörtgen Eliminasyon → Echelon Form U

Strang’in örneği:

\[ A = \begin{pmatrix} 1 & 2 & 2 & 2 \\ 2 & 4 & 6 & 8 \\ 3 & 6 & 8 & 10 \end{pmatrix} \]

İlk pivot \(1\). \(r_2 - 2 r_1\), \(r_3 - 3 r_1\):

\[ \to \begin{pmatrix} 1 & 2 & 2 & 2 \\ 0 & 0 & 2 & 4 \\ 0 & 0 & 2 & 4 \end{pmatrix} \]

\((2, 2)\)’de sıfır, altında da sıfır → bu kolonda iş yok, sonrakine geç. \((2, 3)\) pivot = 2. \(r_3 - r_2\):

\[ U = \begin{pmatrix} 1 & 2 & 2 & 2 \\ 0 & 0 & 2 & 4 \\ 0 & 0 & 0 & 0 \end{pmatrix} \]

Echelon form — merdiven gibi iner. Sıfır satırı, \(r_3 = r_1 + r_2\) bağımlılığını gösterir.

8.4 Rank, Pivot Kolonlar, Serbest Kolonlar

\(U\)’da iki pivot: \((1,1)\) ve \((2,3)\).

\[ \boxed{\text{rank}(A) = \text{pivot sayısı} = 2} \]

  • Pivot kolonlar (1, 3): karşılık gelen \(x_1, x_3\)pivot değişkenler.
  • Serbest kolonlar (2, 4): \(x_2, x_4\)serbest değişkenler.

8.5 Özel Çözümler — Serbest Değişkene 1 Ver

\(U\)’dan iki denklem (sağ taraf 0):

\[ x_1 + 2x_2 + 2x_3 + 2x_4 = 0, \quad 2x_3 + 4x_4 = 0 \]

Strateji: serbest değişkenlere değer ata, pivot değişkenleri geri yerine koy.

Özel çözüm 1: \(x_2 = 1, x_4 = 0\)\(x_3 = 0\)\(x_1 = -2\).

\[ \mathbf{s}_1 = \begin{pmatrix} -2 \\ 1 \\ 0 \\ 0 \end{pmatrix} \]

(Anlamı: \(-2\mathbf{c}_1 + \mathbf{c}_2 = \mathbf{0}\)\(\mathbf{c}_2 = 2\mathbf{c}_1\).)

Özel çözüm 2: \(x_2 = 0, x_4 = 1\)\(x_3 = -2\)\(x_1 = 2\).

\[ \mathbf{s}_2 = \begin{pmatrix} 2 \\ 0 \\ -2 \\ 1 \end{pmatrix} \]

Tam null uzayı:

\[ N(A) = c_1 \mathbf{s}_1 + c_2 \mathbf{s}_2, \quad c_1, c_2 \in \mathbb{R} \]

\(\mathbb{R}^4\) içinde 2 boyutlu alt-uzay.

8.6 n − r Formülü

\[ \boxed{\text{serbest değişken sayısı} = n - r} \]

Örnekte \(n = 4, r = 2 \to 2\) özel çözüm. Rank-nullity teoremi:

\[ \dim N(A) + \text{rank}(A) = n \]

import numpy as np
from sympy import Matrix

A = np.array([[1, 2, 2, 2], [2, 4, 6, 8], [3, 6, 8, 10]], dtype=float)
print("rank =", np.linalg.matrix_rank(A))      # 2

R, pivots = Matrix(A).rref()
print("rref R =")
print(R)
print("pivot kolonlar:", pivots)                # (0, 2)

ns = Matrix(A).nullspace()
print("özel çözümler:")
for v in ns: print(v.T)

8.7 Reduced Row Echelon Form (rref) R

\(U\)’dan iki ek işlem:

  1. Pivotların üstünü de temizle.
  2. Her pivotu 1 yap.

\(r_2 / 2 \to (0, 0, 1, 2)\). \(r_1 - 2 r_2 \to (1, 2, 0, -2)\):

\[ R = \begin{pmatrix} 1 & 2 & 0 & -2 \\ 0 & 0 & 1 & 2 \\ 0 & 0 & 0 & 0 \end{pmatrix} \]

Pivot kolonlarda (1, 3) birim matris. Serbest kolonlar (2, 4) “serbest” bilgiyi taşır.

8.8 Null Uzayı Matrisi — \(N = \begin{pmatrix} -F \\ I \end{pmatrix}\) Kalıbı

\(R\)’yi pivot ve serbest kolonlara ayır:

\[ I = \begin{pmatrix} 1 & 0 \\ 0 & 1 \end{pmatrix}, \quad F = \begin{pmatrix} 2 & -2 \\ 0 & 2 \end{pmatrix} \]

\(R\mathbf{x} = \mathbf{0}\) → (pivot değişkenler) + \(F \cdot\) (serbest) = 0 → pivot = \(-F \cdot\) serbest. Serbest tarafa \(I\) koyarsan, pivot tarafa \(-F\) gelir:

\[ N \text{ matrisi} = \begin{pmatrix} -F \\ I \end{pmatrix} = \begin{pmatrix} -2 & 2 \\ 0 & -2 \\ 1 & 0 \\ 0 & 1 \end{pmatrix} \]

(Satırlar pivot+serbest sırasında dizilir.) Daha önce elle bulduklarımızla aynı.

8.9 rank(A) = rank(Aᵀ)

\(A^T\) (\(4 \times 3\)) için aynı algoritmayı uygula → 2 pivot çıkar. Satır rank = kolon rank — boyut teorisinin köşe taşı.

“The number of pivot columns for A and A transpose are the same.” — Strang, 37:11

8.10 Bu Dersin Özeti

  1. Eliminasyon null uzayını korur.
  2. Echelon \(U\), rank \(r\) = pivot sayısı.
  3. Pivot / serbest kolonlar.
  4. Özel çözümler: serbest = 1, diğerleri = 0.
  5. \(n - r\) serbest değişken (rank-nullity).
  6. rref \(R\) → null uzayını doğrudan okutur.
  7. \(N = \binom{-F}{I}\) kalıbı.
  8. \(\text{rank}(A) = \text{rank}(A^T)\).
ÖnemliTek bir cümle

\(A\mathbf{x} = \mathbf{0}\)’ı çözmek artık algoritma: \(U\)’ya in, rank \(r\)’yi bul, \(n - r\) serbest değişkenin her birine sırayla 1 ver, özel çözümleri üret. \(N(A)\) = bu özel çözümlerin tüm kombinasyonları.

8.11 Kontrol Soruları

\(r_2 - 2 r_1\):

\[ U = \begin{pmatrix} 1 & 2 & 1 \\ 0 & 0 & 1 \end{pmatrix} \]

Rank = 2. Pivot kolonlar: 1, 3. Serbest: 2. Serbest değişken sayısı \(n - r = 1\).

\(x_2 = 1\)\(x_3 = 0\)\(x_1 + 2 = 0 \to x_1 = -2\).

\[ \mathbf{s} = (-2, 1, 0)^T, \quad N(A) = c(-2, 1, 0)^T \]

\(\mathbb{R}^3\)’te orijinden geçen doğru. (\(\mathbf{c}_2 = 2\mathbf{c}_1\).)

  • rank = 3: \(n - r = 0\)\(N(A) = \{\mathbf{0}\}\). Tek çözüm \(\mathbf{x} = \mathbf{0}\); matris tersinir.
  • rank = 2: \(n - r = 1\)\(N(A)\) bir boyutlu (doğru). Matris singular.

Özet: tam rank \(\iff\) \(N(A) = \{\mathbf{0}\}\) \(\iff\) tersinir.

\(r < n\)\(n - r > 0\) serbest yön. \(W\) \(n\) boyutlu girdiyi \(r\) boyuta indiriyor; \(n - r\) boyut kaybı.

  • Bu yönlerdeki parametreler çıktıyı etkilemiyor → fazlalık.
  • \(W \approx UV^T\) (\(r\)-rank) daha az parametreyle aynı → LoRA.
  • Eğitimde bazı yönlerde kayıp düz → regularization belirler.

Kısaca: “\(r < n\) = model göründüğünden küçük dönüşüm yapıyor.”

8.12 Egzersizler

Egzersiz 1. \(A = \begin{pmatrix} 1 & 2 & 0 & 1 \\ 0 & 0 & 1 & 2 \\ 1 & 2 & 1 & 3 \end{pmatrix}\) → echelon, rank, pivot/serbest kolonlar, iki özel çözüm.

Egzersiz 2. \(A = \begin{pmatrix} 1 & 2 & 3 \\ 2 & 4 & 8 \end{pmatrix}\) → tam rref \(R\) ve null uzayı matrisi \(\binom{-F}{I}\).

Egzersiz 3. \(3 \times 5\) matris, rank 3. Kaç özel çözüm? \(N(A)\) hangi \(\mathbb{R}^k\)’de, kaç boyutlu?

Egzersiz 4. (Python)

import numpy as np
from sympy import Matrix

A = np.array([[1, 2, 2, 2], [2, 4, 6, 8], [3, 6, 8, 10]], dtype=float)
print("rank =", np.linalg.matrix_rank(A))
R, p = Matrix(A).rref()
print("rref R =\n", R, "\npivot kolonlar:", p)
print("özel çözümler:")
for v in Matrix(A).nullspace(): print(v.T)

Egzersiz 5. İspatla: \(A\) (\(m \times n\)), rank \(r\)\(N(A)\) boyutu \(n - r\). \(n > m\) ise \(N(A) \neq \{\mathbf{0}\}\) (sıfırdan farklı çözüm hep var). Bu, Ders 8 ve ML’de aşırı-parametrizasyonun temeli.

8.13 Sonraki Ders İçin Hazırlık

Ders 8: \(A\mathbf{x} = \mathbf{b}\) Çözme — Tam Çözüm ve Rank

  • Sağ taraf sıfırdan farklı: çözülebilirlik testi (\(\mathbf{b} \in C(A)\)).
  • Tam çözüm = özel çözüm \(\mathbf{x}_p\) + \(N(A)\).
  • Augmented matris \([A \mid \mathbf{b}]\) ile eliminasyon.
  • Rank’in çözüm sayısına etkisi (0, 1, \(\infty\)).
UyarıDers 8 öncesi
  • Egzersizleri çöz, özellikle 5 (rank-nullity ispat).
  • sympy.Matrix(A).rref() ve .nullspace() ile birkaç matris dene.
  • Ana cümleyi tekrar oku.

8.14 Anahtar Kavramlar (Cheat Sheet)

Kavram Tanım Strang’da
Eliminasyon null’ı korur \(A\mathbf{x} = \mathbf{0}\) çözümleri değişmez 2m42
Echelon \(U\) Dikdörtgen eliminasyon merdiveni 6m12
Rank \(r\) Pivot sayısı 6m44
Pivot/serbest kolon Pivotlular pivot, kalanlar serbest 8m04
Serbest değişken İstediğin değeri verirsin (\(n-r\) tane) 8m43
Özel çözüm Serbest = 1, diğerleri = 0 15m05
\(n - r\) formülü Serbest = özel çözüm sayısı 17m28
rref \(R\) Pivot 1, üst/alt 0 19m25
\(N\) matrisi \(\binom{-F}{I}\) kalıbı 30m54
rank(A) = rank(Aᵀ) Satır rank = kolon rank 37m11

8.15 ML Bağlantıları Özeti

İpucu7 köprü
  1. Rank = gerçek bilgi boyutumatrix_rank; düşük rank → LoRA.
  2. Serbest değişkenler = serbestlik dereceleri → Aşırı-parametrize ağların sonsuz çözümü.
  3. Özel çözümler = null bazınull_space, dönüşümün kör yönleri.
  4. rref / Gauss → Her solver’ın içi; “singular matrix” uyarılarını anlama.
  5. \(n > m\)\(N(A) \neq \{\mathbf{0}\}\) → Parametre > veri rejimi; derin öğrenme.
  6. Rank-nullity → Modelin gerçek serbestlik dereceleri.
  7. rank(A) = rank(Aᵀ) → Boyut teorisinin köşe taşı.
ÖnemliTek bir şey alıp gideceksen

\(A\mathbf{x} = \mathbf{0}\) artık tahmin değil, algoritma: \(U\)’ya in, rank \(r\) bul, \(n - r\) serbest değişkenin her birine sırayla 1 ver, özel çözümleri üret. \(N(A)\) = bu özel çözümlerin tüm kombinasyonları; rank, matrisin tüm karakterini özetleyen tek sayı.