Uw vermoeden is juist, het is een probleem met de heapgrootte, of beter gezegd, een schaalbaarheidsbeperking. Rechtstreeks uit de wortel2 Veelgestelde vragen:http://project.carrot2.org/faq.html#scalability
Hoe schaalt Carrot2-clustering met betrekking tot het aantal en de lengte van documenten? Het belangrijkste kenmerk van Carrot2-algoritmen om in gedachten te houden, is dat ze in-memory clustering uitvoeren. Om deze reden zou Carrot2 als vuistregel met succes tot duizend documenten moeten verwerken, elk een paar alinea's. Voor algoritmen die zijn ontworpen om miljoenen documenten te verwerken, kun je het Mahout-project eens bekijken.
Een ontwikkelaar heeft hier ook over gepost:https://stackoverflow.com/a/28991477
Hoewel de ontwikkelaars Mahout aanbevelen, en dit is waarschijnlijk de juiste keuze omdat je niet gebonden zou zijn aan de beperkingen voor clustering in het geheugen zoals in wortel2, zijn er misschien andere mogelijkheden:
-
Als je wortel2 echt leuk vindt, maar niet per se k-means nodig hebt, kun je een kijkje nemen in het commerciële Lingo3G, gebaseerd op het veld "Time of clustering 100000 snippets [s] " en de (***) opmerking op http://carrotsearch.com/lingo3g-comparison het zou meer documenten moeten kunnen verwerken. Bekijk ook hun FAQ-item over "Wat is het maximale aantal documenten dat Lingo3G kan clusteren?" op http://carrotsearch.com/lingo3g-faq
-
Probeer de grootte van uw labels waarop k-means de clustering uitvoert, te minimaliseren. In plaats van de inhoud van alle documenten te clusteren, kunt u proberen te clusteren op de samenvatting/samenvatting of belangrijke trefwoorden te extraheren en daarop te clusteren.