Python + NLTK可以用来识别句子的主语吗?从我所学到的,到现在为止,一句话可以被分解成一个头及其家属.例如"我拍了一头大象".在这句话中,我和大象是家属拍摄的.但我怎么辨别这句话中的主语是我.
Soh*_*han 18
你可以使用Spacy.
import spacy
nlp = spacy.load('en')
sent = "I shot an elephant"
doc=nlp(sent)
sub_toks = [tok for tok in doc if (tok.dep_ == "nsubj") ]
print(sub_toks)
Run Code Online (Sandbox Code Playgroud)
英语有两种声音:主动语态和被动语态.让我们采用最常用的语音:主动语音.
它遵循subject-verb-object模型.要标记主题,请编写带有POS标记的规则集.标记句子I[NOUN] shot[VERB] an elephant[NOUN].如果你看到第一个名词是主语,那么就有一个动词然后有一个对象.
如果你想让它更复杂,一句话 - I shot an elephant with a gun.在这里,介词或从属连词如with,at,in可以被赋予角色.这句话将被标记为I[NOUN] shot[VERB] an elephant[NOUN] with[IN] a gun[NOUN].你可以很容易地说这个词有助于发挥作用.您可以构建一个基于规则的系统来获取句子中每个单词的作用.
还要看一下被动语态中的模式和写入规则.
| 归档时间: |
|
| 查看次数: |
16650 次 |
| 最近记录: |