我想使用SpaCy分析许多小文本,我想存储nlp结果以供进一步使用,以节省处理时间.我在Storing and Loading spaCy Documents Containing Word Vectors处找到了代码,但我遇到了一个错误,我找不到如何修复它.我对python相当陌生.
在下面的代码中,我将nlp结果存储到一个文件中,并try 再次读取它.我可以写第一个文件,但找不到第二个文件(vocab).我还有两个错误:Doc
和Vocab
没有定义.
任何修复这种或其他方法以达到相同结果的 idea 都是非常受欢迎的.
谢谢
import spacy
nlp = spacy.load('en_core_web_md')
doc = nlp("He eats a green apple")
for token in doc:
print(token.text, token.lemma_, token.pos_, token.tag_, token.dep_,
token.shape_, token.is_alpha, token.is_stop)
NLP_FName = "E:\\SaveTest.nlp"
doc.to_disk(NLP_FName)
Vocab_FName = "E:\\SaveTest.voc"
doc.vocab.to_disk(Vocab_FName)
#To read the data again:
idoc = Doc(Vocab()).from_disk(NLP_FName)
idoc.vocab.from_disk(Vocab_FName)
for token in idoc:
print(token.text, token.lemma_, token.pos_, token.tag_, token.dep_,
token.shape_, token.is_alpha, token.is_stop)