El muestreo de transformación inversa (también conocido como muestreo de inversión , transformación integral de probabilidad inversa , método de transformación inversa o transformación de Smirnov ) es un método básico para el muestreo de números pseudoaleatorios , es decir, para generar números de muestra al azar a partir de cualquier distribución de probabilidad dada su función de distribución acumulativa .
El muestreo por transformación inversa toma muestras uniformes de un númeroentre 0 y 1, interpretado como una probabilidad, y luego devuelve el número más pequeño.de tal manera quepara la función de distribución acumulativade una variable aleatoria. Por ejemplo, imagina quees la distribución normal estándar con media cero y desviación estándar uno. La tabla a continuación muestra muestras tomadas de la distribución uniforme y su representación en la distribución normal estándar.

Elegimos aleatoriamente una proporción del área bajo la curva y devolvemos el número en el dominio tal que exactamente esa proporción del área se encuentra a la izquierda de dicho número. Intuitivamente, es poco probable que elijamos un número en el extremo de las colas, ya que hay muy poca área en ellas, lo que requeriría elegir un número muy cercano a cero o a uno.
Desde el punto de vista computacional, este método implica calcular la función cuantil de la distribución; es decir, calcular la función de distribución acumulativa (FDA) de la distribución (que asigna a cada número del dominio una probabilidad entre 0 y 1) y luego invertir dicha función. Este es el origen del término "inversa" o "inversión" en la mayoría de los nombres que recibe este método. Cabe destacar que, para una distribución discreta , calcular la FDA no suele ser demasiado difícil: simplemente sumamos las probabilidades individuales de los distintos puntos de la distribución. Sin embargo, para una distribución continua , necesitamos integrar la función de densidad de probabilidad (FDP) de la distribución, lo cual es imposible de realizar analíticamente para la mayoría de las distribuciones (incluida la distribución normal ). En consecuencia, este método puede resultar computacionalmente ineficiente para muchas distribuciones, por lo que se prefieren otros métodos; no obstante, es un método útil para construir muestreadores de aplicación más general, como los basados en el muestreo por rechazo .
Para la distribución normal , la falta de una expresión analítica para la función cuantil correspondiente implica que otros métodos (por ejemplo, la transformada de Box-Muller ) pueden ser preferibles desde el punto de vista computacional. A menudo, incluso para distribuciones simples, el método de muestreo de la transformada inversa puede mejorarse: [ 1 ] véase, por ejemplo, el algoritmo de zigurat y el muestreo por rechazo . Por otro lado, es posible aproximar la función cuantil de la distribución normal con extrema precisión utilizando polinomios de grado moderado, y de hecho , el método para hacerlo es lo suficientemente rápido como para que el muestreo por inversión sea ahora el método predeterminado para muestrear a partir de una distribución normal en el paquete estadístico R. [ 2 ]
Declaración formal
Para cualquier variable aleatoriaen, la variable aleatoriatiene la misma distribución que, dóndees la inversa generalizada de la función de distribución acumulativadeyes uniforme en. [ 3 ]
Para variables aleatorias continuas , la transformada integral de probabilidad inversa es de hecho la inversa de la transformada integral de probabilidad , que establece que para una variable aleatoria continuacon función de distribución acumulativa, la variable aleatoriaes uniforme en.

Intuición
De, queremos generarcon CDFSuponemosser una función continua y estrictamente creciente , lo cual proporciona una buena intuición.
Queremos ver si podemos encontrar alguna transformación estrictamente monótona., de tal manera queTendremos
donde el último paso usó esocuandoes uniforme en.
Así que conseguimosser la función inversa deo, equivalentemente
Por lo tanto, podemos generarde
El método


El problema que resuelve el método de muestreo de la transformada inversa es el siguiente:
- Dejarsea una variable aleatoria cuya distribución puede describirse mediante la función de distribución acumulativa..
- Queremos generar valores deque se distribuyen según esta distribución.
El método de muestreo de la transformada inversa funciona de la siguiente manera:
- Generar un número aleatoriode la distribución uniforme estándar en el intervalo, es decir, de
- Hallar la inversa generalizada de la función de distribución acumulada (CDF) deseada, es decir.
- CalcularLa variable aleatoria calculadatiene distribucióny por lo tanto la misma ley que.
Dicho de otra manera, dada una función de distribución acumulativay una variable uniforme, la variable aleatoriatiene la distribución. [ 3 ]
En el caso continuo, se puede dar un tratamiento de dichas funciones inversas como objetos que satisfacen ecuaciones diferenciales. [ 4 ] Algunas de estas ecuaciones diferenciales admiten soluciones explícitas en series de potencias , a pesar de su no linealidad. [ 5 ]
Ejemplos
- Como ejemplo, supongamos que tenemos una variable aleatoria.y una función de distribución acumulativa
- Para realizar una inversión, queremos resolver
- Desde aquí realizaríamos los pasos uno, dos y tres.
- Como otro ejemplo, utilizamos la distribución exponencial conpara x ≥ 0 (y 0 en caso contrario). Al resolver y=F(x) obtenemos la función inversa.
- Significa que si dibujamos algode uny calcularEstetiene distribución exponencial.
- La idea se ilustra en el siguiente gráfico:

