我正在使用它来将停用词添加到 spacy 的停用词列表中
nlp.Defaults.stop_words |= {"my_new_stopword1","my_new_stopword2",}
但是,当我使用保存 nlp 对象并使用nlp.to_disk()
再次加载它时nlp.from_disk()
,我丢失了自定义停用词列表。有没有办法用 nlp 模型保存自定义停用词?
提前致谢
我正在使用它来将停用词添加到 spacy 的停用词列表中
nlp.Defaults.stop_words |= {"my_new_stopword1","my_new_stopword2",}
但是,当我使用保存 nlp 对象并使用nlp.to_disk()
再次加载它时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")])