如何解决自定义spacy停用词并保存模型
我正在使用它来将停用词添加到 spacy 的停用词列表中
nlp.Defaults.stop_words |= {"my_new_stopword1","my_new_stopword2",}
但是,当我使用 nlp.to_disk()
保存 nlp 对象并使用 nlp.from_disk()
再次加载它时,
我正在丢失自定义停用词列表。
有没有办法用 nlp 模型保存自定义停用词?
提前致谢
解决方法
大多数语言默认值(停用词、词汇属性和语法迭代器)不会与模型一起保存。
如果要自定义它们,可以创建自定义语言类,请参阅:https://spacy.io/usage/linguistic-features#language-subclass。从此链接复制的示例:
from spacy.lang.en import English
class CustomEnglishDefaults(English.Defaults):
stop_words = set(["custom","stop"])
class CustomEnglish(English):
lang = "custom_en"
Defaults = CustomEnglishDefaults
nlp1 = English()
nlp2 = CustomEnglish()
print(nlp1.lang,[token.is_stop for token in nlp1("custom stop")])
print(nlp2.lang,[token.is_stop for token in nlp2("custom stop")])
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。