[[PageOutline]] = Post-procesado de cadenas de Markov = == Introducción == Los métodos tradicionales de post-procesado de cadenas de simulación basados en el burn-in y el thinning son demasiado arbitrarios para poder parametrizarlos de forma automática sin intervención del usuario. Las cadenas simuladas con BysSampler cuentan con una ventaja adicional al conocerse la log-likelihood de cada muestra, pues esto permite contrastarla directamente con la densidad local empírica de los puntos cercanos que han sido generados en sus cercanías. En una cadena perfectamente muestreada el número de puntos generados en torno a un punto dado debería ser proporcional a la verosimilitud media alrededor de dicho punto. Esto permite diseñar un criterio completamente objetivo para eliminar puntos de zonas sobre-muestreadas e incluso sustituirlos por puntos en otras zonas infra-muestreadas. == Diseño de entornos locales solapados == El método propuesto será utilizar el algoritmo [http://es.wikipedia.org/wiki/Knn KNN] que está disponible dentro del paquete TOL MatQuery, para encontrar los vecinos más próximos de cada punto de la muestra de tamaño [[LatexEquation( S )]]. Como en los métodos de simulación tipo ''accept-reject'' hay por definición puntos repetidos, para que el algoritmo tenga sentido habría que tomar los [[LatexEquation( S' < S )]] puntos únicos [[LatexEquation( x_{i} \wedge i=1 \dots S' )]] [[BR]][[BR]] y llamar [[LatexEquation( s_{i} \wedge i=1 \dots S' )]] [[BR]][[BR]] al número de veces que aparece cada uno en la muestra. Obviamente, la suma de los números de apariciones da el tamaño muestral [[LatexEquation( S=\underset{i=1}{\overset{S'}{\sum}}s_{i} )]] [[BR]][[BR]] Sean los [[LatexEquation( k )]] puntos muestrales vecinos de [[LatexEquation( x_{i} )]] en orden de proximidad al mismo [[LatexEquation( y_{i,j} \wedge i=1 \dots S \wedge j=1 \dots k )]] [[BR]][[BR]] Sea la distancia euclídea del punto [[LatexEquation( x_{i} )]] a su [[LatexEquation( k )]]-ésimo vecino más próximo[[BR]][[BR]] [[LatexEquation( r_{i,k}=\sqrt{\underset{d=1}{\overset{n}{\sum}}\left(y_{i,k,d}-x_{i,d}\right)^{2}} )]] [[BR]][[BR]] En cada punto muestral definiremos pues el entorno local como la hiperesfera de radio [[LatexEquation( r_{i,k} )]] y centro [[LatexEquation( x_{i} )]] [[LatexEquation( \Omega_{i}=\left\{ y\in\mathbb{R}^{n}\left|\left\Vert y-x_{i}\right\Vert ^{2}\leq r_{i,k}\right.\right\} )]] == Distribución del cardinal local == Así las cosas tenemos que el cardinal local, es decir, el número total de puntos muestrales en [[LatexEquation( \Omega_{i} )]], es [[BR]][[BR]] [[LatexEquation( h_{i} = k+s_i)]] [[BR]][[BR]] cantidad que se distribuye como una binomial [[BR]][[BR]] [[LatexEquation( \eta_{i} = B\left(S, p_i\rigtht))]] donde [[LatexEquation( p_i )]] es la probabilidad de la hiperesfera, es decir, la integral de la función de densidad en cada entorno local [[BR]][[BR]] [[LatexEquation( p_{i}=\int_{\Omega_{i}}\pi\left(y\right)\mathrm{d}y )]] [[BR]] == Aproximación de la probabilidad del entorno local == La anterior integral sería algo muy costoso de evaluar, pero lo que sí conocemos sin coste adicional es el logaritmo de la verosimilitud, salvo una constante [[LatexEquation(\lambda_0)]] desconocida, evaluado en cada uno de los puntos muestrales, es decir, conocemos [[LatexEquation( \ln\pi_{i}=\ln\pi\left(x_{i}\right)+\lambda_0 )]] [[BR]][[BR]] [[LatexEquation( \ln\pi_{i,j}=\ln\pi\left(y_{i,j}\right)+\lambda_0 )]] [[BR]] Podemos pues aproximar dicha integral por el método de Montecarlo, como el producto de la media de las verosimilitudes por el hipervolumen de la región hiperesférica, que será proporcional a [[LatexEquation( r^n_{i,k} )]] [[BR]] Es posible mejorar la aproximación de la integral por interpolación, concretamente mediante el [http://www.alglib.net/interpolation/inversedistanceweighting.php método de Sheppard de ponderación inversa a la distancia] que es muy eficiente pues no requiere de ninguna evaluación extra. Esto es especialemente recomendable si existen grandes diferencias en las verosimilitudes de los distintos puntos del vecindario. La interpolación será mejor realizarla en términos logarítmicos pues eso suavizará la función. Para ello generaremos [[LatexEquation( N )]] puntos con distribución uniforme en la hiperesfera [[LatexEquation( \left\Vert z_{i,j}-x_{i}\right\Vert ^{2}\leq r_{i,k} \wedge j=1 \dots N )]] y calculamos la aproximación del logaritmo de la verosimilitud en cada uno de ellos mediante la fórmula de ponderación de Sheppard [[LatexEquation( \ln\tilde{\pi}\left(z\right)=\frac{\underset{j=0}{\overset{k}{\sum}}w_{j}\left(z\right)\ln\pi_{i,j}}{\underset{j=0}{\overset{k}{\sum}}w_{j}\left(z\right)}\wedge y_{i,0}=x_{i}\wedge\pi_{i,0}=\pi_{i}\wedge w_{j}\left(z\right)=\left\Vert z-y_{i,j}\right\Vert ^{-2} )]] De esta forma tenemos la fórmula de aproximación [[LatexEquation( \ln p_{i}\backsimeq \mu_{0}+\ln\left(\frac{1}{N}\underset{j=1}{\overset{N}{\sum}}\tilde{\pi}_{i}\left(z_{i,j}\right)\right)+n\ln r_{i,k} )]] == Verosimilitud del parámetro == La probabilidad de que el número de puntos que caen dentro de la hiperesfera sea exactamente [[LatexEquation(h)]] para la binomial definida anteriormente es [[BR]][[BR]] [[LatexEquation( P_i = \mathrm{Pr}\left[\eta_{i}=h_{i}\right]=\left(\begin{array}{c}S\\h_{i}\end{array}\right)p_{i}^{h_{i}}\left(1-p_{i}\right)^{S-h_{i}} )]] [[BR]] y el logaritmo de dicha probabilidad será [[LatexEquation( \ln\left(P_{i}\right)=\ln\left(\begin{array}{c}S\\h_{i}\end{array}\right)+h_{i}\ln p_{i}+\left(S-h_{i}\right)\ln\left(1-p_{i}\right) )]] [[BR]] La verosimilitud de [[LatexEquation(\mu_0)]] será la suma ponderada por las repeticiones de la probabilidad, luego la expresión de su logaritmo será [[BR]] [[LatexEquation( L\left(\mu_{0}\right)=\underset{i=1}{\overset{S'}{\sum}}s_{i}\ln\left(P_{i}\right) )]] [[BR]] Para que esta expresión sea evaluable debe cumplirse [[LatexEquation( 1-e^{\p_{i}}>0\forall i=1\ldots S' )]] Así pues tendremos el problema de optimización univariante [[LatexEquation(\underset{\mu_{0}}{\max}\left\{ E\left[L\left(\mu_{0}\right)\right]\right\} )]] Sujeto a [[LatexEquation( \mu_0\leq-\underset{i=S'}{\max}\left\{ \ln\left(\pi_{i}+\underset{j=1}{\overset{k}{\prod}}\pi_{i,j}\right)+n\ln r_{i,k}\right\} )]] [[BR]] == Test de super-población == La probabilidad de que el número de puntos que caen dentro de la hiperesfera sea mayor o igual que [[LatexEquation(h)]] se calcula mediante la función [http://www.gnu.org/software/gsl/manual/html_node/Incomplete-Beta-Function.html beta incompleta] [[BR]] [[BR]] [[LatexEquation( \mathrm{Pr}\left[\eta_{i}\leq h_{i}\right]=I_{1-p}\left(S-h_{i},h_{i+1}\right) )]] [[BR]]