国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > 服务器 > Stanford Parser 进行词法语法分析的详细使用

Stanford Parser 进行词法语法分析的详细使用

来源:程序员人生   发布时间:2015-01-26 09:08:27 阅读次数:4683次

http://blog.csdn.net/pipisorry/article/details/42976457

stanford-parser的使用

1、到斯坦福官方网站http://nlp.stanford.edu/software/lex-parser.shtml下载软件包,解压。

2、在eclipse中新建1个java project,把解压得到根目录下的stanford-parser.jar和stanford-parser⑶.*.*-models.jar两个包导入项目到项目援用包中,

然后把解压得到根目录下的ParserDemo.java文件拷贝到项目的src中


DEMO的使用

 1、直接运行该实例程序(英文语法解析):

1.直接点击run就能够运行

2.如果要String[] sent从文本输入:

eclipse > run > run configuration > arguments > program arguments:

输入: edu/stanford/nlp/models/lexparser/englishPCFG.ser.gzC:UsersminglanDesktoptest2.txt

test2.txt:

The screen is really big, but the price is too expensive!
The price is expensive, students don't buy it usually.
The screen is beautiful, but the price is not!
The screen is big and beautiful!

3.如果要测试中文的话,要以下修改:

(1)按需要把输入改成要测试中文:

String[] sent = {  "这""是""第1个""测试""句子""。" };

(2)导入中文的解析模型文件:

Stringgrammar = args.length > 0 ? args[0] : "edu/stanford/nlp/models/lexparser/chinesePCFG.ser.gz";

(3)修改源文件中的部份代码:

TreebankLanguagePacktlp = new ChineseTreebankLanguagePack();//PennTreebankLanguagePack(); 

如果报错没有retainTmpSubcategories参数,在源文件中注释掉该参数:

String[] options = {"-maxLength""80"};//, "-retainTmpSubcategories" }; 

 

2、Stanford Parser自带图形化操作界面

在windows操作系统下只要双击运行软件根目录下的lexparser-gui.bat文件(linux下为lexparser-gui.sh文件)

点击“Load File”导入需要解析文件也能够直接在上面大的输入框中输入要解析内容,

在“Language”选项当选择对应解析的语言

点击“Load Parser”载入模型文件,稍等片刻(载入模型文件可能需要几秒钟)进度条完成载入后“Parser”按钮变成可用状态,点击便可解上输入框中高亮的内容,解析得到的树形结果在下框中显示,

可以把结果输出另存为文件。


3、Stanford Parser还提供了命令行的方式lexparser-gui.bat(win)和lexparser.sh(linux)具体使用见官方文档:Stanford Parser FAQ


4、Stanford Parser有个在线的解释效果示例在:http://nlp.stanford.edu:8080/parser/index.jsp


相干设置

Stanford parser句法树分析时候占用内存可能较大,所以要调剂eclipse虚拟内存空间,方法是在“运行――运行――自变量――VM自变量中填上-Xms256M -Xmx800M”,大小就要看实际情况和机子性能。

当句子较长时会出现报“FactoredParser: exceeded MAX_ITEMS work limit [200000 items]; aborting.”毛病...

在options中把MAX_ITEMS设为1个更大的书,以下例子中为500000

[java] view plaincopy
  1. String[] options = { "-maxLength""140""-MAX_ITEMS","500000"};  
[java] view plaincopy
  1. lp = LexicalizedParser.loadModel("edu/stanford/nlp/models/lexparser/", options);  
解决办法参考:http://blog.amelielee.com/archives/140。


经常使用的标注解释

CC: conjunction, coordinatin 表示连词
CD: numeral, cardinal 表示基数词
DT: determiner 表示限定词
EX: existential there 存在句
FW: foreign word 外来词
IN: preposition or conjunction, subordinating 介词或从属连词
JJ: adjective or numeral, ordinal 形容词或序数词
JJR: adjective, comparative 形容词比较级
JJS: adjective, superlative 形容词最高级
LS: list item marker 列表标识
MD: modal auxiliary 情态助动词
NN: noun, common, singular or mass
NNS: noun, common, plural
NNP: noun, proper, singular
NNPS: noun, proper, plural
PDT: pre-determiner 前位限定词
POS: genitive marker 所有格标记
PRP: pronoun, personal 人称代词
PRP$: pronoun, possessive 所有格代词
RB: adverb 副词
RBR: adverb, comparative 副词比较级
RBS: adverb, superlative 副词最高级
RP: particle 小品词
SYM: symbol 符号
TO:"to" as preposition or infinitive marker 作为介词或不定式标记
UH: interjection 插入语
VB: verb, base form
VBD: verb, past tense
VBG: verb, present participle or gerund
VBN: verb, past participle
VBP: verb, present tense, not 3rd person singular
VBZ: verb, present tense,3rd person singular
WDT: WH-determiner WH限定词
WP: WH-pronoun WH代词
WP$: WH-pronoun, possessive WH所有格代词
WRB:Wh-adverb WH副词

