我嘗試了一個在Spacy網站https://spacy.io/docs/usage/dependency-parse上給出的解析示例,但是我的結果與網站上演示的結果不一樣,並且我的結果顯示不正確。我正在使用空間版本1.9.0,模型en_core_web_md和python版本3.5.2。該示例轉載如下:SpaCy結果與文檔不匹配
from spacy.symbols import nsubj
doc = nlp(u'Credit and mortgage account holders must submit their requests.')
holders = doc[4]
span = doc[holders.left_edge.i : holders.right_edge.i + 1]
span.merge()
span.merge()的輸出被
holders
然後繼續該示例:
for word in doc:
print(word.text, word.pos_, word.dep_, word.head.text)
並且輸出是
Credit NOUN npadvmod submit
and CCONJ cc Credit
mortgage NOUN compound account
account NOUN conj Credit
holders NOUN nsubj submit
must VERB aux submit
submit VERB ROOT submit
their ADJ poss requests
requests NOUN dobj submit
. PUNCT punct submit
但是,網站演示SA不同的輸出:讓span.merge給了我們一個短語
# Credit and mortgage account holders nsubj NOUN submit
# must VERB aux submit
# submit VERB ROOT submit
# their DET det requests
# requests NOUN dobj submit
在預期的結果,holders.lefts.i和holders.rights.i不相同
此外,我打印名詞 - 原來的文檔對象的大塊:
doc = nlp(u'Credit and mortgage account holders must submit their requests.')
for nchunk in list(doc.noun_chunks):
print(nchunk)
這給
holders
their requests
我是全新的,以spacy和NLP。請原諒,如果我錯過了一些明顯的事情。
如果您的意思是它在演示中給出了不同的結果,那麼這是可能的。他們有幾個版本(雖然我不確定他們正在使用他們的網站)。 – lazary