Tengo algunos puntos de datos, cada uno con 5 vectores de resultados discretos aglomerados, los resultados de cada vector generados por una distribución diferente, (el tipo específico del cual no estoy seguro, mi mejor suposición es Weibull, con un parámetro de forma que varía en algún lugar exponencial a la potencia ley (1 a 0, aproximadamente).)
Estoy buscando usar un algoritmo de agrupamiento como K-Means para poner cada punto de datos en grupos según los atributos de sus 5 distribuciones de componentes. Me preguntaba si hay alguna métrica de distancia establecida que sería elegante para estos fines. Hasta ahora he tenido tres ideas, pero no soy un experto en estadística (más bien un científico informático principiante en minería de datos), por lo que tengo poca idea de cuán lejos estoy del camino.
Como no sé exactamente con qué tipo de distribuciones estoy lidiando, mi enfoque de la fuerza bruta del problema fue cortar cada una de las distribuciones (tengo 5 por punto) en cada uno de sus respectivos valores de datos discretos (relleno cada uno correspondiente a la misma longitud con ceros al final) y use cada uno de estos valores como un atributo separado para el punto de datos en sí. Intenté usar la distancia de Manhattan y la distancia euclidiana como métricas basadas en estos atributos, tanto para PDF como para CDF.
Nuevamente, dado que no sé qué tipo de distribuciones tengo, pensé que si iba a medir la distancia entre las distribuciones generales, podría usar algún tipo de prueba no paramétrica por pares entre distribuciones, como la prueba KS , para encontrar la probabilidad de que las distribuciones proporcionadas fueran generadas por diferentes archivos PDF. Pensé que mi primera opción (arriba) usando la distancia de Manhattan sería una especie de límite superior en lo que podría obtener con este enfoque (ya que la estadística KS es el valor absoluto máximo de la diferencia de los CDF, donde la distancia de Manhattan es la suma de los valores absolutos de las diferencias en los PDF). Luego consideré combinar las diferentes estadísticas KS o valores P dentro de cada punto de datos, probablemente usando la distancia euclidiana, pero posiblemente solo tomando el máximo de todos estos valores.
Por último, en un esfuerzo por utilizar lo poco que puedo interpretar sobre la forma de las distribuciones, pensé que podría intentar estimar los parámetros de las distribuciones para que encajen en una curva de Weibull. Entonces podría agrupar las distribuciones en función de las diferencias en los dos parámetros de la distribución de Weibull, lambda yk (escala y forma), probablemente normalizados de acuerdo con la varianza de estos parámetros o algo por el estilo. Este es el único caso en el que pensé que podría tener una idea de cómo normalizar los parámetros.
Entonces, mi pregunta es, ¿qué medidas / métodos recomendaría para la agrupación de distribuciones? ¿Estoy en el camino correcto con alguno de estos? ¿Es K-Means incluso un buen algoritmo para usar?
Editar: Clarificación de datos.
Cada punto de datos (cada objeto Obj
que quiero agrupar) en realidad contiene literalmente 5 vectors
datos. Sé que hay exactamente 5 fases en las que pueden estar estos objetos. Diremos (a los fines de la simplificación) que cada vector es de length N
.
Cada uno de estos vectores (llamarlo vector i
) es una distribución de probabilidad con número entero x-values
de 1 a N, donde cada valor de y correspondiente representa la probabilidad de medir value x
en phase i
del objeto Obj
. N es el valor x máximo que espero medir en cualquier fase del objeto (en realidad, este no es un número fijo en mi análisis).
Determino estas probabilidades de la siguiente manera:
Tomo una sola
Obj
y lo puse enphase i
parak trials
, tomar una medición en cada ensayo. Cada medida es un solo número entero. Hago esto para cada una de las 5 fases de un solo objeto y, a su vez, para cada objeto. Mis datos de medición sin procesar para un solo objeto podrían verse así:Vector 1. [90, 42, 30, 9, 3, 4, 0, 1, 0, 0, 1]
Vector 2. [150, 16, 5, 0, 1, 0, 0, 0, 0, 0, 0]
...
Vector 5. [16, ... ..., 0]
Luego normalizo cada uno de los vectores por sí solo, con respecto al número total de mediciones en ese vector dado. Esto me da una distribución de probabilidad en ese vector, donde cada valor de y correspondiente representa la probabilidad de medir
value x
enphase i
.