Los números aleatorios y i se generan a partir de una distribución uniforme entre 0 y 1, es decir, Y ~ U(0, 1). Se representan como puntos de color en el eje y. Cada uno de los puntos se mapea según x=F −1 (y), que se muestra con flechas grises para dos puntos de ejemplo. En este ejemplo, hemos utilizado una distribución exponencial. Por lo tanto, para x ≥ 0, la densidad de probabilidad esy la función de distribución acumulativa es. Por lo tanto,Podemos ver que, utilizando este método, muchos puntos terminan cerca de 0 y solo unos pocos puntos terminan teniendo valores x altos, tal como se espera para una distribución exponencial. - Nótese que la distribución no cambia si comenzamos con 1-y en lugar de y. Por lo tanto, para fines computacionales, basta con generar números aleatorios y en [0, 1] y luego simplemente calcular
Prueba de corrección
DejarSea una función de distribución acumulativa y seasea su función inversa generalizada (usando el ínfimo porque las CDF son débilmente monótonas y continuas por la derecha ): [ 6 ]
Afirmación: Sies una variable aleatoria uniforme enentoncestienecomo su CDF.
Prueba:
Distribución truncada
El muestreo de transformada inversa puede extenderse fácilmente a casos de distribuciones truncadas en el intervaloSin el coste del muestreo por rechazo: se puede seguir el mismo algoritmo, pero en lugar de generar un número aleatoriodistribuidos uniformemente entre 0 y 1, generandistribuidos uniformemente entreyy luego nuevamente tomar.
Reducción del número de inversiones
Para obtener un gran número de muestras, es necesario realizar el mismo número de inversiones de la distribución. Una forma de reducir el número de inversiones y, al mismo tiempo, obtener un gran número de muestras es la aplicación del muestreador de Monte Carlo de colocación estocástica (muestreador SCMC) dentro de un marco de expansión de caos polinomial . Esto permite generar cualquier número de muestras de Monte Carlo con solo unas pocas inversiones de la distribución original, con muestras independientes de una variable cuyas inversiones están disponibles analíticamente, por ejemplo, la variable normal estándar. [ 7 ]
Implementaciones de software
Existen implementaciones de software para aplicar el método de muestreo inverso mediante aproximaciones numéricas de la inversa, en caso de que no esté disponible en forma cerrada. Por ejemplo, se puede calcular una aproximación de la inversa si el usuario proporciona información sobre las distribuciones, como la función de densidad de probabilidad (PDF) [ 8 ] o la función de distribución acumulada (CDF).
- Biblioteca C UNU.RAN [ 9 ]
- Biblioteca R Runuran [ 10 ]
- Muestreo del subpaquete de Python en scipy.stats [ 11 ] [ 12 ]
Véase también
- Transformación integral de probabilidad
- Cópula , definida mediante la transformada integral de probabilidad.
- Función cuantil , para la construcción explícita de funciones de distribución acumulada inversas.
- Función de distribución inversa para una definición matemática precisa de distribuciones con componentes discretas.
- El muestreo por rechazo es otra técnica común para generar variables aleatorias que no depende de la inversión de la función de distribución acumulada (CDF).
Referencias
- ↑ Luc Devroye (1986). Generación de variables aleatorias no uniformes (PDF) . Nueva York: Springer-Verlag. Archivado del original (PDF) el 18 de agosto de 2014. Consultado el 12 de abril de 2012 .
- ↑ "R: Generación de números aleatorios" .
- 1 2 McNeil, Alexander J.; Frey, Rüdiger; Embrechts, Paul (2005). Gestión cuantitativa del riesgo . Serie Princeton en Finanzas. Princeton University Press, Princeton, NJ. pág. 186. ISBN 0-691-12255-5.
- ↑ Steinbrecher, György; Shaw, William T. (19 de marzo de 2008). "Mecánica de cuantiles". European Journal of Applied Mathematics . 19 (2): 87– 112. doi : 10.1017/S0956792508007341 . S2CID 6899308 .
- ↑ Arridge, Simon; Maass, Peter; Öktem, Ozan; Schönlieb, Carola-Bibiane (2019). "Resolución de problemas inversos mediante modelos basados en datos" . Acta Numerica . 28 : 1–174 . doi : 10.1017/S0962492919000059 . ISSN 0962-4929 . S2CID 197480023 .
- ↑ Luc Devroye (1986). "Sección 2.2. Inversión mediante solución numérica de F ( X ) = U " (PDF) . Generación de variables aleatorias no uniformes . Nueva York: Springer-Verlag.
- ↑ LA Grzelak, JAS Witteveen, M. Suarez y CW Oosterlee. El muestreador estocástico de colocación de Monte Carlo: muestreo altamente eficiente de distribuciones “costosas”. https://ssrn.com/abstract=2529691
- ↑ Derflinger, Gerhard; Hörmann, Wolfgang; Leydold, Josef (2010). "Generación de variables aleatorias mediante inversión numérica cuando solo se conoce la densidad" (PDF) . ACM Transactions on Modeling and Computer Simulation . 20 (4). doi : 10.1145/945511.945517 .
- ↑ "UNU.RAN - Generadores de números aleatorios no uniformes universales" .
- ↑ "Runuran: Interfaz R para los generadores de variables aleatorias 'UNU.RAN'" . 17 de enero de 2023.
- ↑ "Generadores de números aleatorios (Scipy.stats.sampling) — Manual de SciPy v1.12.0" .
- ↑ Baumgarten, Christoph; Patel, Tirth (2022). "Generación automática de variables aleatorias en Python". Actas de la 21.ª Conferencia Python en la Ciencia . págs. 46–51 . doi : 10.25080/majora-212e5952-007 .
- métodos de Monte Carlo
- Números aleatorios no uniformes