2 votos

Porcentaje de similitud basado en atributos y sus cantidades

Tengo dos conjuntos que contienen atributos (parcialmente superpuestos) en cantidades diferentes y estoy buscando un método para comparar la similitud entre los conjuntos basándome en los atributos y sus cantidades. ¡Soy nuevo en esto y agradecería cualquier ayuda!

Actualización: ejemplo

El conjunto A contiene pizza: 3, refresco: 5, pastel: 2

El set B contiene: pizza: 4, tarta: 1

¿Cómo puedo comparar la similitud de estos dos conjuntos?

1voto

Rosstified Puntos 2327

Una forma sencilla de medir el grado de similitud entre dos conjuntos es tomar la diferencia entre sus frecuencias relativas.

Sean todos los elementos posibles $x_1,\ldots,x_k$ y supongamos que el conjunto A tiene $m$ elementos de los cuales, $m_{1}$ son del tipo $x_1$ , $m_2$ elementos de tipo $x_2$ etc, $m_k$ de tipo $x_k$ . Análogamente para el conjunto B, supongamos que tiene $n$ elementos de los cuales, $n_1$ son del tipo $x_1$ , $n_2$ de tipo $x_2$ etc, $n_k$ de tipo $x_k$ .

A continuación, considere el índice $$ d_{AB} = \sum_{i=1}^k |m_i/m - n_i/n|. $$

$d_{AB}$ alcanza su valor mínimo, es decir 0, cuando A y B tienen el mismo número de elementos proporcionalmente a sus tamaños; asume un valor igual a 2 si los dos conjuntos son totalmente disjuntos. Por tanto, cuanto mayor sea el valor de $d_{AB}$ mayor será el grado de disimilitud entre los dos conjuntos en términos de frecuencias relativas de sus elementos.

Por ejemplo. Que los datos sean como en el post, así $x_1$ es pizza, $x_2$ es soda y $x_3$ es pastel. En este caso, tenemos $m_1=3$ , $m_2=5$ , $m_3=2$ y $n_1=4$ , $n_2=0$ , $n_3=1$ así que $$d_{AB} = \Big|\frac{3}{10}- \frac{4}{5}\Big| + \Big|\frac{5}{10}-\frac{0}{5}\Big| + \Big|\frac{2}{10}-\frac{1}{5}\Big| = 1.$$

El valor de $d_{AB}$ se encuentra a medio camino entre su valor mínimo y máximo, por lo que podemos concluir que los dos conjuntos son parcialmente similares.

Observación

Aquí te he mostrado una forma de resolver el problema, pero es fácil encontrar muchas formas distintas de cuantificar la "similitud" en este contexto. Es difícil elegir entre ellas a priori sin más detalles sobre por qué quieres medir la similitud y qué conclusión sacarás del resultado.

1voto

ratking Puntos 33

Hay muchas formas de compararlas. La más útil depende no sólo del aspecto de los datos, sino también de las diferencias que le parezcan más interesantes. Tus preferencias pueden cambiar y, en ese caso, también puede cambiar la respuesta que te resulte más útil.

Una de las cosas que tiene que decidir es si le interesan las diferencias en las proporciones o las diferencias en los recuentos absolutos. Si el conjunto C tiene cuatro mil pizzas y mil pasteles, ¿es una coincidencia de puntuación perfecta para B, porque las proporciones son iguales, o casi nula, porque las cifras totales están muy alejadas? Eso es una cuestión de preferencia, que puede variar en función de cómo se quieran ver las cosas. Si crees que los ratios son lo más importante, la otra respuesta está bien, pero no es ni mucho menos la única opción. En estos casos suelo utilizar la información mutua o Divergencia de Bhattacharyya o sus formas alternativas como distancia de información y Distancia Hellinger . Evito Divergencia de Kullback-Leibler porque no es simétrico, pero puede que eso no te moleste como a mí.

Si los recuentos absolutos do materia, entonces ninguno de esos métodos es apropiado, porque todos ellos suponen que se están comparando distribuciones de probabilidad, que son relaciones relativas. He aquí un método sencillo que sí funciona para recuentos absolutos: definir la similitud $S=|A\cap B|/|A\cup B|$ el tamaño (número total de objetos contenidos, o "cardinalidad") de la intersección dividido por el tamaño de la unión. Ahora bien, como estamos hablando de conjuntos con multiplicidad, la intersección y la unión son un poco más complicadas de definir que para los conjuntos simples de sí o no, pero siguen siendo bastante sencillas. En concreto $A\cap B$ sea el mayor subconjunto que sea a la vez subconjunto de A y de B, y sea $A\cup B$ sea el subconjunto más pequeño que contenga a A y B como subconjuntos. Entonces, en tu ejemplo, la intersección es {pizza: 3, tarta: 1} y la unión es {pizza: 4, refresco: 5, tarta: 2}, por lo que la similitud es de 4/11, en una escala de 0 a 1. Cero ocurre cuando no hay elementos en común, y uno cuando los dos conjuntos son idénticos.

Un método muy flexible consiste en considerar los conjuntos como vectores columna y definir las medidas de similitud como vectores fila de pesos que se producen por puntos con los vectores columna. Diferentes vectores de pesos dan diferentes medidas de similitud; ejemplos comunes son el precio, la masa, el volumen, las calorías, los gramos de azúcar, etc. Esto nos lleva a conceptos clásicos de optimización como el problema de la mochila Por ejemplo, cómo obtener el mayor número de calorías con un número fijo de dólares. Qué vector de peso es mejor depende de la pregunta a la que quieras que respondan tus datos, lo cual depende totalmente de ti.

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