Implementation of an incremental fuzzy-c-means clustering algorithm #750
Replies: 1 comment 5 replies
-
Hey @NicolasBizzozzero, it's great to see here! A contribution from you would be more than welcome. It's great that you opened up a discussion beforehand. I'm not the expert on online clustering. @hoanganhngo610 and @jacobmontiel should have more insights than me. I assume they're somewhat aware of fuzzy c-means, so they should be able to answer you. In terms of API, in River a clusterer has to assign a cluster label to an observation. In K-means, we pick the closest cluster. Maybe here you could label with the most relevant cluster? I'm mentioning this because it might be worth seeing if changing the API for clustering is worthwhile. Maybe we also want to explore the score for each cluster for a given observation. Maybe not. Again, it would be nice if @hoanganhngo610 and @jacobmontiel could chime in on this. |
Beta Was this translation helpful? Give feedback.
-
Hello !
After a quick glance at the current implementations of river's clustering algorithms, I think that adding a fuzzy clustering method would be a great idea. A fuzzy clustering method provides coefficients of memberships for a data point to each cluster instead of a "crisp" assignation. It provides a little bit more information, which lack on crisp clustering methods.
The Fuzzy c-means clustering algorithm is one of the most well-known and used. Its behavior closely match the famous kmeans algorithm, but with the addition of the fuzzy component. Moreover, in my experience, it's still a pretty fast algorithm !
I'm pretty confident about successfully implementing an incremental version of this algorithm, and I would like to know beforehand if this contribution would be useful and match the philosophy of your library.
Thank you for your time !
Regards.
Source:
Beta Was this translation helpful? Give feedback.
All reactions