In che modo le varie tecniche statistiche (regressione, PCA, ecc.) Si adattano alle dimensioni e alla dimensione del campione?


10

Esiste una tabella generale nota di tecniche statistiche che spiega come si adattano alle dimensioni e alle dimensioni del campione? Ad esempio, un mio amico mi ha detto l'altro giorno che il tempo di calcolo del semplice ordinamento rapido dei dati monodimensionali di dimensione n va come n * log (n).

Quindi, per esempio, se regrediamo y contro X dove X è una variabile d-dimensionale, va come O (n ^ 2 * d)? Come si ridimensiona se voglio trovare la soluzione tramite la soluzione Gauss-Markov esatta rispetto ai minimi quadrati numerici con il metodo Newton? O semplicemente ottenere la soluzione vs usando test di significatività?

Immagino di voler più una buona fonte di risposte (come un documento che riassume il ridimensionamento di varie tecniche statistiche) che una buona risposta qui. Come, ad esempio, un elenco che include il ridimensionamento della regressione multipla, la regressione logistica, la PCA, la regressione proporzionale del rischio cox, il clustering dei mezzi K, ecc.


Questa è una buona domanda Molti libri statistici parlano degli aspetti teorici dei dati ad alta dimensione e non degli aspetti computazionali.
Shadowtalker,

In molti casi, la letteratura originale discuterà della complessità. Ma spesso la complessità teorica è inutile. QuickSort ha il caso peggiore di O (n ^ 2), ma spesso è il più veloce, più veloce di HeapSort, che ha il caso peggiore O (n log n). Se fai una piccola ricerca, scoprirai i risultati della complessità per molti algoritmi, se noti. Ad esempio PCA essendo O (nd ^ 3), k-significa essere O (nkid) ecc.
Ha QUIT - Anony-Mousse

Risposte:


6

La maggior parte degli algoritmi statistici efficienti (e non banali) sono di natura iterativa, quindi l'analisi del caso peggiore O()è irrilevante poiché il caso peggiore è "non riesce a convergere".

Tuttavia, quando si hanno molti dati, anche gli algoritmi lineari ( O(n)) possono essere lenti e quindi è necessario concentrarsi sulla costante "nascosta" dietro la notazione. Ad esempio, calcolare la varianza di una singola variabile viene ingenuamente fatto scansionare i dati due volte (una volta per calcolare una stima della media e poi una volta per stimare la varianza). Ma può anche essere fatto in un solo passaggio .

Per gli algoritmi iterativi, ciò che è più importante è il tasso di convergenza e il numero di parametri in funzione della dimensionalità dei dati, un elemento che influenza notevolmente la convergenza. Molti modelli / algoritmi aumentano un numero di parametri esponenziali rispetto al numero di variabili (ad esempio spline) mentre altri crescono in modo lineare (ad esempio supportano macchine vettoriali, foreste casuali, ...)


Non sono sicuro di essere d'accordo con questo: quando si progetta un algoritmo per un problema statistico, molta preoccupazione va nella complessità di ogni passaggio iterativo (e di solito è documentato in un manoscritto). Ma come fai notare, spesso non è così facile riassumere, poiché due algoritmi con la stessa complessità per iterazione possono funzionare in modo molto diverso a causa delle iterazioni necessarie. Detto questo, è molto raro che il numero di iterazioni richieste cresca più velocemente di O(log(n) ).
Cliff AB,

5

Hai citato la regressione e la PCA nel titolo e c'è una risposta definitiva per ognuna di queste.

La complessità asintotica della regressione lineare si riduce a O (P ^ 2 * N) se N> P, dove P è il numero di caratteristiche e N è il numero di osservazioni. Maggiori dettagli nella complessità computazionale dell'operazione di regressione minima quadrata .

Vanilla PCA è O (P ^ 2 * N + P ^ 3), come nell'algoritmo PCA più veloce per dati ad alta dimensione . Tuttavia esistono algoritmi veloci per matrici molto grandi, spiegate in quella risposta e nel miglior algoritmo PCA per un numero enorme di funzionalità? .

Tuttavia, non credo che nessuno abbia compilato una singola recensione o riferimento o un libro sull'argomento. Potrebbe non essere un brutto progetto per il mio tempo libero ...


Grazie, è molto utile! Se fai una revisione della letteratura per varie tecniche di modellazione predittiva, sono sicuro che verrebbe menzionato molto. Sarebbe molto utile per le persone che vogliono distinguere tra quali algoritmi usare in casi n grandi o p grandi, o per valori medi di quelli per calcoli più precisi. Ti capita di sapere come alcune delle tecniche più oscure si ridimensionano? (Come la regressione proporzionale del rischio di Cox o l'analisi del fattore di conferma)
Bridgeburners

Purtroppo no, ma se dovessi mai fare quella recensione cercherò di essere completo. Difficilmente definirei la regressione di Cox "oscura", almeno nel mio campo.
Shadowtalker,

5

Ho dato una risposta parziale molto limitata per il pacchetto di analisi del fattore di conferma che ho sviluppato per Stata in questo articolo dello Stata Journal basato sul tempismo delle simulazioni effettive. L'analisi dei fattori di conferma è stata implementata come tecnica di stima della massima verosimiglianza e ho potuto vedere molto facilmente come il tempo di calcolo è cresciuto con ogni dimensione (dimensione del campione n, numero di variabili p, numero di fattori k). Dato che dipende fortemente da come Stata pensa ai dati (ottimizzato per calcolare tra colonne / osservazioni anziché righe), ho trovato che le prestazioni eranoO(n^{0.68} (k+p)^{2.4})dove 2.4 è l'asintotico a inversione di matrice più veloce (e ce n'è molto di più nell'ottimizzazione iterativa dell'analisi fattoriale di conferma). Non ho fornito un riferimento per quest'ultimo, ma penso di averlo ricevuto da Wikipedia .

Si noti che esiste anche un passaggio di inversione di matrice in OLS. Tuttavia, per motivi di precisione numerica, nessuno avrebbe realmente la forza bruta inversa alla X'Xmatrice e avrebbe preferito utilizzare gli operatori di sweep e identificare le variabili pericolosamente collineari per affrontare i problemi di precisione. Se aggiungi numeri che originariamente erano in doppia precisione , probabilmente finirai con un numero che ha una sola precisione. I problemi di calcolo numerico possono diventare un angolo dimenticato dei calcoli dei big data man mano che inizi a ottimizzare la velocità.108


2
La formattazione matematica non funziona su DataScience? Veramente? Forse dovremmo chiedere di ottenerlo.
StasK

Un buon punto sull'accuratezza numerica.
Shadowtalker
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.