Rn⟨⋅,⋅⟩mv1,v2,…,vmx∈Rnmin i ⟨ x , v i ⟩ mini⟨x,vi⟩O ( n m )O(nm) n = 2 n=2O ( conecto 2 m )O(log2m)
Lo único que se me ocurre es lo siguiente. Es una consecuencia inmediata del lema de Johnson-Lindenstrauss que por cada y una distribución \ mathcal {D} en \ mathbb {R} ^ n hay un mapeo lineal f \ colon \ mathbb {R} ^ n \ to \ mathbb {R} ^ {O (\ log m)} (que puede evaluarse en tiempo O (n \ log m) ) de modo que \ mathrm {Pr} _ {x \ sim \ mathcal {D}} \ left [ \ forall i \ quad \ langle x, v_i \ rangle - \ varepsilon (\ | x \ | + \ | v_i \ |) ^ 2 \ leq \ langle f (x), f (v_i) \ rangle \ leq \ langle x , v_i \ rangle + \ varepsilon (\ | x \ | + \ | v_i \ |) ^ 2 \ right] \ geq 1 - \ varepsilon . Entonces, en el tiempo O ((n + m) \ log m) podemos calcularε > 0 ε>0D DR nRn f : R n → R O ( log m )f:Rn→RO(logm)O ( n log m ) O(nlogm)P r x ∼ D [ ∀ i⟨ X , v i ⟩ - ε ( ‖ x ‖ + ‖ v i ‖ ) 2 ≤ ⟨ f ( x ) , f ( v i ) ⟩ ≤ ⟨ x , v i ⟩ + ε ( ‖ x ‖ + ‖ v i ‖ ) 2 ] ≥ 1 - ε O ( ( nPrx∼D[∀i⟨x,vi⟩−ε(∥x∥+∥vi∥)2≤⟨f(x),f(vi)⟩≤⟨x,vi⟩+ε(∥x∥+∥vi∥)2]≥1−ε+ m ) log m )O((n+m)logm)algo que en cierto sentido está cerca de min i ⟨ x , v i ⟩mini⟨x,vi⟩ para la mayoría de las Xx '(al menos si las normas ‖ X ‖∥x∥ y ‖ V i ‖∥vi∥ son pequeñas).
UPD El límite mencionado anteriormente se puede agudizar un poco al tiempo de consulta O ( n + m )O ( n + m ) si usamos hashing local. Más precisamente, elegimos k : = O ( 1ε 2 )k : = O ( 1ε2) vectores gaussianos independientes r 1 , r 2 , … , r kr1, r2, ... , rk . Luego asignamos R nRnorte a { 0 , 1 } k{ 0 , 1 }k siguiente manera: v ↦ ( ⟨ r 1 , v ⟩ ≥ 0 , ⟨ r 2 , v ⟩ ≥ 0 , ... , ⟨ r k , v ⟩ ≥ 0 )v ↦ ( ⟨ r1,v⟩≥0,⟨r2,v⟩≥0,…,⟨rk,v⟩≥0) . Luego podemos estimar el ángulo entre dos vectores dentro de un error aditivo εε calculando ℓ 1ℓ1 -distancia en la imagen de este mapeo. Por lo tanto, podemos estimar productos puntuales dentro de un error aditivoε ‖ x ‖ ‖ v i ‖ε∥x∥∥vi∥en O ( 1ε 2 )O(1ε2) tiempo.