Die Walsh-Hadamard-Transformation (WHT) ist eine Verallgemeinerung der Fourier-Transformation und eine orthogonale Transformation eines Vektors mit reellen oder komplexen Zahlen der Dimension . Die Transformation ist im Quantencomputer sehr beliebt, wurde aber kürzlich als eine Art Vorkonditionierer für zufällige Projektionen hochdimensionaler Vektoren für den Beweis des Johnson-Lindenstrauss-Lemmas untersucht. Ihr Hauptmerkmal ist , dass , obwohl es ein Quadrat ist Matrix, kann es zu einem Vektor in der Zeit angewendet werden (eher als ) durch eine FFT-ähnliche Verfahren.
Angenommen, der Eingabevektor ist spärlich : Er enthält nur wenige Einträge ungleich Null (z. B. ). Gibt es eine Möglichkeit, die WHT in der Zeit so zu berechnen dass und für ?
Hinweis: Diese Anforderungen sind nur eine Möglichkeit, die Idee zu formalisieren, dass ich etwas möchte, das schneller als für kleine läuft .
quelle
Antworten:
Beispiel:
d = 4.
WHT H ist
Eine beliebige Anzahl von Spalten ist 00 und 10 (ganz links und zwei darüber):
Zeilenblöcke sind
und
quelle