La "proiezione casuale" non è strettamente una proiezione?


10

Le attuali implementazioni dell'algoritmo di proiezione casuale riducono la dimensionalità dei campioni di dati mappandoli da a usando una matrice di proiezione cui voci sono tratte da una distribuzione adatta (ad esempio da ):RdRkd×kRN(0,1)

x=1kxR

Convenientemente, esistono prove teoriche che dimostrano che questa mappatura preserva approssimativamente le distanze a coppie.

Tuttavia, recentemente ho trovato queste note in cui l'autore afferma che questa mappatura con una matrice casuale non è una proiezione nel senso algebrico lineare della parola (pagina 6). Dalle spiegazioni fornite qui, ciò è dovuto al fatto che le colonne di non sono strettamente ortogonali quando le sue voci sono scelte indipendentemente da . Pertanto, le versioni precedenti di RP in cui è stata applicata l'ortogonalità delle colonne di possono essere considerate una proiezione.RN(0,1)R

Potete fornire una spiegazione più dettagliata di (1) qual è la definizione di una proiezione in questo senso stretto e (2) perché RP non è una proiezione in base a questa definizione ?.


1
Puoi trovare le risposte a (1) cercando nel nostro sito . L'asserzione (2) è immediata perché se le colonne fossero sempre ortogonali, le loro voci non potevano essere indipendenti.
whuber

Risposte:


4
  1. Qual è la definizione di una proiezione in questo senso stretto (algebrico lineare) (della parola)

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

    In algebra lineare e analisi funzionale, una sporgenza è una trasformazione lineare da uno spazio vettoriale per sé tale che . Cioè, ogni volta che viene applicato due volte a qualsiasi valore, dà lo stesso risultato come se fosse applicato una volta (idempotente).PP2=PP

    Per la proiezione ortogonale o la proiezione vettoriale hai quello

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

    Una proiezione ortogonale è una proiezione per la quale l'intervallo U e lo spazio nullo V sono sottospazi ortogonali.

  2. Perché RP non è una proiezione in base a questa definizione?

    Michael Mahoney scrive nelle tue lezioni che dipende da come è costruito il RP , indipendentemente dal fatto che il RP sia o meno una proiezione nel tradizionale senso algebrico lineare. Lo fa nel terzo e quarto punto:

    Terzo, se i vettori casuali fossero esattamente ortogonali (come in realtà erano nelle costruzioni JL originali), allora avremmo che la proiezione JL fosse una proiezione ortogonale

    ...

    ma anche se questo è falso per gaussiane, variabili casuali, e la maggior parte altre costruzioni, si può dimostrare che i vettori risultanti sono circa unità di lunghezza e circa ortogonale{±}

    ...

    questo è "abbastanza buono".

    Quindi, in linea di principio, potresti fare la proiezione casuale con una costruzione diversa che è limitata alle matrici ortogonali (anche se non è necessaria). Vedi ad esempio l'opera originale:

    Johnson, William B. e Joram Lindenstrauss. "Estensioni delle mappature di Lipschitz in uno spazio di Hilbert." Matematica contemporanea 26.189-206 (1984): 1.

    ... se si sceglie a caso una proiezione ortogonale di rango sukl2n

    ...

    Per precisare questo, lasciamo che sia la proiezione sulle prime coordinate di e che sia normalizzato misura di Haar su , il gruppo ortogonale su . Quindi la variabile casuale definita da determina la nozione di " proiezione di grado casuale ".Qkl2nσO(n)l2n

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

    La voce di Wikipedia descrive la proiezione casuale in questo modo (lo stesso è menzionato nelle note delle lezioni alle pagine 10 e 11)

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

    La prima riga è un vettore di unità casuale scelto uniformemente da . La seconda riga è un vettore di unità casuale dallo spazio ortogonale alla prima riga, la terza riga è un vettore di unità casuale dallo spazio ortogonale alle prime due righe e così via.Sd1

    Ma generalmente non si ottiene questa ortogonalità quando si prendono tutte le voci della matrice nelle variabili casuali e indipendenti della matrice con una distribuzione normale (come Whuber ha menzionato nel suo commento con una conseguenza molto semplice "se le colonne fossero sempre ortogonali, le loro voci potrebbero non essere indipendente ").

    La matrice e il prodotto nel caso di colonne ortonormali possono essere viste come una proiezione perché si riferiscono a una matrice di proiezione . Questo è un po 'lo stesso di vedere la normale regressione dei minimi quadrati come una proiezione. Il prodotto non è la proiezione ma ti dà una coordinata in un vettore base diverso. La proiezione 'reale' è e la matrice di proiezione è .RP=RTRb=RTxx=Rb=RTRxRTR

    La matrice di proiezione deve essere l' operatore di identità nel sottospazio che è l'intervallo della proiezione (vedere le proprietà menzionate nella pagina di Wikipedia). O, diversamente, ha bisogno di avere autovalori 1 e 0, in modo tale che il sottospazio per il quale è la matrice di identità sia l'intervallo degli autovettori associati agli autovalori 1. Con le voci di matrice casuali non otterrai questa proprietà. Questo è il secondo punto delle note della lezioneP=RTRU

    ... sembra "una matrice ortogonale in molti modi ... l' è un sottospazio distribuito uniformemente ... ma gli autovalori non sono in .range(PTP){0,1}

    si noti che in questa citazione la matrice riferisce alla matrice nella domanda e non alla matrice di proiezione che è implicita dalla matricePRP=RTRR

    Quindi la proiezione casuale di diverse costruzioni, come l'uso di voci casuali nella matrice, non è esattamente uguale a una proiezione ortogonale. Ma è più semplice dal punto di vista computazionale e, secondo Michael Mahoney, è "abbastanza buono".


