(Passato dai commenti a una risposta come richiesto da @Greenparker)
Parte 1)
Il termine log p deriva dalla concentrazione (gaussiana) della misura. In particolare, se si dispone dipvariabili IID gaussiane [F1], il loro massimo è dell'ordine diσ √logp----√pσlogp----√ con alta probabilità.
Il fattore deriva dal fatto che stai osservando un errore di previsione medio, ovvero corrisponde a n - 1n- 1n- 1 dall'altra parte - se guardassi l'errore totale, non ci sarebbe.
Parte 2)
In sostanza, hai due forze che devi controllare:
- i) le buone proprietà di avere più dati (quindi vogliamo n sia grande);
- ii) le difficoltà hanno caratteristiche più (irrilevanti) (quindi vogliamo che sia piccolo).p
In statistica classica, di solito fissiamo e lasciamo n andiamo a infinito: questo regime non è super utile per la teoria ad alta dimensionale, perché è (asintoticamente) nel regime a bassa dimensionalità per costruzione .pn
In alternativa, potremmo lasciar andare verso l'infinito e n soggiorno fisso, ma poi il nostro errore colpi proprio come il problema diventa praticamente impossibile. A seconda del problema, l'errore può andare all'infinito o arrestarsi in corrispondenza di un limite superiore naturale ( ad es . Errore di classificazione errata al 100%).pn
Dal momento che entrambi questi casi sono un po 'inutili, consideriamo invece andando entrambi all'infinito in modo che la nostra teoria sia pertinente (rimanga ad alta dimensione) senza essere apocalittica (caratteristiche infinite, dati finiti).n , p
Avere due "manopole" è generalmente più difficile che avere una singola manopola, quindi fissiamo per qualche fisso f e lasciamo n andare all'infinito (e quindi p va all'infinito indirettamente). [F2] La scelta di f determina il comportamento del problema. Per motivi nella mia risposta alla parte 1, si scopre che la "cattiveria" delle funzionalità extra cresce solo come log p, mentre la " cattività" dei dati extra cresce come n .p = f( n )fnpflogpn
- Se rimane costante (equivalentemente,p=f(n)=Θ(Cn)per qualcheC), percorriamo l'acqua e il problema è un lavaggio (l'errore rimane risolto in modo asintotico);logpnp = f( n ) = Θ ( Cn)C
- se (p=o(Cn)) otteniamo asintoticamente zero errori;logpn→ 0p = o ( Cn)
- e se (p=ω(Cn)), l'errore finisce infine all'infinito.logpn→ ∞p = ω ( Cn)
Quest'ultimo regime è talvolta chiamato "ultra-dimensionale" in letteratura. Il termine "ultra-dimensionale" non ha una definizione rigorosa per quanto ne so, ma è informalmente solo "il regime che rompe il lazo e stimatori simili".
Possiamo dimostrarlo con un piccolo studio di simulazione in condizioni abbastanza idealizzate. Qui prendiamo una guida teorica sulla scelta ottimale di da [BRT09] e scegliamo λ = 3 √λ .λ = 3 log( p ) / n-------√
Innanzitutto considera un caso in cui . Questo è nel regime ad alta dimensione "trattabile" descritto sopra e, come prevede la teoria, vediamo l'errore di previsione convergere a zero:p = f( n ) = 3 n
Codice da riprodurre:
library(glmnet)
library(ggplot2)
# Standard High-Dimensional Asymptotics: log(p) / n -> 0
N <- c(50, 100, 200, 400, 600, 800, 1000, 1100, 1200, 1300)
P <- 3 * N
ERROR_HD <- data.frame()
for(ix in seq_along(N)){
n <- N[ix]
p <- P[ix]
PMSE <- replicate(20, {
X <- matrix(rnorm(n * p), ncol=p)
beta <- rep(0, p)
beta[1:10] <- runif(10, 2, 3)
y <- X %*% beta + rnorm(n)
g <- glmnet(X, y)
## Cf. Theorem 7.2 of Bickel et al. AOS 37(4), p.1705-1732, 2009.
## lambda ~ 2*\sqrt{2} * \sqrt{\log(p)/n}
## is good scaling for controlling prediction error of the lasso
err <- X %*% beta - predict(g, newx=X, s=3 * sqrt(log(p)/n))
mean(err^2)
})
ERROR_HD <- rbind(ERROR_HD, data.frame(PMSE=PMSE, n=n, p=p))
}
ggplot(ERROR_HD, aes(x=n, y=PMSE)) + geom_point() + theme_bw() +
xlab("Number of Samples (n)") +
ylab("Mean Prediction Error (at observed design points)") +
ggtitle("Prediction Error Converging to 0 under High-Dim Asymptotics") +
scale_x_continuous(sec.axis = sec_axis(~ 3 * ., name="Number of Features (p)")) +
scale_y_log10()
Possiamo paragonarlo al caso in cui rimane approssimativamente costante: io chiamo questo regime "borderline" ultra-dimensionale, ma non è un termine standard:logpn
P <- 10 + ceiling(exp(N/120))
Qui vediamo che l'errore di previsione (usando lo stesso design di cui sopra) si livella invece di continuare a zero.
Penen2en2
P <- 10 + ceiling(exp(N^(1.03)/120))
Xen1.5
Nonostante ciò che ho detto sopra e come potrebbe apparire, il regime ultra-dimensionale non è in realtà completamente senza speranza (anche se è vicino), ma richiede tecniche molto più sofisticate di un semplice massimo di variabili casuali gaussiane per controllare l'errore. La necessità di utilizzare queste tecniche complesse è la fonte ultima della complessità che noti.
p , np = f( n )
Parte 3)
logpn
n , pn , p
Se sei a tuo agio e disposto ad approfondire la letteratura di ricerca, guarderei i lavori di Jianqing Fan e Jinchi Lv, che hanno svolto gran parte del lavoro di base su problemi di dimensioni ultra-dimensionali. ("Screening" è un buon termine su cui cercare)
[F1] In realtà, qualsiasi variabile aleatoria subgaussiana , ma questo non aggiunge molto a questa discussione.
Sns = g( n )
[F3] T. Hastie, R. Tibshirani e M. Wainwright. Apprendimento statistico con sparsità. Monografie su statistiche e probabilità applicata 143. CRC Press, 2015. Disponibile per il download gratuito all'indirizzo https://web.stanford.edu/~hastie/StatLearnSparsity_files/SLS.pdf
[BRT] Peter J. Bickel, Ya'acov Ritov e Alexandre B. Tsybakov. "Analisi simultanea del selettore di Lazo e Dantzig." Annals of Statistics 37 (4), pag. 1705-1732, 2009. http://dx.doi.org/10.1214/08-AOS620