如何对 python 中的文本执行 K- 均值聚类?
How to perform K- means clustering over text in python?
我有一千个这样的元素:
[ "business_id_a", [ "Food", "Restaurant","Wine & Pizza"] ]
[ "business_id_b", ["Mexican", "Burgers", "Gastropubs & Wine" ] ]
...
[ "business_id_k", ["Automotive", "Delivery","Whatever"] ]
我想使用 k-means 按类别分组主题来对 business_id 进行聚类。
也许这不是最好的选择。我的想法是创建一种类别词典,首先以任何方式对所有可能的类别进行分组,然后使用该模型,按类别集群将样本分组为 business_id 组。
这行得通吗? Python 中哪种方法最好?
最好的选择是首先对文本进行标记化和矢量化。您可以使用 NLTK 的单词分词器进行分词 https://www.nltk.org/api/nltk.tokenize.html
然后您可以使用 sklearn 的 CountVectorizer 或 TFIDFVectorizer 之类的工具进行矢量化
从那里,您可以应用 k-means
我有一千个这样的元素:
[ "business_id_a", [ "Food", "Restaurant","Wine & Pizza"] ]
[ "business_id_b", ["Mexican", "Burgers", "Gastropubs & Wine" ] ]
...
[ "business_id_k", ["Automotive", "Delivery","Whatever"] ]
我想使用 k-means 按类别分组主题来对 business_id 进行聚类。
也许这不是最好的选择。我的想法是创建一种类别词典,首先以任何方式对所有可能的类别进行分组,然后使用该模型,按类别集群将样本分组为 business_id 组。
这行得通吗? Python 中哪种方法最好?
最好的选择是首先对文本进行标记化和矢量化。您可以使用 NLTK 的单词分词器进行分词 https://www.nltk.org/api/nltk.tokenize.html
然后您可以使用 sklearn 的 CountVectorizer 或 TFIDFVectorizer 之类的工具进行矢量化
从那里,您可以应用 k-means