56 votos

¿Cómo evaluar la similitud de dos histogramas?

Dados dos histogramas, ¿cómo evaluar si son similares o no?

¿Basta con mirar los dos histogramas? El simple mapeo uno a uno tiene el problema de que si un histograma es ligeramente diferente y está ligeramente desplazado, no obtendremos el resultado deseado.

¿Alguna sugerencia?

6 votos

¿Qué significa "similar"? La prueba de chi-cuadrado y la prueba KS, por ejemplo, prueban si dos histogramas son similares a idéntico. Pero "similar" podría significar "tener la misma forma". ignorando cualquier diferencia de ubicación y/o escala. ¿Podría aclarar su intención?

0 votos

Además de la $\chi^2$ se puede producir un bihistograma ( itl.nist.gov/div898/handbook/eda/section3/bihistog.htm ) Del manual: "Es una alternativa gráfica a la prueba t de dos muestras. El bihistograma puede ser más potente que la prueba t en el sentido de que todas las características de la distribución (ubicación, escala, asimetría, valores atípicos) son evidentes en un solo gráfico."

0 votos

@whuber: ¿Puedo utilizar la prueba KS en histogramas discretos directamente? ¿Debo transformarlos primero a CDF?

62voto

Hay muchas medidas de distancia entre dos histogramas. Puedes leer una buena categorización de estas medidas en:

K. Meshgi, y S. Ishii, "Expanding Histogram of Colors with Gridding to Improve Tracking Accuracy", en Proc. of MVA'15, Tokio, Japón, mayo 2015.

