我正在尝试对一堆(大约140个)文本文档进行文本分析。在预处理和删除不必要的单词和停用词之后,每个文档具有大约7000个句子(由nlkt的句子标记器确定),并且每个句子平均具有大约17个单词。我的工作是在这些文件中找到隐藏的主题。
我考虑过做主题建模。但是,我无法确定我所拥有的数据是否足以通过LDA获得有意义的结果,或者我还能做些什么。
另外,如何将文本分成不同的文档?是140个文件(每个大约7000 x 17个单词)足够吗?或者我应该将每个句子都视为文件。但是每个文件平均只有17个字;很像推文。
任何建议都会有所帮助。 提前致谢。
答案 0 :(得分:0)
我曾在类似的路线上工作过。这种方法可以使用300个这样的文件。但是,要将其提升到更高的规模,您需要使用spark复制该方法。
这里有: 1)准备TF-IDF矩阵:用术语向量表示文档。为什么不使用LDA,因为您需要先提供一些您不了解的主题。如果想要更复杂(比语义更好),你可以使用其他表示文档的方法来尝试word2Vec,GloVe,Google News Vectors等。
2)从上面的TF-IDF准备一个潜在的语义空间。创建LSA使用SVD方法(可以选择kaiser标准来选择维数)。
为什么我们这样做2)?
a)TF-IDF非常稀少。步骤3(tSne),计算量很大。 b)此LSA可用于创建语义搜索引擎
你可以绕过2)当你的TF-IDF尺寸非常小但是我不认为考虑到你的情况就是这样,而且,你没有其他需要,比如进行语义搜索这些文件。
3)使用tSne(t-随机最近嵌入)来表示3维的文档。准备欧几里德坐标的球形图。
4)迭代地应用K-means以找到最佳簇数。
一旦决定。为每个类别准备单词云。有你的主题。