Spezielle Matrizen -- Einheitsmatrix, Diagonalmatrix, symmetrische Matrix

Einige Matrixtypen treten in der KI häufig auf; sie haben spezielle Strukturen und Eigenschaften. Sie zu verstehen hilft dir, das Verhalten von Optimierern, die Effekte der Regularisierung und die Bedeutung von Datentransformationen schnell zu erfassen.

Einheitsmatrix I

Alle Einträge auf der Hauptdiagonale sind 1, alle anderen sind 0

Multiplikation mit einer beliebigen Matrix = unverändert

Entspricht der '1' bei Zahlen

Diagonalmatrix

Nur die Hauptdiagonale hat Werte

Jede Dimension wird unabhängig skaliert

Entspricht einem Audio-Equalizer

Symmetrische Matrix

Transponierte = sie selbst

Symmetrisch zur Hauptdiagonale

Alle Eigenwerte sind reell

Einheitsmatrix: Die '1' in der Mathematik

\[ \mathbf{I}_n = \begin{bmatrix} 1 & 0 & \cdots & 0 \\ 0 & 1 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & 1 \end{bmatrix} \]

Für jede Matrix A mit kompatibler Form: \( \mathbf{I}A = A \), \( A\mathbf{I} = A \).

Diagonalmatrix: Jede Dimension unabhängig skalieren

\[ \mathbf{D} = \text{diag}(d_1, d_2, \dots, d_n) = \begin{bmatrix} d_1 & 0 & \cdots & 0 \\ 0 & d_2 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & d_n \end{bmatrix} \]

Multiplikation einer Diagonalmatrix mit einem Vektor = unabhängiges Anwenden eines anderen Skalierungsfaktors auf jede Komponente des Vektors.

Symmetrische Matrix: Nach der Transposition immer noch sie selbst

\( \mathbf{A}^T = \mathbf{A} \), d. h., \( a_{ij} = a_{ji} \).

Eine symmetrische Matrix hat eine äußerst wichtige Eigenschaft:Alle Eigenwerte sind reell, und die Eigenvektoren sind zueinander orthogonal.

Dies macht symmetrische Matrizen äußerst nützlich in Optimierung und Statistik – Kovarianzmatrizen und Hesse-Matrizen sind beide symmetrisch.


Alltagsbeispiele

Einheitsmatrix: Die Operation, die nichts tut

Du öffnest ein Bild in PS, nimmst keine Änderungen vor und speicherst es direkt. Eingabe = Ausgabe.

Die Einheitsmatrix ist der mathematische Ausdruck dieses 'Nichts-Tuns'.

Diagonalmatrix: Audio-Equalizer

Jeder Schieberegler am Equalizer steuert unabhängig die Lautstärke eines Frequenzbands – hohe Frequenzen +3dB, tiefe Frequenzen -2dB, mittlere Frequenzen unverändert.

Jedes Band arbeitet unabhängig ohne Interferenz und wird separat skaliert. Das ist das Verhalten einer Diagonalmatrix.

Symmetrische Matrix: Spiegelung im Spiegel

Wenn du vor einem Spiegel stehst, entspricht deine linke Hand der Position deiner rechten Hand im Spiegelbild. Oben und unten bleiben unverändert; links und rechts sind vertauscht.

Eine symmetrische Matrix ist ähnlich – symmetrisch zur Hauptdiagonale, wobei Werte unverändert bleiben, nachdem sie über sie hinweg getauscht wurden.


Mathematische Definition

MatrixtypDefinitionsbedingungenBezeichnung
Einheitsmatrix\( I_{ii}=1, I_{ij}=0 \; (i \neq j) \)\( \mathbf{I}_n \)
Diagonalmatrix\( D_{ij}=0 \) wenn \( i \neq j \)diag(d₁,...,dₙ)
Symmetrische Matrix\( A_{ij} = A_{ji} \) für alle i,j\( \mathbf{A} = \mathbf{A}^T \)

Praktische Python-Übung

Beispiel

import numpy as np

# Einheitsmatrix
I = np.eye(3)
A = np.array([[4,7,2],[3,5,1],[6,8,9]])
print("I @ A == A:", np.allclose(I @ A, A))

# Diagonalmatrix: unabhängige Skalierung
D = np.diag([2, 3, 5])
v = np.array([1, 1, 1])
print("D @ [1,1,1] =", D @ v)  # [2, 3, 5]

# Symmetrische Matrix
S = np.array([[1,4,5],[4,2,6],[5,6,3]])
print("S ist symmetrisch:", np.allclose(S.T, S))
eigenvals = np.linalg.eigvals(S)
print("Alle Eigenwerte sind reell:", np.all(np.isreal(eigenvals)))

# Kovarianzmatrix ist von Natur aus symmetrisch
data = np.random.randn(100, 5)
cov = np.cov(data.T)
print("Kovarianzmatrix ist symmetrisch:", np.allclose(cov, cov.T))
I @ A == A: True
D @ [1,1,1] = [2 3 5]
S 对称: True
特征值全实数: True
协方差矩阵对称: True

Anwendungsszenarien in der KI

Adam-Optimierer = Adaptive Skalierung über Diagonalmatrix

Adam führt für jeden Parameter einen exponentiell gleitenden Durchschnitt v_t der quadrierten Gradienten und aktualisiert mit \( \theta_{t+1} = \theta_t - \eta \cdot m_t / \sqrt{v_t} \). Mathematisch skaliert \( 1/\sqrt{v_t} \) jede Parameterkomponente unabhängig — dies ist eine Diagonalmatrix multipliziert mit dem Gradientenvektor. Aktive Gradientenkomponenten haben eine reduzierte Lernrate, während inaktive Gradientenkomponenten eine verstärkte Lernrate haben.

Kovarianzmatrix für PCA

Der erste Schritt der PCA-Dimensionsreduktion: Berechne die Kovarianzmatrix \( \Sigma = X^TX/(n-1) \), nachdem die Daten zentriert wurden. Dies ist eine symmetrische Matrix (\Sigma_{ij} = \Sigma_{ji}), und ihre Eigenwerte sind alle reell. Die Eigenvektoren, die den größten k Eigenwerten entsprechen, sind die Hauptkomponentenrichtungen. Die PCA-Klasse in sklearn erledigt dies intern.

Identitätsinitialisierung für rekurrente neuronale Netze

Die rekurrenten Gewichtsmatrizen von RNNs und LSTMs werden oft als Identitätsmatrizen initialisiert. Dies stellt sicher, dass früh im Training verborgene Zustandsinformationen "unverändert" weitergegeben werden können, wodurch verhindert wird, dass Gradienten über Zeitschritte hinweg zu schnell abklingen. Diese Technik heißt IRNN (Identity RNN).

Xavier-/Glorot-Initialisierung

Die Xavier-Initialisierung wählt die Varianz der Gewichte sorgfältig so, dass die Varianz der Ausgabe jeder Schicht konsistent bleibt: \( Var(W) = 2/(n_{in} + n_{out}) \). Dies entspricht der Einschränkung der Diagonalmatrix (Varianz) aus einer Normalverteilung mit dieser Varianz.


Weitere Erweiterungen