La respuesta de @ Tim muestra cómo el muestreo de transformación inversa puede adaptarse para distribuciones truncadas, liberando el tiempo de ejecución de la dependencia del umbral . Se pueden obtener mayores eficiencias evitando la costosa evaluación numérica de la función de cuantiles beta y utilizando el muestreo de transformación inversa como parte del muestreo de rechazo.k
La función de densidad de una distribución beta con parámetros de forma y doblemente truncada en (para un poco más de generalidad) esαβk1<k2
f(x)=x(α−1)(1−x)(β−1)B(k2,α,β)−B(k1,α,β)
Tome cualquier parte monótonamente creciente de la densidad entre y : para es log-cóncavo, por lo que puede envolverlo con una función exponencial dibujada en una tangente a cualquier punto a lo largo de ella:xLxUα,β>1
g(x)=c⋅λe−λ(x−xL)
Encuentre estableciendo los gradientes de las densidades de registro igualesλ
−λ=a−1x−b−11−x
y encuentre calculando cuánto necesita aumentar la densidad exponencial para cumplir con la densidad en ese punto
cc=f(x)λe−λ(x−xL)
El mejor sobre para el muestreo de rechazo es el que tiene el área más pequeña debajo. El área es
Sustituyendo expresiones en por & , & dropping factores constantes da
A=c⋅(1−e−λ(xU−xL))
xλc
Q(x)=xa(1−x)b(a+b−2)x−a+1⋅[exp((b−1)(x−xL)1−x+xL(a−1)x−(a−1))−exp((b−1)(x−xU)1−x+xU(a−1)x−(a−1))]
Escribir la derivada se deja como un ejercicio para los lectores o sus computadoras. Cualquier algoritmo de búsqueda de raíz se puede utilizar para encontrar la para la cual . xdQdQdxxdQdx=0
Lo mismo ocurre, mutatis mutandis, para partes de la densidad que disminuyen monotónicamente. Por lo tanto, la distribución beta truncada puede estar perfectamente envuelta por dos funciones exponenciales, por ejemplo, una de al modo y otra del modo a , listas para el muestreo de rechazo. (Para una variable aleatoria uniforme truncada , tiene una distribución exponencial truncada con el parámetro de velocidad .)k 2 U - log ( 1 - U )k1k2U λ−log(1−U)λλ
La belleza de este enfoque es que todo el trabajo duro está en la configuración. Una vez que se define la función envolvente, se calcula la constante de normalización para la densidad beta truncada, todo lo que queda es generar variables aleatorias uniformes y realizar en ellas algunas operaciones aritméticas simples, registros y potencias, y comparaciones. Ajustar la función de envolvente —con líneas horizontales o curvas más exponenciales— puede, por supuesto, reducir el número de rechazos.