4.5.1 Stabile Verteilungen Definition 4.27: Nenne reelle Zufallsvariable X und ihre Verteilung stabil, wenn positive Linearkombinationen von unabhängigen Kopien von X Verteilung haben, die sich durch Verschieben und Skalieren der Verteilung von X ergibt. Genauer: Seien X1 , . . . , Xd unabhängige Kopien von X , a1 , . . . , ad ∈ R+ , dann sollen c ∈ R+ und d ∈ R existieren, sodass a1 X1 + · · · + ad Xd ∼ cX + d, wobei Z ∼ Z ′ bedeutet, dass Z und Z ′ identisch verteilt. 399 Für uns entscheidende Eigenschaft: Satz und Definition 4.28: Die Zufallsvariable X habe eine stabile Verteilung mit symmetrischer Dichtefunktion und X1 , . . . , Xd seien unabhängige Kopien von X . Dann gibt es ein p ∈ (0, 2], sodass für beliebige a = (a1 , . . . , ad ) ∈ Rd gilt: a1 X1 + · · · + ad Xd ∼ kakp · X , P 1/p d p . wobei kakp = |a | i=1 i Nenne dann Verteilung p-stabil. Analoge allgemeinere Aussage (mit komplizierterer rechter Seite) für gewichtete Summen beliebiger stabiler Verteilungen. 400 Beispiele für stabile Verteilungen: • Normalverteilung: 2-stabil. fN (x) = √ 1 2π σ ·e − 12 x−µ 2 σ 0.4 0.3 0.2 0.1 , x ∈ R. • Cauchyverteilung: 1-stabil. fC (x) = fL (x) = x > δ. γ 1 · 2π (x − δ)3/2 exp 2 4 0.4 0.3 0.2 0.1 1 γ , x ∈ R. · 2 π γ + (x − δ)2 • Lévyverteilung: 1/2-stabil. 0 –4 0 –4 2 4 0.4 −γ 2(x − δ) , 0.2 0 1 2 3 4 Diese und x 7 → fL (−x) einzige stabile Verteilungen mit bekannter geschlossener Form. 401 Eigenschaften stabiler Verteilungen: • Für p ∈ (0, 2) gilt: p-stabile Verteilung ist approximativ Potenzgesetzverteilung mit Exponent 1 + p: Dichtefunktion sei f , dann existiert c > 0, sodass f (x)/ cx −(1+p) → 1 für x → ∞. Damit Skaleninvarianz und heavy tails“. ” • Für 1 < p < 2 existiert Erwartungswert, aber Varianz nicht. • Für p ≤ 1 existiert weder Erwartungswert, noch Varianz. (Ohne Beweise.) 402 Simulation von stabilen Verteilungen: Für Normalverteilung: Box-Muller-Verfahren. Allgemeines Verfahren: Sei F invertierbare Verteilungsfunktion. • Wähle U ∈ [0, 1] zufällig gleichverteilt. • Ausgabe F −1 (U). Korrektheit klar: Pr{F −1 (U) ≤ x} = Pr{U ≤ F (x)} = F (x). 403 Simulation von stabilen Verteilungen (Forts.): Beispiel: Normalisierte Cauchyverteilung 1 1 , · π 1 + x2 Verteilungsfunktion F (x) = arctan(x)/π + 1/2. Dichte f (x) = Damit: F −1 (y ) = tan(π(y − 1/2)), y ∈ (0, 1). Für Implementierung Approximation mit endlicher Genauigkeit (Standard-Numerik-Tricks, Taylorreihen. . . ). 1 0.8 0.6 0.4 0.2 –4 –2 0 2 4 404 Simulation von stabilen Verteilungen (Forts.): Allgemein gilt: Satz 4.29: Seien U1 und U2 über [0, 1] gleichverteilte, unabhängige Zufallsvariablen. Dann ist für p ∈ (0, 2] die im Folgenden definierte Zufallsvariable S(U1 , U2 , p) p-stabil. Sei θ := π(U1 − 1/2) und sin(pθ ) cos(θ (1 − p)) (1−p)/p , p 6 = 1; − ln U2 S(U1 , U2 , p) := (cos θ )1/p tan θ, p = 1. Für Cauchyverteilung bewiesen, ansonsten hier nicht. Für p = 2 Formel wie beim Box-Muller-Verfahren. 405 4.5.2 Randomisierte Projektionen Wichtiges positives Ergebnis für L2 -Norm: Satz 4.30 (Johnson-Lindenstrauss-Lemma, 1984): Gegeben Punkte v1 , . . . , vn in Rd und ε > 0. Dann existiert approximative metrische Einbettung in Rk mit relativem Fehler ε, d. h., ve1 , . . . , ven ∈ Rk mit (1 − ε)kvi − vj k2 ≤ kvei − vej k2 ≤ (1 + ε)kvi − vj k2 und k = O 1/ε2 log n . Und: Kann das auch noch effizient berechnen. . . 406 Realisierung durch randomisierte Projektionen: • Benutze k × d-Matrix X mit zufälligen Einträgen. Einträge unabhängig voneinander. • Einbettung: 1 v 7 → ve := √ Xv . k (Projektion auf den k -dimensionalen Unterraum in Rn , der von den Zeilen von X aufgespannt wird.) Wie Einträge von X wählen? 407 Wahl der Matrix X für randomisierte Projektion: • Klassisch: Einträge gemäß N(0, 1)-Verteilung. (Vgl. SimHash-Verfahren.) • Diskret & effizient: Einträge gleichverteilt aus {−1, 1}. (Vgl. praktisches SimHash-Verfahren, F2 -Algorithmus.) Kann zeigen: Satz 4.31: Sei β, ε > 0. Sei X eine randomisierte Matrix wie oben beschrieben. Dann ist Fehlerschranke in JL-Lemma mit Wahrscheinlichkeit 1 − 1/nβ erfüllt für k = 2 β/ε2 log n . 408 Strategie für Beweis (Fall k = 1): Gemäß Satz 4.28 für Zufallsvektor X , Komponenten unabhängig gemäß 2-stabiler Verteilung N(0, 1): E hX , v i2 = E kv k22 · N(0, 1)2 = kv k22 · E N(0, 1)2 = kv k22 . | {z } =1 Für Gleichverteilung auf {−1, 1} dasselbe, Beweis siehe Analyse F2 -Algorithmus R AND P ROJECT. Zeige nun weiter, dass sogar starke Konzentration um Erwartungswert gilt (exponentielle Verbesserung des Fehlers in spendierter Anzahl Dimensionen). Bemerkung: In schwächerer Form bei F2 -Algorithmus gesehen. Für Ergebnis hier bessere Analyse wie bei Beweis der Chernoff-Schranken erforderlich. 409 Randomisierte Projektionen für beliebige k · kp mit p ∈ (0, 2): Nur für Spezialfall k = 1. Wieder zufälliger Vektor X ∈ Rd , Komponenten unabhängig gemäß p-stabiler Verteilung D. Gemäß Satz 4.28: hX , v i ∼ kv kp · D. Problem für Anwendung bei Dimensionsreduktion: • Eventuell ist Erwartungswert oder Varianz unendlich. Abhilfe später: Erwartungswert → Median. • Kann für p = 1, L1 -Norm, zeigen: Jede approximative Einbettung mit konstantem Fehler benötigt k = n(1) Dimensionen. 410 4.6 Abstandsmaße Problem: Gegeben Datenströme a, b, bestimme Abstand von a, b. Motivation: • Vergleich von Datenverkehr verschiedener Router; • Datenpakete, die in Teilnetz verloren gegangen sind; • Aufspüren von DoS-Angriffen (SYN- vs. ACK-Pakete); • Aufspüren von Duplikaten in Webcrawl; • Konsistenz von Datenbanken. 411 Allgemeines Normproblem: Datenstrom a = (a1 , . . . , an ) beschreibt Vektor v = (v1 , . . . , vm ) ∈ Rm implizit: • Zu Anfang v = (0, . . . , 0). • Für Datum a i = (b, d) mit b ∈ {1, . . . , m} und d ∈ R: Addiere d zu b-ter Komponente von v . Beispiel: a = (3, 4) (1, 2) (3, 1) (3, −5) (1, 1) (5, 8) (2, −2) → v = (3, −2, 0, 0, 8). Will: Norm von v . 412 Allgemeines Normproblem (Forts.): Spezialfälle des allgemeinen Problems: • Abstand von Datenströmen: Eingabeströme seien a = ((i1 , x1 ), . . . , (ina , xna )) und b = ((j1 , y1 ), . . . , (jnb , ynb )). Betrachte durch Verschmelzen entstehenden Strom ((i1 , x1 ), . . . , (ina , xna ), (j1 , −y1 ), . . . , (jnb , −ynb )). • Problem, wo zu jeder Zeit v1 , . . . , vm ≥ 0. Algorithmen erhalten dies als Versprechen“ und ” müssen nur korrekt arbeiten, wenn Versprechen erfüllt (Promise-Problem). • Problem wo alle Updates nichtnegativ. • Problem wo alle Updates +1: Häufigkeitsmomente. 413 Definition 5.1: Sei U = {1, . . . , m} × {−w , . . . , w }, aP = (a1 , . . . , an ) ∈ U n . Für i ∈ {1, . . . , m} definiere fi∗ (a) := j : a j =(i,b) b. Für k ∈ R+ 0 ist das Lk -Norm-Problem: m X 1/k ∗ ∗ ∗ k Lk (a) := k(f1 (a), . . . , fm (a))kk = , |fi | i=1 falls k > 0 und für k = 0: L0 (a) := k(f1∗ (a), . . . , fm∗ (a))k0 := m X i=1 [fi∗ 6 = 0]. Außerdem: L∞ (a) := k(f1∗ (a), . . . , fm∗ (a))k∞ = max |fi∗ (a)|. 1≤i≤m Lk -Abstandsproblem für Datenströme a, b und k ∈ R+ 0 ∪ {∞}: Lk (a, b) := k(f1∗ (a), . . . , fm∗ (a)) − (f1∗ (b), . . . , fm∗ (b))kk . 414 4.6.1 Sketching-Algorithmus für L2 Für Häufigkeitsmomente: • Datenstrom a = (a1 , . . . , an ) mit a i ∈ {1, . . . , m}n . • Y := m X i=1 • Ausgabe fi X i = Y 2. m X X Xi. i=1 j : a j =i Hier: • Datenstrom a = (a1 , . . . , an ) mit a i = (b i , d), bi ∈ {1, . . . , m}, d ∈ {−w , . . . , w }. m m X X X ∗ e • Y := fi X i = d · Xi. i=1 • Ausgabe q i=1 j : b j =i e 2. Y 415 Benutze selbe Notation wie in Abschnitt 4.4.3. Insbesondere für zufälligen Startbitvektor S: h1 (S), . . . , hm (S) 4-fach unabhängige Zufallsvariablen. Algorithmus R AND P ROJECT für L2 : Intialisierung: Für ℓ := ⌈log m⌉ wähle S ∈ {0, 1}ℓ zufällig gleichverteilt und wähle irreduzibles Polynom über F2 vom Grad ℓ. Setze x := 0. Update für a = (b, d) ∈ U = {1, . . . , m} × {−w , . . . , w }: x := x + d · hb (S). Ausgabe: √ y = x 2. 416 Satz 5.2: Sei δ > 0 und 0 < ε ≤ 1. Dann liefern r = 2 (1/ε2 ) log(1/δ) Kopien des Algorithmus R AND P ROJECT eine (ε, δ)Approximation von L2 . Dies stellt 1-Runden-Datenstrom algorithmus dar mit Speicherplatz O r (log m + log(nw )) und Zeit pro Update O r (log m polyloglog m + log(nw )) . Beweis: Ressourcen: Wie für F2 , nur jetzt x ∈ {−nw , . . . , nw }. Damit Term O(log(nw )) in Platz / Zeit pro Element. 417 Fehleranalyse: Alter Beweis gültig für beliebige reelle Vektoren anstelle von (f1 , . . . , fm ), insbesondere auch für (f1∗ , . . . , fm∗ ) (benutze weder spezielle Definition noch Nichtnegativität). e := P f ∗ Xi mit Wahrscheinlichkeit Damit gilt für Y i i mindestens 7/9: e 2 ≤ (1 + ε)L2 . (1 − ε)L22 ≤ Y 2 Es folgt (für ε ≤ 1): √ e| (1 − ε)L2 ≤ 1 − ε · L2 ≤ Y = |Y √ ≤ 1 + ε · L2 ≤ (1 + ε)L2 . Behauptung mit Probability-Amplification wie immer. 418 4.6.2 Sketching-Algorithmus für L1 Arbeiten: Indyk (2000, 2006). Idee: Sei v ∈ Rd und X = (X1 , . . . , Xd ) ∈ Rd zufällig, Komponenten unabhängige Kopien von cauchyverteilter Zufallsvariable C. Cauchyverteilung ist 1-stabil. Gemäß Satz 4.28: hX , v i ∼ kv k1 · C. Problem: EC = ∞. Daher Erwartungswert → Median. 419 Definition 5.3: Sei X eine reelle Zufallsvariable gemäß einer W-Verteilung mit invertierbarer Verteilungsfunktion F : R → [0, 1]. Dann ist der Median von X (bzw. der zugehörigen Verteilung) definiert als med(X ) := F −1 (1/2). Beobachtung 5.4: Sei a ∈ R+ , X Zufallsvariable, dann gilt med(a · X ) = a · med(X ). 420 Beziehung Median von Verteilungen ↔ Median von Stichproben gemäß dieser Verteilung: Satz 5.5: Sei X Zufallsvariable mit stetiger Dichtefunktion und streng monoton wachsender Verteilungsfunktion F , für die die Ableitung von F −1 auf einem Intervall [1/2 − γ , 1/2 + γ ] mit 0 < γ < 1/2 durch d > 0 nach oben beschränkt ist. Sei m der Median dieser Verteilung. Dann gibt es ein c > 0, sodass für beliebige ε, δ mit 0 < ε ≤ γ d, δ > 0 und n ≥ c log(1/δ)/ε 2 unabhängige Kopien X1 , . . . , Xn von X gilt: Pr | med(X1 , . . . , Xn ) − m| ≤ ε ≥ 1 − δ. Konzentrationsergebnis analog zu Ergebnissen für Erwartungswert (Chernoff für diskreten Fall, Gesetz der großen Zahlen für kontinuierlichen Fall). 421 Im Folgenden: Cauchyverteilung“ → Dichte x 7 → 1/π · 1/ 1 + x 2 . ” Lemma 5.6: Sei C cauchyverteilte Zufallsvariable. Dann gilt med(|C|) = 1. Beweis: Dichte von |C| ist f (x) = 2/π · 1/ 1 + x 2 für x ∈ R+ 0, Verteilungsfunktion: Z x 2 arctan x. f (t)dt = F (x) = π −∞ Da tan(π/4) = 1 ist, folgt F (1) = 1/2 und damit auch med(|C|) = 1. 422