Я ищу алгоритм кластеризации твиттер-фидов на основе их хэштегов, где хештеги не будут строго назначаться только одному кластеру.
Очень простой пример:
- фид1: # food # vegetable
- feed 2: #food # vegetable
- feed 3: #food # fruit
- feed 4: #food # fruit
И результат, который я хотел бы получить, был бы:
- кластер 1: #food # vegetable
- кластер 2: #food # fruit
Конечно, в действительности у меня могут быть сотни тысяч каналов и несколько тысяч возможных хэштегов.
Я пробовал различные методы в scikit-learn (k-средних, спектральная кластеризация, агломерационная кластеризация), используяМатрица подобия, например:
#food | #vegetable | #fruit |
#food 1 | 1/2 | 1/2 |
#vegetable 1/2 | 1 | 0 |
#fruit 1/2 | 0 | 1 |
Все эти алгоритмы работают, но они создают непересекающиеся кластеры (каждый хэштег имеет только один кластер).