Spärliche Walsh-Hadamard-Transformation

15

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.d=2md×dÖ(dLogd)d2

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 ?rdf(r,d)f(d,d)=Ö(dLogd)f(r,d)=Ö(dLogd)r=Ö(d)

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 .dLogdr

Suresh Venkat
quelle
Ich bin mir sicher, dass Sie die folgenden zwei einfachen Beobachtungen kennen, aber ich werde sie trotzdem für andere Leser aufschreiben: (1) Eine einfache Multiplikation ergibt O (rd) Zeit. Es ist nur dann besser als O (d log d), wenn r = o (log d) ist. (2) Auch wenn der Eingabevektor dünn ist, ist die Ausgabe im Allgemeinen nicht dünn. Dies bedeutet, dass wir nicht hoffen können, dass f (r, d) auch für r = 1 o (d) ist.
Tsuyoshi Ito
4
Wissen Sie, wie die Antwort auf dieselbe Frage für die Fourier-Transformation lautet?
Robin Kothari
Tsuyoshi: Ja, mir ist (1) bewusst, und genau das geschieht für Anwendungen, die dies benötigen. wie für (2) ist das auch wahr. Robin, das ist ein guter Punkt - ich weiß über nichts für die FT Bescheid, und in der Tat könnte dies ein guter Ort sein, um mit dem Graben zu beginnen.
Suresh Venkat
Es stellte sich heraus, dass ich auf Wikipedia hätte graben sollen. Auf der FFT-Seite werden zwei Artikel erwähnt, die möglicherweise mit dem Problem der spärlichen Berechnung zusammenhängen.
Suresh Venkat

Antworten:

6

0x<d(-1)x,y

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

--
--

(ein,b)T(ein+b,0)T

++
+-

(ein,b)T(-ein-b,0)T

++
+-
Martin Strauss
quelle