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