热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python–Spacy:保存已解析的模型

我正在使用Spacy,它是一个Python自然语言处理库,将原始文本解析为这种更复杂的面向对象格式,更具体地说是依赖树.上面的操作需要一段时间才能执行:我需要加载一个非常昂贵的模型

我正在使用Spacy,它是一个Python自然语言处理库,将原始文本解析为这种更复杂的面向对象格式,更具体地说是依赖树.

上面的操作需要一段时间才能执行:我需要加载一个非常昂贵的模型,然后解析大量的文本.我宁愿在后续执行中节省一些时间,以便在完成初始解析后更快地迭代处理数据.

如何在第一次运行后“保存”这些结果,然后在后续运行中更快地重新加载这些预处理版本?

PICKLE:当尝试使用pickle时,我得到以下错误反序列化Docs / Tokens类:

File "spacy/tokens/token.pyx", line 56, in spacy.tokens.token.Token.__cinit__ (spacy/tokens/token.cpp:3868)
TypeError: __cinit__() takes exactly 3 positional arguments (0 given)

谢谢.

解决方法:

没有pickle解决方案,但我过去写过this script将SpaCy输出存储为XML(NAF格式).

根据您的管道,您还可以尝试以CoNLL格式存储输出(例如CoNLL-U).这使得您的代码可以与许多其他NLP工具互操作,这很棒,因为您可以毫无问题地更改解析器.

我没有这方面的示例代码,但过程应该类似.


推荐阅读
author-avatar
奄奄的栀子花
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有