Como o método de inversão funciona?
Digamos que eu tenha uma amostra aleatória com densidade acima de e, por conseguinte, com CDF em . Então, pelo método de inversão, recebo a distribuição de como . f ( x ; θ ) = 1 0<x<1FX(x)=x1/θ(0,1)XF - 1 X(u)=uθ
Então tem a distribuição de ? É assim que o método de inversão funciona?
u<-runif(n)
x<-u^(theta)
r
distributions
inference
random-generation
inverse-cdf
Clarkson
fonte
fonte
Respostas:
O método é muito simples, então vou descrevê-lo em palavras simples. Primeiro, pegue a função de distribuição cumulativa de alguma distribuição da qual você deseja amostrar. A função assume como entrada algum valor x e informa qual é a probabilidade de obter X ≤ x . tãoFX x X≤x
inverso dessa função, levaria p como entrada e retornaria x . Observe que p 's são distribuídos uniformemente - isso poderia ser usado para a amostragem de qualquer F X se você sabe F - 1 X . O método é chamado de amostragem de transformação inversa . A ideia é muito simples: é fácil amostrar valores uniformemente a partir de U ( 0 , 1 ) ; portanto, se você quiser amostrar a partir de algum F X , basta pegar os valores u ∼F−1X p x p FX F−1X U(0,1) FX e passe u através de F - 1 X para obter x 'su∼U(0,1) u F−1X x
ou em R (para distribuição normal)
Para visualizá-lo, observe o CDF abaixo, geralmente, pensamos em distribuições em termos de olhar para o eixo para probabilidades de valores de eixo x . Com esse método de amostragem, fazemos o oposto e começamos com "probabilidades" e as usamos para escolher os valores que estão relacionados a elas. Com distribuições discretas de tratar L como uma linha a partir de 0 para 1 e os valores com base em atribuir onde faz algum ponto L se encontrar nesta linha (por exemplo, 0 se 0 ≤ u < 0,5 ou 1 se 0,5 ≤ u ≤ 1 para a amostragem a partir de By x U 0 1 u 0 0≤u<0.5 1 0.5≤u≤1 ).Bernoulli(0.5)
Infelizmente, isso nem sempre é possível, pois nem todas as funções têm seu inverso; por exemplo, você não pode usar esse método com distribuições bivariadas. Também não precisa ser o método mais eficiente em todas as situações; em muitos casos, existem algoritmos melhores.
Você também pergunta qual é a distribuição de . Desde F - 1 X é o inverso de M X , em seguida, F X ( M - 1 X ( u ) ) = u e F - 1 X ( F X ( x ) ) = x , por isso, sim, os valores obtidos utilizando este método têm a mesma distribuição que XF−1X(u) F−1X FX FX(F−1X(u))=u F−1X(FX(x))=x X . Você pode verificar isso por uma simulação simples
fonte
Sim, tem a distribuição deUθ .X
Dois pontos adicionais na intuição por trás do método de transformação inversa podem ser úteis
(1) Para entender o queF−1 realmente significa, consulte um gráfico na resposta de Tim para Me ajudar a entender a função quantile (CDF inversa)
(2) [Por favor, simplesmente ignore o seguinte, se isso traz mais confusão ao invés de clareza]
Deixe ser qualquer variável aleatória (RV) com contínua e estritamente crescente CDF F . Então F ( X ) ∼ Unif ( 0 , 1 ) Nota na notação: X é um rv Portanto, a função de rv X , F ( X ) é um próprio rv.X F
Por exemplo, se você inverter a pergunta, para ter acesso a e desejar gerar um uniforme padrão, então X 1 / θ ∼ Unif ( 0 , 1 ) . Vamos chamar esta variável aleatória U . Então U = X 1 / θ Voltando à sua pergunta, você tem a tarefa oposta: para gerar X fora de U . Então, de fato X = U θX X1/θ∼Unif(0,1) U
PS. Nomes alternativos para o método são transformação integral de probabilidade, amostragem de transformação inversa, transformação quantil e, em algumas fontes, "o teorema fundamental da simulação".
fonte