微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

我正在使用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工具互操作,这很棒,因为您可以毫无问题地更改解析器.

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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