ROOT:要处理文本的语句
IP:简单从句
NP:名词短语
VP:动词短语
PU:断句符,通常是句号、问号、感叹号等标点符号
LCP:方位词短语
PP:介词短语
CP:由‘的’构成的表示修饰性关系的短语
DNP:由‘的’构成的表示所属关系的短语
ADVP:副词短语
ADJP:形容词短语
DP:限定词短语
QP:量词短语
NN:经常使用名词
NR:固着名词
NT:时间名词
PN:代词
VV:动词
VC:是
CC:表示连词
VE:有
VA:表语形容词
AS:内容标记(如:了)
VRD:动补复合词
CD: 表示基数词
DT: determiner 表示限定词
EX: existential there 存在句
FW: foreign word 外来词
IN: preposition or conjunction, subordinating 介词或从属连词
JJ: adjective or numeral, ordinal 形容词或序数词
JJR: adjective, comparative 形容词比较级
JJS: adjective, superlative 形容词最高级
LS: list item marker 列表标识
MD: modal auxiliary 情态助动词
PDT: pre-determiner 前位限定词
POS: genitive marker 所有格标记
PRP: pronoun, personal 人称代词
RB: adverb 副词
RBR: adverb, comparative 副词比较级
RBS: adverb, superlative 副词最高级
RP: particle 小品词 
SYM: symbol 符号
TO:”to” as preposition or infinitive marker 作为介词或不定式标记 
WDT: WH-determiner WH限定词
WP: WH-pronoun WH代词
WP$: WH-pronoun, possessive WH所有格代词
WRB:Wh-adverb WH副词
 
关系表示
abbrev: abbreviation modifier,缩写
acomp: adjectival complement,形容词的补充;
advcl : adverbial clause modifier,状语从句修饰词
advmod: adverbial modifier状语
agent: agent,代理,1般有by的时候会出现这个
amod: adjectival modifier形容词
appos: appositional modifier,同位词
attr: attributive,属性
aux: auxiliary,非主要动词和助词,如BE,HAVE SHOULD/COULD等到
auxpass: passive auxiliary 被动词
cc: coordination,并列关系,1般取第1个词
ccomp: clausal complement从句补充
complm: complementizer,引导从句的词好重聚中的主要动词
conj : conjunct,连接两个并列的词。
cop: copula。系动词(如be,seem,appear等),(命题主词与谓词间的)连系
csubj : clausal subject,从主关系
csubjpass: clausal passive subject 主从被动关系
dep: dependent依赖关系
det: determiner决定词,如冠词等
dobj : direct object直接宾语
expl: expletive,主要是抓取there
infmod: infinitival modifier,动词不定式
iobj : indirect object,非直接宾语,也就是所以的间接宾语;
mark: marker,主要出现在有“that” or “whether”“because”, “when”,
mwe: multi-word expression,多个词的表示
neg: negation modifier否定词
nn: noun compound modifier名词组合情势
npadvmod: noun phrase as adverbial modifier名词作状语
nsubj : nominal subject,名词主语
nsubjpass: passive nominal subject,被动的名词主语
num: numeric modifier,数值修饰
number: element of compound number,组合数字
parataxis: parataxis: parataxis,并列关系
partmod: participial modifier动词情势的修饰
pcomp: prepositional complement,介词补充
pobj : object of a preposition,介词的宾语
poss: possession modifier,所有情势,所有格,所属
possessive: possessive modifier,这个表示所有者和那个’S的关系
preconj : preconjunct,常常是出现在 “either”, “both”, “neither”的情况下
predet: predeterminer,前缀决定,常常是表示所有
prep: prepositional modifier
prepc: prepositional clausal modifier
prt: phrasal verb particle,动词短语
punct: punctuation,这个很少见,但是保存下来了,结果当中不会出现这个
purpcl : purpose clause modifier,目的从句
quantmod: quantifier phrase modifier,数量短语
rcmod: relative clause modifier相干关系
ref : referent,唆使物,指代
rel : relative
root: root,最重要的词,从它开始,根节点
tmod: temporal modifier
xcomp: open clausal complement
xsubj : controlling subject 掌控者

【Stanford Parser 标记含义

POS Tagging


PS:

Stanford CoreNLP API Documentation


from:http://blog.csdn.net/pipisorry/article/details/42976457

ref:http://www.verydemo.com/demo_c173_i1328.html


生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生