Comment fonctionne la méthode d'inversion?
Disons que j'ai un échantillon aléatoire de densité f (x; \ theta) = {1 \ over \ theta} x ^ {(1- \ theta) \ over \ theta} over 0 <x <1 et donc avec cdf F_X (x) = x ^ {1 / \ theta} sur (0,1) . Ensuite, par la méthode d'inversion, j'obtiens la distribution de X comme F_X ^ {- 1} (u) = u ^ \ theta .
Est-ce que a la distribution de ? Est-ce ainsi que fonctionne la méthode d'inversion?
u<-runif(n)
x<-u^(theta)
Réponses:
La méthode est très simple, je vais donc la décrire en termes simples. Tout d'abord, prenez la fonction de distribution cumulativeFX d'une distribution à partir de laquelle vous souhaitez échantillonner. La fonction prend en entrée une valeur x et vous indique quelle est la probabilité d'obtenir X≤x . Donc
inverse d'une telle fonction fonction, prendrait comme entrée et renverrait . Notez que s » sont uniformément distribués - ce qui pourrait être utilisé pour l' échantillonnage de tout si vous connaissez . La méthode est appelée l' échantillonnage par transformée inverse . L'idée est très simple: il est facile d'échantillonner uniformément des valeurs à partir de , donc si vous voulez échantillonner à partir de certains , prenez simplement les valeurs et passez par pour obtenir « s p x p F X F - 1 XF−1X p x p FX F−1X F X u ∼ U ( 0 , 1 ) u F - 1 X xU(0,1) FX u∼U(0,1) u F−1X x
ou en R (pour une distribution normale)
Pour le visualiser, regardez CDF ci-dessous, généralement, nous pensons aux distributions en termes de recherche de l' axe pour les probabilités des valeurs de l' axe . Avec cette méthode d'échantillonnage, nous faisons le contraire et commençons par les «probabilités» et les utilisons pour choisir les valeurs qui leur sont liées. Avec des distributions discrètes, vous traitez comme une ligne de à et attribuez des valeurs en fonction de l'endroit où se situe un point sur cette ligne (par exemple, si ou si pour l'échantillonnage à partir de ).x U 0 1y x U 0 1 0 0 ≤ u < 0,5 1 0,5 ≤ u ≤ 1 B e r n o u l l i ( 0,5 )u 0 0≤u<0.5 1 0.5≤u≤1 Bernoulli(0.5)
Malheureusement, cela n'est pas toujours possible car toutes les fonctions n'ont pas leur inverse, par exemple, vous ne pouvez pas utiliser cette méthode avec des distributions bivariées. Il ne doit pas non plus être la méthode la plus efficace dans toutes les situations, dans de nombreux cas, de meilleurs algorithmes existent.
Vous demandez également quelle est la distribution de . Puisque est un inverse de , alors et , donc oui, les valeurs obtenues en utilisant ce procédé possède la même distribution que . Vous pouvez le vérifier par une simple simulationF - 1 X F X F X ( F - 1 X ( u ) ) = u F - 1 X ( F X ( x ) ) = x XF−1X(u) F−1X FX FX(F−1X(u))=u F−1X(FX(x))=x X
la source
Oui, a la distribution de . XUθ X
Deux points supplémentaires sur l'intuition derrière la méthode de transformation inverse pourraient être utiles
(1) Afin de comprendre ce que signifie réellement, veuillez vous référer à un graphique dans la réponse de Tim pour m'aider à comprendre la fonction quantile (CDF inverse)F−1
(2) [S'il vous plaît, ignorez simplement ce qui suit, si cela apporte plus de confusion au lieu de clarté]
Soit une variable aléatoire (rv) avec un cdf continu et strictement croissant . Alors Remarque sur la notation: est un rv Par conséquent, la fonction de rv , est un rv lui-même. F F ( X ) ∼ Unif ( 0 , 1 ) X X F ( X )X F
Par exemple, si vous renversiez la question, afin d'avoir accès à et que vous vouliez générer un uniforme standard, alors . Laissez appeler cette variable aléatoire . Alors Pour revenir à votre question, vous avez la tâche inverse: pour générer sur . Donc, en effet X 1 / θ ∼ Unif ( 0 , 1 ) U U = X 1 / θ X U X = U θX X1/θ∼Unif(0,1) U
PS. Les noms alternatifs de la méthode sont la transformation intégrale de probabilité, l'échantillonnage par transformation inverse, la transformation quantile et, dans certaines sources, "le théorème fondamental de la simulation".
la source