Gensim提供对计算机和调用者友好,自动从文档中抽取语义主题的免费Python库。 Gensim处理原始数据、非结构化文本数据。Gensim中使用的算法包括潜在语义分析、潜在狄利克雷分布和随机预测,通过训练文档中的词的共现分布情况发现文本语义结构。这些算法是非监督的,在使用的时候不需要输入额外的数据,只需要输入语料即可。 一旦这些语料的统计分布模式确定,即可以比较不同文档之间的主题相似度。
Gensim的核心概念包括:语料库、向量和模型。
文档集合,用于推断文档结构和文档主题等,也叫做训练语料库。训练语料库训练好之后可以用于计算新文档的主题。训练语料库不需要进行人工标注。
在向量空间中,每一个文档都用一个特征数组表示。例如,下面的每一个特征都用一对问答对表示:
1.How many times does the word splonge appear in the document? 0.
2.How many paragraphs does the document consist of? 2.
3.How many fonts does the document use? 5.
每一个问题用整数1,2,3表示,那么整个文档可以表示为:(1,0),(2,2),(3,5)。进一步的,可以省略问题ID,直接表示为(0,2,5)。这样文档就可以用一个三维数组表示了。
通常情况下,文档中的大多数特征都是0。为了节省空间,通常在表示文档的时候将特征为0的维度省略,比如:(2,2),(3,5)。虽然省略了0,但是因为特征都是已知的,所以在恢复的时候可以把为0的特征恢复。
模型从训练语料中学习得到,将原始语料库的向量表示转换为另一个向量。