我有一个文件夹,其中包含许多旅游评论的.txt文件。我想使用词袋方法将它们转换为某种用于机器学习的数字表示(Latent Dirichlet Allocation-LDA),用于训练系统识别每个文档的主题。
但不知怎的,我不知道如何处理Bag of Word算法,我听到了一些像Scikit-learn这样的工具。但是Scikit在python环境中学习工作。我想知道,是否有一些推荐工具/图书馆可以帮助我解决我的单词模块?或者是否有一个C ++包装器而不是scikit-learn for C ++?
我来到了一个我不知道该做什么的水平,一些指导将不胜感激。谢谢你:))
答案 0 :(得分:0)
对于C ++,您可以take a look at these resources。
答案 1 :(得分:0)
最愚蠢但又保证工作的方法是迭代所有文档两次。在第一次迭代期间,创建单词的散列映射和唯一索引(像HashMap这样的结构),并在第二次迭代期间,执行表查找并打印单词索引以创建数据的数字表示。
如果你想要一个单词表示,在第二次迭代中,你可以在每次看到一个新文档时创建一个hashmap(HashMap),并增加每个单词索引的计数,一旦你到达一个结束文件,你读出计数,并打印出来。