Кластеризация данных на основе определенных образцов - PullRequest
0 голосов
/ 30 октября 2019

Я немного проверяю распространение аффинности (кроме пакетов, которые существуют и очень полезны).

После различных вычислений я заключил в 4 определенных примера для определенной пары значений, подобных df [1:10,]:

   X3.115997 X1.873875
1   4.446356  2.931754
2   4.071908  2.810298
3   4.512401  2.505570
4   3.793507  3.615971
5   4.141959  3.362119
6   3.656110  3.248274
7   4.194451  2.346595
8   3.775412  2.823766
9   3.724534  2.931452
10  4.040321  3.414879

Что я хотел бы сделать, так этоСгруппируйте все значения df в 4 определенных значения, которые будут работать в качестве примеров.

Ответы [ 2 ]

0 голосов
/ 08 ноября 2019

Большое спасибо за ответы,

На самом деле, я хотел бы объединить все значения в 4 группы (как я сделал вывод в 4 примерах при применении ap-кластеризации), чтобыуметь "сравнивать" мой вывод ap с кластеризованным набором данных, созданным по другой методологии.

Ответ был намного проще, поскольку есть другие функции, такие как kmeans (), которые могут справиться с задачей. Вначале это было не совсем очевидно для меня, и, возможно, я неправильно сформулировал это.

0 голосов
/ 03 ноября 2019

Распространение схожести довольно сложно и дорого.

Правильный *1003* способ присвоения точек кластерам - это итеративное вычисление обязанностей, которые зависят от обязанностей соседей. Но тогда выбранные вами 4 экземпляра могут больше не отвечать за все данные или не самые ответственные точки.

Некоторые инструменты, такие как sklearn, назначают все точки ближайшему соседу, когда вы вызываете «прогнозировать». Это не согласуется с первоначальным подходом, но на практике, похоже, не имеет большого значения. Это может объяснить, почему распространение аффинности, по-видимому, не работает намного лучше, чем k-средние или k-медоиды в большинстве случаев - если ответственность почти такая же, как близость, тогда большинство из них дают почти тот же результат.

Следовательно, APэто не тот метод, который я бы рекомендовал использовать - слишком медленный для чего-то, что не сильно отличается от k-средних в результате.

...