NLTK中使用Stanford parser

5 篇文章 0 订阅
2 篇文章 0 订阅

原文链接:http://blog.csdn.net/qq_19670461/article/details/42681551

nltk工具包中有一个用于自然语言句法分析的文件夹parse(地址C:\Python27\Lib\site-packages\nltk\parse\stanford.py)。其中stanford.py就是我们要用的stanford parser的源文件,这里面有parser的接口,直接使用可以进行最简单的句法分析。

步骤
1.下载stanford最新版本,最新版本为stanford-parser-full-2014-10-31。下载地址:http://nlp.stanford.edu/software/lex-parser.shtml#Download
2.打开下载好的压缩包,进入/edu/stanford/nlp/models/lexparser/,找到englishPCFG.ser.gz 并解压到某处(比如我的地址为E:/stanford-parser-full-2014-10-31/stanford-parser-3.5.0-models/edu/stanford/nlp/models/lexparser/englishPCFG.ser.gz)。
3.新建jars文件夹(比如我的地址为E:/jars),将stanford文件夹中的stanford-parser.jar, stanford-parser-3.4.1-sources.jar, stanford-parser-3.4.1-javadoc.jar拷贝进来。
4.执行代码查看结果。

import os
from nltk.parse import stanford

#添加stanford环境变量,此处需要手动修改,jar包地址为绝对地址。
os.environ['STANFORD_PARSER'] = 'E:/jars/stanford-parser.jar'
os.environ['STANFORD_MODELS'] = 'E:/jars/stanford-parser-3.5.0-models.jar'


#为JAVAHOME添加环境变量
java_path = "C:/Program Files (x86)/Java/jdk1.8.0_11/bin/java.exe"
os.environ['JAVAHOME'] = java_path

#句法标注
parser = stanford.StanfordParser(model_path="E:/stanford-parser-full-2014-10-31/stanford-parser-3.5.0-models/edu/stanford/nlp/models/lexparser/englishPCFG.ser.gz")
sentences = parser.parse_sents("Hello, My name is Melroy.".split(), "What is your name?".split())
print sentences

# GUI
for sentence in sentences:
    sentence.draw()

参考
http://stackoverflow.com/questions/13883277/stanford-parser-and-nltk

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值