1
Grazie per la tua risposta, penso che vada nella stessa direzione di quella che ho dato sopra. Giusto per chiarire penso che si dovrebbe indicare che . Quindi, come spieghi, se le voci di sono diverse da non possiamo garantire che o che abbia autovalori in . Al contrario, se le colonne di sono ortonormali, entrambe le condizioni sono soddisfatte. Ma è fondamentale indicare che la proiezione è , e non solo ! R R d × k N ( 0 , 1 ) P 2 = P P { 0 , 1 } R R R T RP=RRTRRd×kN(0,1)P2=PP{0,1}RRRTR
Daniel López,

1
@ DanielLópez L'ho aggiornato.
Sesto Empirico

6

Esatto: "proiezione casuale" in senso stretto non è una proiezione.

Sporgenza a è chiaramente definito oggetto matematico: https://en.wikipedia.org/wiki/Projection_(linear_algebra) - è un operatore idempotentent lineare, cioè lineare operatore tale che . Applicare una proiezione due volte equivale a applicarla una sola volta perché dopo che un punto viene proiettato su un sottospazio, dovrebbe rimanere lì se proiettato di nuovo. Non c'è nulla sull'ortogonalità in questa definizione; infatti, una proiezione può essere obliqua (vedi Wikipedia).PP2=P

Si noti che solo le matrici quadrate possono rappresentare "proiezioni" in questo senso. "Proiezione casuale" utilizza una matrice casuale con , quindi non può essere una proiezione nel senso della definizione precedente.d×kRkd

Anche se crei le colonne di ortogonale (ad esempio applicando il processo di Gram-Schmidt), questo argomento rimarrà comunque valido. Qualcuno ha recentemente posto questa domanda sul PCA: Cosa si dovrebbe chiamare esattamente "matrice di proiezione" nel contesto del PCA? - una matrice degli autovettori ortogonali non è nemmeno una proiezione.Rd × k Ud×kU


3
Nel tuo ultimo paragrafo dici che se le colonne sono ortonormali, la proiezione non è ancora una proiezione nel senso di una proiezione in algebra lineare. Tuttavia, questo è solo perché la matrice non è una matrice quadrata. Ciò è più dovuto alla notazione che al principio. Se estendi la matrice con zero, la matrice è una proiezione lineare.
Sesto Empirico

1
@MartijnWeterings No, non credo. Prendi spazio 2D e U che è 1x2 e assomiglia a questo: [sqrt (2) / 2, sqrt (2) / 2] (corrispondente alla proiezione sulla diagonale). Ora estendilo con zeri. Non sarà uguale a se stesso quadrato.
ameba,

1
Dovrebbe essere esteso in altro modo, può essere fatto
kjetil b halvorsen il

2
@amoeba, sono d'accordo che sta allungando il concetto / definizione, ma direi che è più sfumata di che include questo termine inversa che non è uguale a . La combinazione lineare quando fatta di vettori ortogonali assomiglia a una proiezione ortogonale su un sottospazio più piccolo e puoi ripetere quella proiezione risultante nella stessa. È solo che insieme alla proiezione viene scelto un diverso insieme di vettori di base (almeno così è possibile vederlo) e la rappresentazione della matrice non funziona come , ma geometricamente sembra una proiezione. I U P 2 = PR(RTR)1RTIUP2=P
Sesto Empirico

2
R

1

d×kRRxRdR

p=xR(RTR)1RTpRd

RRTR=IRk×kxR

p=xRRTpRd

RRTRd×d(RRT)2=RRTRRT=RRT

RRkRdxRdxRRTRRRT

Le sarei grato se potessi confermare / correggere il mio ragionamento qui.

Riferimento:

[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

Se si utilizza il capovolgimento o la permutazione dei segni casuali calcolabili prima della trasformazione Fast Walsh Hadamard, la proiezione casuale è ortogonale.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.