当前位置:   article > 正文

句法分析和依存句法分析(Python实现)_nltk依存句法分析

nltk依存句法分析

文章目录

环境

  1. Python3安装
  2. nltk库安装
    在cmd中输入pip install nltk,如果显示pip不是内部或外部命令,那就是未配置环境变量,自行百度。
  3. 下载StanfordParser
    在这里插入图片描述

下载好进行解压,得到文件夹stanford-parser-full-2018-10-17,文件夹的内容如下:

在这里插入图片描述
解压文件夹中的stanford-parser-3.9.2-models.jar在这里插入图片描述
得到在这里插入图片描述

使用

import os
from nltk.parse import stanford

# 这里的三个引用文件都是根据我的目录来的
# 只需要根据你的实际目录更改D:\Google\stanford-parser-full-2018-10-17即可
os.environ['STANFORD_PARSER'] = r"D:\Google\stanford-parser-full-2018-10-17\stanford-parser.jar"
os.environ['STANFORD_MODELS'] = r"D:\Google\stanford-parser-full-2018-10-17\stanford-parser-3.9.2-models.jar"
parser = stanford.StanfordDependencyParser(model_path=r"D:\Google\stanford-parser-full-2018-10-17\edu\stanford\nlp\models\lexparser\chinesePCFG.ser.gz")

res = list(parser.parse(['我','爱','NLP']))
for row in res[0].triples():
    print(row)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

输出:

(('爱', 'VV'), 'nsubj', ('我', 'PN'))
(('爱', 'VV'), 'dobj', ('NLP', 'NN'))
  • 1
  • 2

('爱', 'VV')表示是句子中的VV(动词)
('我', 'PN')表示是句子中的PN(代词)
('NLP', 'NN')表示NLP是句子中的NN(名词)

nsubj表示名词主语
dobj表示NLP直接宾语

更多句法符号表示见https://www.jianshu.com/p/5c461cf096c4

Reference

  1. https://blog.csdn.net/lizzy05/article/details/88148097
  2. https://blog.csdn.net/qq_41618091/article/details/97239505
  3. https://nlp.stanford.edu/software/lex-parser.shtml#Download
  4. https://blog.csdn.net/lihaitao000/article/details/51812618
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/348919
推荐阅读
相关标签
  

闽ICP备14008679号