我使用gensim在Wikipedia语料库上训练了doc2vec模型,我希望从不同的文档中检索向量。
我想知道当我使用它来训练我的模型时,WikiCorpus功能处理了什么文本,例如删除标点符号,使所有文本小写,删除停用词等。
这很重要,因为我希望对我推测的文件执行相同的文本处理,以便与我的模型更加一致/准确。
要准确了解所做的工作,您最好的参考资料是WikiCorpus
本身的源代码,您可以在本地安装中查看,或者在线访问:
https://github.com/RaRe-Technologies/gensim/blob/develop/gensim/corpora/wikicorpus.py
该文件中用于处理原始维基百科转储数据的关键函数包括process_article()
,filter_wiki()
和remove_markup()
- 最终还使用本地tokenize()
函数,然后依赖于tokenize()
模块中的另一个gensim.utils
。
而且,WikiCorpus
确实称utils.tokenize()
用lower=True
参数强制降低外壳。
此外,utils.tokenize()
使用simple_tokenize()
函数,虽然它没有明确删除标点符号的步骤,但是通过PAT_ALPHABETIC
regex查找令牌,\w
选择不以数字开头的单词字符(\d
)构成的令牌(qazxswpoi) 。