Las funciones de distancia más populares se enumeran aquí para su comodidad:

  • $L_0$ o Distancia Hellinger

    $D_{L0} = \sum\limits_{i} h_1(i) \neq h_2(i) $

  • $L_1$ , Manhattan, o la distancia en bloque de la ciudad

    $D_{L1} = \sum_{i}\lvert h_1(i) - h_2(i) \rvert $

  • $L=2$ o la distancia euclidiana

    $D_{L2} = \sqrt{\sum_{i}\left( h_1(i) - h_2(i) \right) ^2 }$

  • L $_{\infty}$ o la distancia de Chybyshev

    $D_{L\infty} = \max_{i}\lvert h_1(i) - h_2(i) \rvert $

  • L $_p$ o Distancia Fraccional (parte de la familia de distancias de Minkowski)

    $D_{Lp} = \left(\sum\limits_{i}\lvert h_1(i) - h_2(i) \rvert ^p \right)^{1/p}$ y $0<p<1$

  • Intersección del histograma

    $D_{\cap} = 1 - \frac{\sum_{i} \left(\min(h_1(i),h_2(i) \right)}{\min\left(\vert h_1(i)\vert,\vert h_2(i) \vert \right)}$

  • Distancia del coseno

    $D_{CO} = 1 - \sum_i h_1(i)h2_(i)$

  • Distancia a Canberra

    $D_{CB} = \sum_i \frac{\lvert h_1(i)-h_2(i) \rvert}{\min\left( \lvert h_1(i)\rvert,\lvert h_2(i)\rvert \right)}$

  • Coeficiente de correlación de Pearson

    $ D_{CR} = \frac{\sum_i \left(h_1(i)- \frac{1}{n} \right)\left(h_2(i)- \frac{1}{n} \right)}{\sqrt{\sum_i \left(h_1(i)- \frac{1}{n} \right)^2\sum_i \left(h_2(i)- \frac{1}{n} \right)^2}} $

  • Divergencia de Kolmogorov-Smirnov

    $ D_{KS} = \max_{i}\lvert h_1(i) - h_2(i) \rvert $

  • Distancia del partido

    $D_{MA} = \sum\limits_{i}\lvert h_1(i) - h_2(i) \rvert $

  • Distancia Cramer-von Mises

    $D_{CM} = \sum\limits_{i}\left( h_1(i) - h_2(i) \right)^2$

  • $\chi^2$ Estadísticas

    $D_{\chi^2} = \sum_i \frac{\left(h_1(i) - h_2(i)\right)^2}{h_1(i) + h_2(i)}$

  • Distancia Bhattacharyya

    $ D_{BH} = \sqrt{1-\sum_i \sqrt{h_1(i)h_2(i)}} $ & hellinger

  • Acordes al cuadrado

    $ D_{SC} = \sum_i\left(\sqrt{h_1(i)}-\sqrt{h_2(i)}\right)^2 $

  • Divergencia de Kullback-Liebler

    $D_{KL} = \sum_i h_1(i)\log\frac{h_1(i)}{m(i)}$

  • Divergencia de Jefferey

    $D_{JD} = \sum_i \left(h_1(i)\log\frac{h_1(i)}{m(i)}+h_2(i)\log\frac{h_2(i)}{m(i)}\right)$

  • La distancia de la Tierra (este es el primer miembro de las distancias de transporte que incluye información de binning $A$ en la distancia, para más información consulte el documento mencionado anteriormente o Wikipedia entrada.

    $ D_{EM} = \frac{\min_{f_{ij}}\sum_{i,j}f_{ij}A_{ij}}{sum_{i,j}f_{ij}}$
    $ \sum_j f_{ij} \leq h_1(i) , \sum_j f_{ij} \leq h_2(j) , \sum_{i,j} f_{ij} = \min\left( \sum_i h_1(i) \sum_j h_2(j) \right) $ y $f_{ij}$ representa el flujo de $i$ a $j$

  • Distancia cuadrática

    $D_{QU} = \sqrt{\sum_{i,j} A_{ij}\left(h_1(i) - h_2(j)\right)^2}$

  • Distancia cuadrática-Chi

    $D_{QC} = \sqrt{\sum_{i,j} A_{ij}\left(\frac{h_1(i) - h_2(i)}{\left(\sum_c A_{ci}\left(h_1(c)+h_2(c)\right)\right)^m}\right)\left(\frac{h_1(j) - h_2(j)}{\left(\sum_c A_{cj}\left(h_1(c)+h_2(c)\right)\right)^m}\right)}$ y $\frac{0}{0} \equiv 0$

Una implementación en Matlab de algunas de estas distancias está disponible en mi repositorio GitHub . Además, puede buscar a personas como Yossi Rubner, Ofir Pele, Marco Cuturi y Haibin Ling para conocer más distancias de vanguardia.

Actualización: En la literatura aparecen explicaciones alternativas para las distancias, por lo que las enumero aquí en aras de la exhaustividad.

  • Distancia a Canberra (otra versión)

    $D_{CB}=\sum_i \frac{|h_1(i)-h_2(i)|}{|h_1(i)|+|h_2(i)|}$

  • Disimilitud de Bray-Curtis, Distancia de Sorensen (como la suma de los histogramas es igual a uno, es igual a $D_{L0}$ )

    $D_{BC} = 1 - \frac{2 \sum_i h_1(i) = h_2(i)}{\sum_i h_1(i) + \sum_i h_2(i)}$

  • Distancia de Jaccard (es decir, intersección sobre unión, otra versión)

    $D_{IOU} = 1 - \frac{\sum_i \min(h_1(i),h_2(i))}{\sum_i \max(h_1(i),h_2(i))}$

0 votos

Bienvenido a nuestra página web. Gracias por esta contribución.

0 votos

Aquí está el enlace de la ponencia: mva-org.jp/Proceedings/2015USB/papers/14-15.pdf

0 votos

Gracias, una lista es maravillosa, mientras que no permite crear un operador de comparación para el histograma, por ejemplo para decir que hist1 < hist2

30voto

user21874 Puntos 11

La respuesta estándar a esta pregunta es la prueba de chi-cuadrado . La prueba KS es para datos no agrupados, no para datos agrupados. (Si tiene los datos sin bindear, entonces por todos los medios utilice una prueba de estilo KS, pero si sólo tiene el histograma, la prueba KS no es apropiada).

1 votos

Tienes razón en que la prueba KS no es apropiada para los histogramas cuando se entiende como una prueba de hipótesis sobre la distribución de los datos subyacentes, pero no veo ninguna razón por la que la prueba KS estadística no funcionaría bien como medida de igualdad de dos histogramas cualquiera.

2 votos

Sería útil una explicación de por qué la prueba de Kolmogorov-Smirnov no es apropiada con los datos agrupados.

1 votos

Esto puede no ser tan útil en el procesamiento de imágenes como en la evaluación estadística del ajuste. A menudo, en el procesamiento de imágenes, se utiliza un histograma de datos como descriptor de una región de una imagen, y el objetivo es que la distancia entre los histogramas refleje la distancia entre los parches de la imagen. Es posible que se conozca poco, o posiblemente nada, sobre las estadísticas generales de la población de los datos de la imagen subyacente utilizados para obtener el histograma. Por ejemplo, las estadísticas de población subyacentes cuando se utilizan histogramas de gradientes orientados diferirían considerablemente en función del contenido real de las imágenes.

11voto

Eggs McLaren Puntos 945

Un documento reciente que puede merecer la pena leer es:

Cao, Y. Petzold, L. Limitaciones de precisión y medición de errores en la simulación estocástica de sistemas que reaccionan químicamente, 2006.

Aunque este artículo se centra en la comparación de algoritmos de simulación estocástica, la idea principal es cómo comparar dos histogramas.

Puede acceder al pdf de la página web del autor.

0 votos

Hola, su papel agradable, thankx para dar enlace pdf.. Seguramente voy a ir a través de este documento

29 votos

En lugar de proporcionar una referencia, sería bueno que resumieras los puntos principales del documento. Los enlaces mueren, así que en el futuro tu respuesta podría ser inútil para los no suscriptores de esta revista (y la gran mayoría de la población humana son los no suscriptores).

2 votos

El enlace no funciona...

11voto

dlinsin Puntos 5863

Estás buscando el Prueba de Kolmogorov-Smirnov . No olvides dividir las alturas de las barras por la suma de todas las observaciones de cada histograma.

Tenga en cuenta que la prueba KS también informa de una diferencia si, por ejemplo, las medias de las distribuciones están desplazadas entre sí. Si la traslación del histograma a lo largo del eje x no es significativa en su aplicación, es posible que desee restar la media de cada histograma primero.

3 votos

Restar la media cambia la distribución nula del estadístico KS. De todos modos, @David Wright plantea una objeción válida a la aplicación de la prueba KS a los histogramas.

10voto

alfred Puntos 61

Como señala la respuesta de David, la prueba de chi-cuadrado es necesaria para los datos divididos en cubos, ya que la prueba KS asume distribuciones continuas. En cuanto a la razón por la que la prueba KS es inadecuada (comentario de naught101), se ha debatido la cuestión en la literatura de estadística aplicada y merece la pena plantearla aquí.

Un divertido intercambio comenzó con la afirmación ( García-Berthou y Alcaraz, 2004 ) que un tercio de los artículos de Nature contienen errores estadísticos. Sin embargo, un artículo posterior ( Jeng, 2006 , " Error en las pruebas estadísticas de error en las pruebas estadísticas "El artículo de Jeng (2006) proporciona una buena discusión sobre el tema, mostrando incluso que se puede modificar la prueba KS para que funcione con datos discretos. El artículo de Jeng (2006) proporciona una buena discusión sobre el tema, mostrando incluso que se puede modificar la prueba KS para que funcione con datos discretos. En este caso concreto, la distinción se reduce a la diferencia entre una distribución uniforme del dígito final en [0,9], $$ P(x) = \frac{1}{9},\ (0 \leq x \leq 9) $$ (en la prueba KS incorrecta) y una distribución en peine de las funciones delta, $$ P(x) = \frac{1}{10}\sum_{j=0}^9 \delta(x-j) $$ (en la forma correcta y modificada). Como resultado del error original, García-Berthou y Alcaraz (2004) rechazaron incorrectamente la nulidad, mientras que la prueba de chi-cuadrado y la prueba KS modificada no lo hacen. En cualquier caso, la prueba de chi-cuadrado es la opción estándar en este escenario, incluso si la KS puede modificarse para que funcione aquí.

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