Distribuzioni di probabilità e complessità computazionale


9

Questa domanda riguarda l'intersezione della teoria della probabilità e della complessità computazionale. Un'osservazione chiave è che alcune distribuzioni sono più facili da generare rispetto ad altre. Ad esempio, il problema

Dato un numero n , restituisce un numero uniformemente distribuito i con 0i<n .

è facile da risolvere. D'altra parte, il seguente problema è o sembra essere molto più difficile.

Dato un numero n , restituisci un numero i tale che i sia (il numero di Gödel di) una valida prova della lunghezza n nell'aritmetica di Peano. Inoltre, se il numero di tali prove è pr(n) , la probabilità di ottenere una prova specifica della lunghezza n dovrebbe essere 1pr(n) .

Questo mi suggerisce che le distribuzioni di probabilità arrivano con una nozione di complessità computazionale. Inoltre, questa complessità è probabilmente strettamente correlata ai problemi decisionali sottostanti (siano essi sub-ricorsivi, ad esempio P , EXP , ricorsivi, ricorsivamente enumerabili o peggio).

La mia domanda è: come si definisce la complessità computazionale delle distribuzioni di probabilità, specialmente laddove il problema decisionale sottostante non è decidibile. Sono sicuro che questo è già stato studiato, ma non sono sicuro di dove cercare.


1
Un altro esempio interessante (ma che è decidibile) è la trasformata quantistica di Fourier. Dato restituisce un numero tale che la probabilità di sia proporzionale a, . l [ 0 , N ] l | F ( l ) | F ( l ) = N k = 0 f ( k ) e - 2 π i k l / Nf(k)=akmodbl[0,N]l|F(l)|F(l)=k=0Nf(k)e2πikl/N
Wandering Logic,

1
Entrambi i tuoi esempi sono distribuzioni uniformi discrete. Immagino che le diverse complessità sarebbero in quanto è difficile contaredove è il supporto. χ|χ|χ
Nicholas Mancuso,

1
@NicholasMancuso Concordo sul fatto che il conteggio + la scelta non valida possono sempre essere utilizzati. Quindi, in un certo senso, dà un limite superiore. È tutto ciò che si può dire? Dove in letteratura è stato studiato questo?
Martin Berger,

1
@NicholasMancuso Gli esempi che do sono distribuzioni uniformi. Ma si può porre la stessa domanda sulle distribuzioni non uniformi. Ci si può anche chiedere delle distribuzioni su . Per quanto riguarda le distribuzioni discrete: prima facie, il conteggio non sembra essere abbastanza in generale, devi anche essere in grado di generare l' -elemento, dopo aver scelto uniformemente . Detto questo, potrebbe essere il caso che il conteggio sia il nocciolo del problema. i iRii
Martin Berger,

1
@NikosM. Grazie, ma anche quel link non dice nulla sulla complessità della distribuzione sottostante. Il riferimento parla di una trasformazione sulla distribuzione uniforme. Ma quella trasformazione potrebbe essere difficile / o facile dal punto di vista computazionale. ϕ
Martin Berger,

Risposte:


2

La complessità delle distribuzioni di probabilità emerge in particolare nello studio di problemi distributivi come DistNP nella teoria di Levin sulla teoria della complessità media dei casi .

Una distribuzione è calcolabile P se la sua funzione di densità cumulativa può essere valutata in tempo polinomiale.

Una distribuzione è campionabile in P se possiamo campionare da essi in tempo polinomiale.

Se una distribuzione è calcolabile in P, è campionabile in P. Il contrario non è vero se esistono determinate funzioni a senso unico.

È possibile estendere le definizioni ad altre classi di complessità.

Oded Goldreich ha delle belle note introduttive sull'argomento che potresti voler controllare.


Grazie, penso che una teoria delle distribuzioni campionabili sia qualcosa di simile a quello che stavo cercando. Ma non c'è ragione di limitare l'attenzione alla , è possibile definire distribuzioni -samplable per qualsiasi classe di complessità . Con la recente ascesa dei linguaggi di programmazione probabilistica che sta diventando vitale. P C CPPCC
Martin Berger,

@Martin, sì. C'è stato un tutorial sulla programmazione probabilistica ( diapositive , anche il video verrà pubblicato) alla NIPS 2015. Ho sentito che le persone che hanno partecipato l'hanno trovato molto interessante. Bello vedere persone che lavorano all'intersezione tra ML / Stats e PL. :)
Kaveh,

Sì, e il problema principale è che tali linguaggi (= generici, campionatori programmabili) sono lenti. Come possiamo accelerarli?
Martin Berger,
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.