解决Gensim自带的corpora进行维基百科中文语料数据提取问题
创作时间:
作者:
@小白创作中心
解决Gensim自带的corpora进行维基百科中文语料数据提取问题
引用
CSDN
1.
https://blog.csdn.net/chenghao1012/article/details/139144383
在使用Gensim库处理维基百科中文语料数据时,可能会遇到一些常见的错误和问题。本文将详细介绍这些错误的原因,并提供具体的解决方案,帮助读者顺利地完成语料数据的提取和处理。
错误提示
在尝试使用Gensim自带的corpora进行维基百科中文语料数据提取时,可能会遇到以下错误提示:
NotImplementedError: The lemmatize parameter is no longer supported. If you need to lemmatize, use e.g. <https://github.com/clips/pattern>.
Perform lemmatization as part of your tokenization function and pass it as the tokenizer_func parameter to this initializer.
问题所在
lemmatize 参数:如果你在创建 WikiCorpus 实例时使用了 lemmatize 参数,你需要移除它,因为该参数已不再支持。
dictionary 参数:WikiCorpus 类在 gensim 的最新版本中不接受 dictionary 参数。如果你需要使用自定义词典,你需要在创建 WikiCorpus 对象后,手动处理文本。
get_texts 方法:WikiCorpus 类没有 get_texts 方法。如果你想要获取文本,你需要使用 WikiCorpus 类的 get_texts 静态方法。
解决方法
移除 lemmatize 和 dictionary 参数
使用 WikiCorpus 类的 get_texts 静态方法,用WikiCorpus.get_texts(wiki)替换wiki.get_texts()
其他问题
gensim 库在初始化 WikiCorpus 类时使用了 multiprocessing 来并行处理数据。错误信息表明 gensim 库尝试在主进程的引导阶段结束之前启动新的进程。
要解决这个问题,你可以尝试以下步骤:
- 确保你的Python脚本是作为主模块运行的,而不是作为子模块导入到其他脚本中。
- 如果你的脚本是通过其他Python脚本导入并运行的,确保导入脚本遵循上述模式。
最终运行成功代码
from gensim.corpora import WikiCorpus
import multiprocessing
if __name__ == '__main__':
# 如果你的程序不是被冻结成可执行文件,可以省略下一行
multiprocessing.freeze_support()
space = ""
with open('wiki-zh-article.txt', 'w', encoding="utf8") as f:
wiki = WikiCorpus('zhwiki-latest-pages-articles.xml.bz2') # 移除 lemmatize 和 dictionary 参数
for text in WikiCorpus.get_texts(wiki): # 使用静态方法 get_texts
f.write(space.join(text) + "\n")
print("Finished Saved")
热门推荐
成人维生素D的检测与补充
精神病数字干预新研究:Actissist效果与症状监测无显著差异
Vite和Webpack的区别是什么,你站队谁?
猫咪最害怕什么样的惩罚?这样做反而伤害了它们
儿童乐园设计需要考虑到哪些方面
血小板500多严重吗?一文读懂血小板异常的健康风险
Android手机显示"无服务"怎么办?一文详解多种解决方案
髋关节腔积液怎么治疗比较好的方法
HC-05蓝牙模块与JDY-31蓝牙模块进行主从通信
精神病患者不能考驾驶证?法律这样规定
中医治法的常与变:从整体观念到辨证论治
元宵节舞龙舞狮:传统韵味与现代欢腾的交响
药不能乱吃—药师教你认识药物性肝损伤
行业字号查询:方法、途径与注意事项
如何预防铅中毒?9招减少铅暴露风险
《白鹿原》:白孝文是族长之子,为什么会嫉恨鹿三的儿子黑娃
在白鹿原中黑娃最后的结局如何
(小百科)阿波罗载人登月飞行任务部分遗址
太火爆了!2025春节旅游数据出炉:西安霸榜多个TOP10!
美国研究:主食一换,每年癌死少一半,提倡吃3种主食,建议看看
转移因子口服液的作用、注意事项
电脑卡顿反应慢怎么办 5个方法丝滑上网
怎么给视频配音?3个方法教会你
左束支传导阻滞和右束支传导阻滞区别
早教知识:父母纠正孩子坏习惯的方法介绍
抵抗口腔癌的第一道防线
长春胺缓释胶囊能长期吃吗?作用与注意事项全解析
监理与价格体系全面解析:选择与服务指南
场景原画建模全流程解析:从需求分析到最终优化
深入解析双绞线的种类及其应用