У меня есть несколько точек данных, каждая из которых содержит 5 векторов агломерированных дискретных результатов, результаты каждого вектора, сгенерированные различным распределением (конкретный вид, в котором я не уверен, мое лучшее предположение - Вейбулл, с параметром формы, изменяющимся где-то в пределах экспоненциальной степени) закон (от 1 до 0, примерно).)
Я собираюсь использовать алгоритм кластеризации, такой как K-Means, чтобы поместить каждую точку данных в группы на основе атрибутов ее пятикомпонентного распределения. Мне было интересно, есть ли какие-либо установленные метрики расстояния, которые были бы элегантны для этих целей. До сих пор у меня было три идеи, но я не опытный статистик (скорее начинающий компьютерный специалист по интеллектуальному анализу данных), поэтому я мало представляю, как далеко я ухожу.
Поскольку я не знаю точно, с какими типами распределений я имею дело, мой грубый метод решения проблемы заключался в том, чтобы разбить каждое из распределений (у меня есть 5 на точку) на каждое из соответствующих значений дискретных данных (я дополняю каждый соответствует одной и той же длине с нулями в конце) и использует каждое из этих значений в качестве отдельного атрибута для самой точки данных. Я пытался использовать как манхэттенское расстояние, так и евклидово расстояние как метрики, основанные на этих атрибутах, как для PDF, так и для CDF.
Опять же, поскольку я не знаю, какие у меня распределения, я решил, что, если я собираюсь измерить расстояние между общими распределениями, я мог бы использовать какой-то непараметрический тест попарно между распределениями, такой как тест KS , чтобы найти вероятность того, что данные распределения были сгенерированы различными PDF-файлами. Я думал, что мой первый вариант (выше) с использованием расстояния Манхэттена будет своего рода верхней границей того, что я мог бы получить, используя этот подход (поскольку статистика KS является максимальным абсолютным значением разности CDF, где расстояние Манхэттена является сумма абсолютных значений различий в PDF-файлах). Затем я рассмотрел объединение различных KS-статистики или P-значений в каждой точке данных, возможно, используя евклидово расстояние, но, возможно, просто взяв максимум всех этих значений.
Наконец, пытаясь использовать то, что мало что могу истолковать о форме распределений, я подумал, что мог бы попытаться оценить параметры распределений в соответствии с кривой Вейбулла. Затем я мог бы сгруппировать распределения на основе различий в двух параметрах распределения Вейбулла, лямбда и k (масштаб и форма), возможно, нормализованных в соответствии с дисперсией этих параметров или что-то в этом роде. Это единственный случай, когда я подумал, что у меня может быть представление о том, как нормализовать параметры.
Поэтому мой вопрос: какую меру / методы вы бы порекомендовали для кластеризации распределений? Я даже на правильном пути с любым из них? K-Means - это даже хороший алгоритм для использования?
Изменить: уточнение данных.
Каждая точка данных (каждый объект, Obj
который я хочу кластеризовать) на самом деле буквально содержит 5 vectors
данные. Я знаю, что есть ровно 5 фаз, в которых могут находиться эти объекты. Мы скажем (для упрощения), что у каждого вектора есть length N
.
Каждый из этих векторов (назовет его vector i
) является распределение вероятностей с целым числом x-values
от 1 до N, где каждое из которых соответствует Y-значение соответствует вероятности измерения value x
в phase i
объекте Obj
. Тогда N - это максимальное значение x, которое я ожидаю измерить на любой фазе объекта (на самом деле это не фиксированное число в моем анализе).
Я определяю эти вероятности следующим образом:
Я беру один
Obj
и положить его вphase i
течениеk trials
, принимая измерения на каждом испытании. Каждое измерение представляет собой одно целое число. Я делаю это для каждой из 5 фаз одного объекта, и по очереди для каждого объекта. Мои необработанные данные измерений для одного объекта могут выглядеть следующим образом:Вектор 1. [90, 42, 30, 9, 3, 4, 0, 1, 0, 0, 1]
Вектор 2. [150, 16, 5, 0, 1, 0, 0, 0, 0, 0, 0]
...
Вектор 5. [16, ... ..., 0]
Затем я нормализую каждый из векторов отдельно, относительно общего количества измерений в данном заданном векторе. Это дает мне распределение вероятностей в этом векторе, где каждое соответствующее значение y представляет вероятность измерения
value x
вphase i
.