6 votos

Informática región de confianza para el modelo Gaussian de la mezcla

Tengo un 2-d modelo de mezcla de Gaussianas y quisiera calcular una región de confianza para él. Nuestra aplicación es que las dos dimensiones son la latitud y la longitud; es decir, nos quiere decir algo así como "el modelo es de confianza del 95% de que el verdadero punto se encuentra dentro de esta (quizás no contiguos) de la región".

En otras palabras, creo que lo que queremos es encontrar el contorno que contiene el 95% (o lo que sea) de la probabilidad de volumen en el modelo.

Mis preguntas:

  1. Hay una forma sencilla y rápida para hacer esto?
  2. Hay bibliotecas que puede hacer esto, idealmente en Python?

Necesitamos la región como un (multi)objeto poligonal que a continuación podemos pasar todo el resto de nuestro software, no un argumento.

2voto

stdqstnmrk Puntos 21

En general, es posible, por ejemplo, para calcular cuál es la probabilidad de contenido en una bola de $\mathcal{B}(c,r)$. Supongo que su gaussiano mezcla escribe

$$p(x) = \sum_{j=1}^K \mathcal{N}(x;\mu_j,\Sigma_j)\mathbb{P}(J=j)$$

Existen primaria piezas de código para hacer un algoritmo para calcular $F(c,r)=\int_{\mathcal{B}(c,r)} p(x)dx $ por cada $(c,r)\in \mathbb{R}^N \times \mathbb{R}^+$ que detallaré más. Primera nota de que desde un fijo $c$, la función de $r\mapsto F(c,r)$ es el aumento en $\mathbb{R}^+$ luego de una búsqueda por la dicotomía puede resolver numéricamente el problema de encontrar $r$ tal como, para un determinado $c$, $F(c,r)=95\%$. Los métodos más eficaces, tales como la secante método de existir.

Para manejar el caso general, si las matrices $\Sigma_j$ no tienen ninguna forma en particular, excepto que son positiva definida, puede que tenga que usar [enlace de wikipedia para el general no central de la chi cuadrado acumulativas de función][1]. Para este propósito, el código fuente de C será útil [código fuente de Robert Davies sitio web][2]. Usted encontrará lo relacionado con la documentación [en Robert Davies' de la página] de[3] y en su papel [de La Distribución de una Combinación Lineal de Chi-Cuadrado de las Variables Aleatorias][4] en el que se adopta la misma símbolos.

Si las matrices $\Sigma_j$ cada uno proporcional a la matriz de identidad, usted puede utilizar cualquiera de los ya mencionados generalizada no centrales de la chi cuadrado acumulativas de función o la no centrales de la chi cuadrado acumulativa de la función que es el más común (ver [No Centrales de la Chi Cuadrado de la Ley][5]). Esta función está disponible en MATLAB, por ejemplo.

Ahora, aquí es cómo usted puede utilizar.

$$p(x) = \sum_{j=1}^K \mathcal{N}(x;\mu_j,\Sigma_j)\mathbb{P}(J=j)$$

es la densidad de una variable a la que llamamos $X_J$ donde para cada una de las $i \in \{1,...,K\}$, la variable $X_i$ es una gaussiana variable aleatoria que tiene una función de densidad de probabilidad dada por $\mathcal{N}(x;\mu_j,\Sigma_j)$ e donde: $J$ es aleatorio discreto de la variable en el conjunto de $\{1,...,K\}$ independiente de cada una de las $X_i$, y que sigue la conocida ley de $\mathbb{P}(J=j)$.

Desde que podemos descomponer la probabilidad $$\int_{\mathcal{B}(c,r)} p(x)dx = \mathbb{P}\left(X_J \in \mathcal{B}(c,r) \right) = \sum_{j=1}^K \mathbb{P}\left(X_J \in \mathcal{B}(c,r) |J=j\right)\mathbb{P}(J=j)$$

Lo que tenemos que calcular es $\mathbb{P} \left(X_J \in \mathcal{B}(c,r) |J=j\right)=\mathbb{P}\left(\|X_j-c\|^2 \leq r^2 \right)$.

Desde $X_j-c$ es una gaussiana variable aleatoria que sigue a $\mathcal{N}(x;\mu_j-c,\Sigma_j)$, $\|X_j-c\|^2$ sigue un (generalizada no central) chi-cuadrado de la ley.

Algunas derivaciones que se debe hacer para identificar los parámetros ( $\theta_j$ ) de la presente ley. (No puedo ser más explícito en la demanda).

Entonces la única cosa que realizar es la evaluación de la Chi Cuadrado de la función acumulativa ( $S$ ) chi-cuadrado de ley en $r$.

Finalmente : $$F(c,r)=\int_{\mathcal{B}(c,r)} p(x)dx = \sum_{j=1}^K S(r;\theta_j)\mathbb{P}(J=j) $$

Entonces, se puede aplicar una dicotomía o una secante método para encontrar la mejor aproximación a $r$ que ensusres $\mathcal{B}(c,r)$ a que contienen un 95%.


Si usted está en el caso particular donde las matrices $\Sigma_j$ son diagonales, entonces usted puede encontrar una región rectangular. Por rectángulo, me refiero a un dominio, que es un producto cartesiano de los intervalos. Usted necesitará el erf función, que es la relativa a la función acumulativa de una función de densidad de probabilidad gaussiana.


Para responder a otra pregunta publicado : La unión de los contornos que contiene es exactamente o más de 95% si cada contorno contiene un 95% de probabilidad.

Aquí es por qué. Deje $E_i$ ser el contorno como $\mathbb{P}(X_i \in E_i)=95\%$ y deje $\bigcup_{i=1}^K E_i $ ser la unión de los contornos, a continuación,

$$ \int_{ \bigcup_{i=1}^K E_i} p(x)dx = \mathbb{P}\left(X_J \in \bigcup_{i=1}^K E_i\right)$$ $$= \sum_{i=1}^K \mathbb{P}\left(X_J \in \bigcup_{i=1}^K E_i |J=j\right)\mathbb{P}(J=j)$$

en la que cada término $\mathbb{P}\left(X_J \in \bigcup_{i=1}^K E_i \Big| J=j \right) \geq 95\%$. Finalmente, debido a que $\mathbb{P}(J=j)$ sumas a 1, esta última línea es un promedio ponderado de los valores de mayor a 95%, con lo que la suma es mayor de 95%.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X