2009-10-01 36 views
6

Dada una matriz de valores 1D, ¿cuál es la forma más simple de determinar cuál es la distribución bimodal más adecuada para él, donde cada "modo" es una distribución normal? O, en otras palabras, ¿cómo se puede encontrar la combinación de dos distribuciones normales que mejor representa la matriz de valores 1D?Ajuste de una distribución bimodal a un conjunto de valores

Específicamente, estoy interesado en implementar esto en python, pero las respuestas no tienen que ser específicas de un idioma.

Gracias!

Respuesta

4

Lo que estás tratando de hacer se llama modelo Gaussian Mixture. El enfoque estándar para resolver esto es usar Maximización de expectativas, scpy svn incluye una sección sobre aprendizaje automático y em llamado scikits. Lo uso bastante.

0

Sugiero usar el increíble paquete scipy. Proporciona algunos métodos para la optimización.

Hay una gran advertencia de grasa simplemente con la aplicación de un ajuste mínimo cuadrado predefinido o algo por el estilo.

Éstos son algunos problemas que se ejecutará en:

  1. ruido mayor que el segundo/ambos picos.
  2. Pico parcial: sus datos se cortan en uno de los bordes.
  3. Muestreo: el ancho de los picos es menor que los datos de la muestra.
  4. no es normal - que obtendrá algún resultado ...
  5. Superposición - Si los picos solapan encontrará que a menudo un pico está colocado correctamente, pero el segundo se apporach cero ...
0

Estoy tratando de entender por qué uno necesita una distribución bimodal para una matriz 1D? ¿Cuáles son las ventajas de hacer esto?

+1

Ejemplo: Supongamos que los valores son las circunferencias de pecho medidas de 500 mujeres y 500 hombres. –

Cuestiones relacionadas