Método de la transformada inversa.
El método de la transformada (o transformación ) inversa , también conocido como método de la transformada integral de probabilidad inversa ,[ 1] es un método para la generación de números aleatorios de cualquier distribución de probabilidad continua cuando se conoce la inversa de su función de distribución (cdf). Este método es en general aplicable, pero puede resultar muy complicado obtener una expresión analítica de la inversa para algunas distribuciones de probabilidad. El método de Box-Muller es un ejemplo de algoritmo que aunque menos general, es más eficiente desde el punto de vista computacional.[ 2]
El método se utiliza para simular valores de las distribuciones exponencial , Cauchy , triangular , de Pareto y Weibull .
Método
El problema que resuelve el método de la transformada inversa es el siguiente:
Sea
X
{\displaystyle X}
una variable aleatoria cuya distribución puede ser descrita por la función de distribución
F
X
{\displaystyle F_{X}}
.
Se desea generar valores de
X
{\displaystyle X}
que están distribuidos según dicha distribución.
El método de la transformada inversa funciona de la siguiente manera:
Se genera un número aleatorio
u
{\displaystyle u}
a partir de la distribución uniforme en el intervalo
(
0
,
1
)
{\displaystyle (0,1)}
, esto es
U
∼ ∼ -->
U
-->
(
0
,
1
)
{\displaystyle U\sim \operatorname {U} (0,1)}
.
Se halla la inversa de la función de distribución , esto es,
F
X
− − -->
1
(
x
)
{\displaystyle F_{X}^{-1}(x)}
.
Calcular
X
=
F
X
− − -->
1
(
u
)
{\displaystyle X=F_{X}^{-1}(u)}
, esta variable aleatoria
X
{\displaystyle X}
tiene distribución
F
X
{\displaystyle F_{X}}
.
Expresado de manera diferente, dada una variable aleatoria continua
U
{\displaystyle U}
en
(
0
,
1
)
{\displaystyle (0,1)}
y una función de distribución invertible
F
X
{\displaystyle F_{X}}
, la variable aleatoria
X
=
F
X
− − -->
1
(
U
)
{\displaystyle X=F_{X}^{-1}(U)}
tiene distribución
F
X
{\displaystyle F_{X}}
.
La función inversa de
y
=
F
X
(
x
)
{\displaystyle y=F_{X}(x)}
puede ser escrita como
F
X
− − -->
1
(
y
)
=
inf
{
x
|
F
X
(
x
)
≥ ≥ -->
y
}
{\displaystyle F_{X}^{-1}(y)=\inf\{x|F_{X}(x)\geq y\}}
.
Intuición
De
U
∼ ∼ -->
U
-->
(
0
,
1
)
{\displaystyle U\sim \operatorname {U} (0,1)}
queremos generar
X
{\displaystyle X}
con función de distribución
F
X
{\displaystyle F_{X}}
, donde asumimos que
F
X
{\displaystyle F_{X}}
es una función estrictamente creciente.
Queremos ver si podemos hallar una transformación estrictamente monótona
T
:
[
0
,
1
]
→ → -->
R
{\displaystyle T:[0,1]\to \mathbb {R} }
tal que
T
(
U
)
=
d
X
{\displaystyle T(U){\overset {d}{=}}X}
entonces tendremos
F
X
(
x
)
=
P
-->
[
X
≤ ≤ -->
x
]
=
P
-->
[
T
(
U
)
≤ ≤ -->
x
]
=
P
-->
[
U
≤ ≤ -->
T
− − -->
1
(
x
)
]
=
T
− − -->
1
(
x
)
{\displaystyle {\begin{aligned}F_{X}(x)&=\operatorname {P} [X\leq x]\\&=\operatorname {P} [T(U)\leq x]\\&=\operatorname {P} [U\leq T^{-1}(x)]\\&=T^{-1}(x)\end{aligned}}}
para
x
∈ ∈ -->
R
{\displaystyle x\in \mathbb {R} }
donde en el último paso se utilizó que
P
-->
[
U
≤ ≤ -->
y
]
=
y
{\displaystyle \operatorname {P} [U\leq y]=y}
cuando
U
{\displaystyle U}
es uniforme en
(
0
,
1
)
{\displaystyle (0,1)}
.
Entonces obtuvimos que
F
X
{\displaystyle F_{X}}
es la inversa de la función
T
{\displaystyle T}
o equivalentemente
T
(
u
)
=
F
X
− − -->
1
(
u
)
,
u
∈ ∈ -->
[
0
,
1
]
{\displaystyle T(u)=F_{X}^{-1}(u),u\in [0,1]}
Caso Continuo
Considérese que se desea generar una variable aleatoria continua
X
{\displaystyle X}
con función de distribución
F
X
{\displaystyle F_{X}}
, para generar a
X
{\displaystyle X}
, se considera el método de la transformada inversa basado en el siguiente teorema.
Teorema
Sea
U
{\displaystyle U}
una variable aleatoria uniforme en
(
0
,
1
)
{\displaystyle (0,1)}
, para cualquier función de distribución continua invertible
F
{\displaystyle F}
, la variable aleatoria
X
{\displaystyle X}
definida como
X
=
F
− − -->
1
(
U
)
{\displaystyle X=F^{-1}(U)}
tiene distribución
F
{\displaystyle F}
, donde
F
− − -->
1
{\displaystyle F^{-1}}
se define como el valor de
x
{\displaystyle x}
tal que
F
(
x
)
=
u
{\displaystyle F(x)=u}
.
Demostración
Sea
F
X
{\displaystyle F_{X}}
la función de distribución de
X
=
F
− − -->
1
(
U
)
{\displaystyle X=F^{-1}(U)}
entonces
F
X
(
x
)
=
P
-->
[
X
≤ ≤ -->
x
]
=
P
-->
[
F
− − -->
1
(
U
)
≤ ≤ -->
x
]
{\displaystyle {\begin{aligned}F_{X}(x)&=\operatorname {P} [X\leq x]\\&=\operatorname {P} [F^{-1}(U)\leq x]\end{aligned}}}
como
F
X
{\displaystyle F_{X}}
es una función de distribución entonces
F
X
{\displaystyle F_{X}}
es una función monótona creciente de
x
{\displaystyle x}
entonces
F
X
(
x
)
=
P
-->
[
F
− − -->
1
(
U
)
≤ ≤ -->
x
]
=
P
-->
[
F
(
F
− − -->
1
(
U
)
)
≤ ≤ -->
F
(
x
)
]
=
P
-->
[
U
≤ ≤ -->
F
(
x
)
]
=
F
(
x
)
{\displaystyle {\begin{aligned}F_{X}(x)&=\operatorname {P} [F^{-1}(U)\leq x]\\&=\operatorname {P} [F(F^{-1}(U))\leq F(x)]\\&=\operatorname {P} [U\leq F(x)]\\&=F(x)\end{aligned}}}
Este teorema muestra que para generar una variable aleatoria
X
{\displaystyle X}
a partir de la función de distribución continua
F
X
{\displaystyle F_{X}}
, generemos un número aleatorio
U
{\displaystyle U}
y hacemos entonces
X
=
F
− − -->
1
(
U
)
{\displaystyle X=F^{-1}(U)}
.
Caso Discreto
Supóngase que queremos generar el valor valor de una variable aleatoria discreta
X
{\displaystyle X}
con función de probabilidad
P
-->
[
X
=
x
j
]
=
p
j
{\displaystyle \operatorname {P} [X=x_{j}]=p_{j}}
con
j
=
0
,
1
,
2
,
… … -->
{\displaystyle j=0,1,2,\dots }
y
∑ ∑ -->
j
p
j
=
1
{\displaystyle \sum _{j}p_{j}=1}
Para esto, generamos un número aleatorio
U
{\displaystyle U}
, esto es,
U
∼ ∼ -->
U
-->
(
0
,
1
)
{\displaystyle U\sim \operatorname {U} (0,1)}
y se define
X
=
{
x
0
si
U
<
p
0
x
1
si
p
0
≤ ≤ -->
U
<
p
0
+
p
1
⋮ ⋮ -->
⋮ ⋮ -->
⋮ ⋮ -->
x
j
si
∑ ∑ -->
i
=
1
j
− − -->
1
p
i
≤ ≤ -->
U
<
∑ ∑ -->
i
=
1
j
p
i
⋮ ⋮ -->
⋮ ⋮ -->
⋮ ⋮ -->
{\displaystyle X=\left\{{\begin{matrix}x_{0}&{\mbox{si}}&U<p_{0}\\x_{1}&{\mbox{si}}&p_{0}\leq U<p_{0}+p_{1}\\\vdots &\vdots &\vdots \\x_{j}&{\mbox{si}}&\displaystyle \sum _{i=1}^{j-1}p_{i}\leq U<\sum _{i=1}^{j}p_{i}\\\vdots &\vdots &\vdots \end{matrix}}\right.}
Como
P
-->
[
a
≤ ≤ -->
U
<
b
]
=
b
− − -->
a
{\displaystyle \operatorname {P} [a\leq U<b]=b-a}
para
0
<
a
<
b
<
1
{\displaystyle 0<a<b<1}
entonces
P
-->
[
X
=
x
j
]
=
P
-->
[
∑ ∑ -->
i
=
1
j
− − -->
1
p
i
≤ ≤ -->
U
<
∑ ∑ -->
i
=
1
j
p
i
]
=
p
j
{\displaystyle \operatorname {P} [X=x_{j}]=\operatorname {P} \left[\sum _{i=1}^{j-1}p_{i}\leq U<\sum _{i=1}^{j}p_{i}\right]=p_{j}}
por lo tanto
X
{\displaystyle X}
tiene la distribución deseada.
Ejemplo del método de la tranformada inversa para una variable aleatória geométrica discreta con
p
=
0.2
{\displaystyle p=0.2}
Ejemplos
Ejemplo 1
Supóngase que se tiene una variable aleatoria
U
∼ ∼ -->
U
-->
(
0
,
1
)
{\displaystyle U\sim \operatorname {U} (0,1)}
y una función de distribución
F
(
x
)
=
1
− − -->
exp
-->
(
− − -->
x
)
{\displaystyle F(x)=1-\exp(-{\sqrt {x}})}
Para poder aplicar el método, debemos resolver
F
(
F
− − -->
1
(
u
)
)
=
u
{\displaystyle F(F^{-1}(u))=u}
F
(
F
− − -->
1
(
u
)
)
=
u
1
− − -->
exp
-->
(
− − -->
F
− − -->
1
(
u
)
)
=
u
F
− − -->
1
(
u
)
=
(
− − -->
ln
-->
(
1
− − -->
u
)
)
2
=
(
ln
-->
(
1
− − -->
u
)
)
2
{\displaystyle {\begin{aligned}F(F^{-1}(u))&=u\\1-\exp \left(-{\sqrt {F^{-1}(u)}}\right)&=u\\F^{-1}(u)&=\left(-\ln(1-u)\right)^{2}\\&=(\ln(1-u))^{2}\end{aligned}}}
a partir de aquí, ya podemos aplicar los pasos uno, dos y tres antes mencionados
Ejemplo 2
Si
X
{\displaystyle X}
es una variable aleatoria exponencial con parámetro
λ λ -->
=
1
{\displaystyle \lambda =1}
, esto es,
X
∼ ∼ -->
Exponencial
-->
(
1
)
{\displaystyle X\sim \operatorname {Exponencial} (1)}
entonces su función de distribución está dada por
F
X
(
x
)
=
1
− − -->
e
− − -->
x
{\displaystyle F_{X}(x)=1-e^{-x}}
Si hacemos
x
=
F
− − -->
1
(
u
)
{\displaystyle x=F^{-1}(u)}
entonces
u
=
F
X
(
x
)
=
1
− − -->
e
− − -->
x
{\displaystyle u=F_{X}(x)=1-e^{-x}}
esto es
u
=
1
− − -->
e
− − -->
x
1
− − -->
u
=
e
− − -->
x
x
=
− − -->
ln
-->
(
1
− − -->
u
)
{\displaystyle {\begin{aligned}u&=1-e^{-x}\\1-u&=e^{-x}\\x&=-\ln(1-u)\end{aligned}}}
por lo tanto, para generar una variable aleatoria exponencial con parámetro
λ λ -->
=
1
{\displaystyle \lambda =1}
, generamos un número aleatorio
U
{\displaystyle U}
y hacemos
X
=
F
− − -->
1
(
U
)
=
− − -->
ln
-->
(
1
− − -->
U
)
{\displaystyle X=F^{-1}(U)=-\ln(1-U)}
Recordemos que si
Y
∼ ∼ -->
U
-->
(
0
,
1
)
{\displaystyle Y\sim \operatorname {U} (0,1)}
entonces
1
− − -->
Y
∼ ∼ -->
U
-->
(
0
,
1
)
{\displaystyle 1-Y\sim \operatorname {U} (0,1)}
, aplicando este resultado obtenemos
X
=
F
− − -->
1
(
U
)
=
− − -->
ln
-->
(
U
)
{\displaystyle X=F^{-1}(U)=-\ln(U)}
a partir de aquí, ya podemos aplicar los pasos uno, dos y tres antes mencionados.
Véase también
Referencias
Enlaces externos