Un método estándar consiste en generar tres normales estándar y construir un vector unitario a partir de ellas. Es decir, cuando $X_i \sim N(0,1)$ y $\lambda^2 = X_1^2 + X_2^2 + X_3^2$ entonces $(X_1/\lambda, X_2/\lambda, X_3/\lambda)$ se distribuye uniformemente en la esfera. Este método funciona bien para $d$ -esferas dimensionales, también.
En 3D se puede utilizar el muestreo de rechazo: dibujar $X_i$ de un uniforme $[-1,1]$ distribución hasta que la longitud de $(X_1, X_2, X_3)$ es menor o igual a 1, entonces - al igual que con el método anterior - normalizar el vector a la unidad de longitud. El número esperado de ensayos por punto esférico es igual a $2^3/(4 \pi / 3)$ = 1.91. En dimensiones más altas, el número esperado de ensayos se hace tan grande que esto se vuelve rápidamente impracticable.
Hay muchas maneras de comprobar la uniformidad . Una manera limpia, aunque algo intensiva desde el punto de vista computacional, es con Función K de Ripley . El número esperado de puntos dentro de la distancia (euclidiana 3D) $\rho$ de cualquier lugar de la esfera es proporcional al área de la esfera dentro de la distancia $\rho$ que es igual a $\pi\rho^2$ . Calculando todas las distancias entre puntos se pueden comparar los datos con este ideal.
Los principios generales de la construcción de gráficos estadísticos sugieren que una buena manera de realizar la comparación es trazar los residuos estabilizados por la varianza $e_i(d_{[i]} - e_i)$ contra $i = 1, 2, \ldots, n(n-1)/2=m$ donde $d_{[i]}$ es el $i^\text{th}$ menor de las distancias mutuas y $e_i = 2\sqrt{i/m}$ . El gráfico debe ser cercano a cero. (Este enfoque es poco convencional).
Aquí se muestra una imagen de 100 extracciones independientes de una distribución esférica uniforme obtenida con el primer método:
Aquí está el gráfico de diagnóstico de las distancias:
La escala y sugiere que estos valores son todos cercanos a cero.
Aquí se acumulan 100 de estos gráficos para sugerir qué desviaciones de tamaño podrían ser realmente indicadores significativos de no uniformidad:
(Estas parcelas se parecen mucho a Puentes brownianos ...puede haber algunos descubrimientos teóricos interesantes al acecho).
Por último, aquí está el gráfico de diagnóstico para un conjunto de 100 puntos aleatorios uniformes más otros 41 puntos distribuidos uniformemente sólo en el hemisferio superior:
En relación con la distribución uniforme, muestra una significativa disminuir en las distancias medias entre puntos hasta un rango de un hemisferio. Esto en sí mismo no tiene sentido, pero la información útil aquí es que algo no es uniforme en la escala de un hemisferio. En efecto, este gráfico detecta fácilmente que un hemisferio tiene una densidad diferente a la del otro. (Una prueba de chi-cuadrado más sencilla lo haría con más potencia si se sabe de antemano qué hemisferio se va a probar de entre las infinitas posibles).
0 votos
Si por uniforme te refieres a "regular", no hay manera de hacerlo fuera de $n$ =2, 4, 6, 8, 12, 20.
2 votos
Qué pasa con la muestra de un MultiVariateGaussian y ese vector sólo normalizarlo:
v = MultivariateNormal(torch.zeros(10000), torch.eye(10000))
y luegov = v/v.norm(10000)