我已经使用gensim在Wikipedia语料库上训练了一个doc2vec模型,我希望从不同的文档中检索向量。
我想知道当我使用WikiCorpus函数训练模型时会处理什么文本。删除标点符号,使所有文本都变为小写,删除停用词等。
这很重要,因为我希望对要从中推断出矢量的文档执行相同的文本处理,以提高与模型的一致性/准确性。
答案 0 :(得分:1)
要确切地了解已完成的操作,最好的参考是WikiCorpus
本身的源代码,您可以在本地安装中查看该源代码,也可以在线访问以下网址:
https://github.com/RaRe-Technologies/gensim/blob/develop/gensim/corpora/wikicorpus.py
该文件中用于处理原始Wikipedia转储数据的关键函数包括process_article()
,filter_wiki()
和remove_markup()
–最终还使用了本地tokenize()
函数,然后依赖于tokenize()
模块中的另一个gensim.utils
。
而且,WikiCorpus
实际上确实使用utils.tokenize()
参数调用了lower=True
以强制使用小写字母。
此外,utils.tokenize()
使用了simple_tokenize()
函数,尽管它没有明确删除标点符号的步骤,但通过PAT_ALPHABETIC
regex查找由单词组成的标记的标记-不以数字(\w
开头的字符(\d
)。