¿Es "proyección aleatoria" estrictamente hablando no una proyección?


10

Las implementaciones actuales del algoritmo de proyección aleatoria reducen la dimensionalidad de las muestras de datos al mapearlas de Rd a Rk usando una matriz de proyección d×kR cuyas entradas son iid de una distribución adecuada (por ejemplo, de N(0,1) ):

x=1kxR

Convenientemente, existen pruebas teóricas que muestran que este mapeo conserva aproximadamente las distancias por pares.

Sin embargo, recientemente encontré estas notas donde el autor afirma que este mapeo con una matriz aleatoria no es una proyección en el sentido estrictamente algebraico lineal de la palabra (página 6). De las explicaciones dadas allí, esto se debe a que las columnas de R no son estrictamente ortogonales cuando sus entradas se eligen independientemente de N(0,1) . Por lo tanto, las versiones anteriores de RP donde se aplicaba la ortogonalidad de las columnas de R pueden considerarse como una proyección.

¿Puede proporcionar una explicación más detallada de (1) cuál es la definición de una proyección en este sentido estricto y (2) por qué no es una proyección RP bajo esta definición?


1
Puede encontrar respuestas a (1) buscando en nuestro sitio . La aserción (2) es inmediata porque si las columnas siempre fueran ortogonales, sus entradas no podrían ser independientes.
whuber

Respuestas:


4
  1. ¿Cuál es la definición de una proyección en este sentido estricto (algebraico lineal) (de la palabra)

    https://en.wikipedia.org/wiki/Projection_(linear_algebra)

    En álgebra lineal y análisis funcional, una proyección es una transformación lineal P desde un espacio de vector a sí mismo que tales P2=P . Es decir, cuando P se aplica dos veces a cualquier valor, da el mismo resultado que si se aplicara una vez (idempotente).

    Para la proyección ortogonal o la proyección vectorial, tiene eso

    https://en.wikipedia.org/wiki/Projection_(linear_algebra)

    Una proyección ortogonal es una proyección para la cual el rango U y el espacio nulo V son subespacios ortogonales.

  2. ¿Por qué no es RP una proyección bajo esta definición?

    Michael Mahoney escribe en sus notas de clase que depende de cómo se construya el RP , si el RP es o no una proyección en el sentido algebraico lineal tradicional. Esto lo hace en los puntos tercero y cuarto:

    Tercero, si los vectores aleatorios fueran exactamente ortogonales (como en realidad estaban en las construcciones JL originales), entonces tendríamos que la proyección JL era una proyección ortogonal

    ...

    pero aunque esto es falso para los gaussianos, las variables aleatorias {±} y la mayoría de las otras construcciones, se puede demostrar que los vectores resultantes tienen aproximadamente una longitud unitaria y aproximadamente ortogonales

    ...

    esto es "suficientemente bueno".

    Por lo tanto, podría hacer, en principio, la proyección aleatoria con una construcción diferente que se limita a las matrices ortogonales (aunque no es necesario). Ver por ejemplo el trabajo original:

    Johnson, William B. y Joram Lindenstrauss. "Extensiones de mapeos de Lipschitz en un espacio de Hilbert". Matemáticas contemporáneas 26.189-206 (1984): 1.

    ... si uno elige al azar una proyección ortogonal de rango k en l2n

    ...

    Qkl2nσO(n)l2n

    f:(O(n),σ)L(l2n)
    f(u)=UQU
    k

    La entrada de wikipedia describe la proyección aleatoria de esta manera (lo mismo se menciona en las notas de clase en las páginas 10 y 11)

    https://en.wikipedia.org/wiki/Random_projection#Gaussian_random_projection

    Sd1

    Pero generalmente no obtienes esta ortogonalidad cuando tomas todas las entradas de matriz en la matriz variables aleatorias e independientes con una distribución normal (como Whuber mencionó en su comentario con una consecuencia muy simple "si las columnas siempre fueran ortogonales, sus entradas podrían no ser independiente ").

    RP=RTRb=RTxx=Rb=RTRxRTR

    P=RTRU

    range(PTP){0,1}

    PRP=RTRR

    Entonces, la proyección aleatoria de diferentes construcciones, como el uso de entradas aleatorias en la matriz, no es exactamente igual a una proyección ortogonal. Pero es computacionalmente más simple y, según Michael Mahoney, es "lo suficientemente bueno".


1
P=RRTRRd×kN(0,1)P2=PP{0,1}RRRTR

1
@ DanielLópez lo he actualizado.
Sextus Empiricus

6

Eso es correcto: "proyección aleatoria" es estrictamente hablando, no una proyección.

PP2=P

d×kRkd

Rd×kU


3
En su último párrafo dice que si las columnas son ortonormales, entonces la proyección todavía no es una proyección en el sentido de una proyección en álgebra lineal. Sin embargo, esto es solo porque la matriz no es una matriz cuadrada. Esto se debe más a la notación que al principio. Si extiende la matriz con ceros, entonces la matriz es una proyección lineal.
Sextus Empiricus

1
@MartijnWeterings No, no lo creo. Tome el espacio 2D y U que es 1x2 y se ve así: [sqrt (2) / 2, sqrt (2) / 2] (correspondiente a la proyección en la diagonal). Ahora extiéndelo con ceros. No será igual a sí mismo al cuadrado.
ameba

1
Debería extenderse de otra manera, se puede hacer
kjetil b halvorsen

2
R(RTR)1RTIUP2=P
Sextus Empiricus

2
R

1

d×kRRxRdR

p=xR(RTR)1RTpRd

RRTR=IRk×kxR

p=xRRTpRd

RRTRd×d(RRT)2=RRTRRT=RRT

RRkRdxRdxRRTRRRT

Le agradecería que pudiera confirmar / corregir mi razonamiento aquí.

Referencia:

[1] http://www.dankalman.net/AUhome/classes/classesS17/linalg/projections.pdf


1
R(RTR)1RT

1
RRTR

2
R(RTR)1RT(RTR)1RTRTRTβ=(RTR)1RTyβy^=R(RTR)1RTyβ

-1

Si utiliza el cambio de signo aleatorio o la permutación antes de la transformación Fast Walsh Hadamard, la proyección aleatoria es ortogonal.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.