用C++编写的词袋方法/工具/库?

问题描述:

我有一个文件夹,其中包含旅游评论.txt中的许多文件。我想用一揽子文字的方法将它们转换为用于机器学习的某种数字表示(Latent Dirichlet Allocation - LDA),用C++来训练系统识别每个文档的主题。用C++编写的词袋方法/工具/库?

但不知何故,我不知道如何处理Word的算法,我听到一些像Scikit学习工具。但是Scikit学习python环境中的工作。我想知道,是否有一些推荐工具/库可以帮助我解决我的一句话modul的包?或者是有一个C++包装器,用于C++的scikit-learn?

我已经到了一个我不知道该怎么做的水平,一些指导将不胜感激。谢谢:)

嗯...当然,它应该很容易编码?

最愚蠢的,但保证工作的方法将迭代所有的文件两次。在第一次迭代期间,创建单词和唯一索引(像HashMap这样的结构)的散列表,并在第二次迭代期间,执行表查找并打印单词的索引以创建数据的数字表示。

如果你想在第二次迭代期间收集一些词语,你可以在每次看到一个新文档时创建一个hashmap(HashMap),并且增加每个词索引的计数,一旦到达一份文件,你读出计数,并打印出来。

你可以take a look at these resources for C++。