Temos uma grande variedade de métodos para geração aleatória a partir de distribuições univariadas (transformação inversa, aceitação-rejeição, Metropolis-Hastings etc.) e parece que podemos amostrar literalmente qualquer distribuição válida - isso é verdade?
Você poderia fornecer algum exemplo de distribuição univariada impossível de gerar aleatoriamente? Eu acho que o exemplo onde é impossível não existe (?), Então vamos dizer que por "impossível" queremos dizer também casos que são muito computacionalmente caro, por exemplo, que as simulações de força bruta necessidade como a tiragem de enormes quantidades de amostras para aceitar apenas um alguns deles.
Se esse exemplo não existir, podemos realmente provar que podemos gerar sorteios aleatórios a partir de qualquer distribuição válida? Estou simplesmente curioso se existe um contra-exemplo para isso.
Respostas:
Se você conhece a função de distribuição cumulativa, , pode invertê-la, analítica ou numericamente, e usar o método de amostragem por transformação inversa para gerar amostras aleatóriashttps://en.wikipedia.org/wiki/Inverse_transform_sampling.F(x)
Defina . Isso manipulará qualquer distribuição, seja contínua, discreta ou qualquer combinação. Isso sempre pode ser resolvido numericamente e talvez analiticamente. Seja U uma amostra de uma variável aleatória distribuída como Uniforme [0,1], isto é, de um gerador de números aleatórios uniforme [0,1]. Então F - 1 ( U ) , definida como acima, é uma amostra aleatória de uma variável aleatória com distribuição F ( x ) .F−1(y)=inf(x:F(x)≥y) F−1(U) F(x)
Esta pode não ser a maneira mais rápida de gerar amostras aleatórias, mas é uma maneira, presumindo que F (x) seja conhecido.
Se F (x) não for conhecido, é uma história diferente.
fonte
Quando uma distribuição é definida apenas por sua função geradora de momentos ou por sua função característica Φ ( t ) = E [ exp { i t X } ] , é raro encontrar maneiras de gerar a partir dessas distribuições.ϕ(t)=E[exp{tX}] Φ(t)=E[exp{itX}]
Um exemplo pertinente é feito de distribuições -STABLEα , que não têm conhecidos forma para a densidade ou CDF, nenhuma função de geração de momento, mas uma função característica de forma fechada.
Nas estatísticas bayesianas, as distribuições posteriores associadas a probabilidades intratáveis ou simplesmente conjuntos de dados grandes demais para caber em um computador podem ser vistas como impossíveis (exatamente) de simular.
fonte
Assuming you refer to continuous distributions. By using the probability integral transform, you can simulate from any univariate distributionF by simulating u∼(0,1) and then taking F−1(u) . So, we can simulate a uniform, then that part is done. The only thing that may preclude the simulation from F is that you cannot calculate its inverse F−1 , but this has to be related to computational difficulties, rather than something theoretical.
fonte
Now that your question evolved into "difficult to sample from", just take any model with an intractable likelihood, assign a prior distribution to the model parametersθ=(θ1,...,θd) , and suppose that you are interested in the marginal posterior distribution of one of the entries θj . This implies that you need to sample from the posterior, which is intractable due to the the intractability of the likelihood.
There are methods to approximately sample from this posterior in some cases, but no exact general method exists at the moment.
fonte
Not sure if this is really an answer ... I am guessing (but do not know) that one cannot sample from an only finitely additive distribution. An example would be the uniform distribution on the rational numbers, which only can exist as a finitely additive distribution. To see this, let(qi)∞i=1 be an enumeration of the rationals. Since the distribution is uniform, P(X=qi)=0 for any individual i , so ∑∞i=1P(X=qi)=0 but P(X∈Q)=1 .
If this answer looks strange and even irrelevant, look at more practical examples which are sometimes used in Bayesian inference: A uniform prior distribution on a real parameter, such as the mean of a normal distribution, sayμ . That can be modeled by a "density" (not a real probability density) which is identically one: π(μ)=1 . Such a prior can be used in Bayesian analysis (and is sometimes used, see the classic book by Box & Tiao), but we cannot sample from it. And, the probability distribution defined that way is only finitely additive, which you can see by an argument similar to the rational number example above.
fonte
Deixeic ser constante do Chaitin , e provar o (distribuição do) variável aleatória que é constantementec .
Se você está interessado apenas em amostrar variáveis aleatórias cujos valores podem ser razoavelmente aproximados por números de ponto flutuante de 64 bits, ou se você tem alguma tolerância semelhante a erros finitos no valor e não representava suas amostras como máquinas de Turing de qualquer maneira , considere isto:
DeixeiX∼ Ber ( p ) com p = 1 - c e tente provar. Os valores0 0 and 1 are perfectly representable (in e.g. 64 bit floats with no error), but I think you'll generate them at incorrect frequencies unless you solve the halting problem.
The two CDFs are piecewise constant: one is0 on (−∞,c) and 1 on [c,∞) . The other is 0 on (−∞,0) , then c on [0,1) and 1 on [1,∞) . That is, one makes c relevant on the x -axis, the other on the y -axis. I'm not sure which makes sampling most difficult, so pick the one you (dis)like the most ;-)
In this case, obvious answer seems obvious:
A bit more formally: I give you a large instance of an NP-complete problem (or EXP-complete, etc.) and ask you to uniformly sample the set of solutions for me.
Probably I should accept⊥ as a solution to no-instances (and no-instances only, and it would be the only solution). I should also come up with a bijection between e.g. integers (assuming you want to sample members of R ) and solutions—which is often fairly trivial, just treat base 2 representations as truth assignments for my SAT instance, for example, and maybe use −1 to represent ⊥ .
You can easily check whether any given truth assignment satisfies my SAT instance, and having checked them all you know whether any one does, so I have fully specified a CDF by giving you a boolean formula (or circuit), yet to sample the corresponding distribution you have to essentially become something at least as powerful as a SAT-solvability oracle.
So I gave you an uncomputable number which should throw sand in your gears, and I gave you a CDF that's slow to calculate. Maybe the next obvious question to ask is something like this: is there a CDF represented in some efficient form (e.g. can be evaluated in polynomial time) such that it's hard to generate samples with that distribution? I don't know the answer to that one. I don't know the answer to that one.
fonte