最近在调研一些开源的语法分析软件,其中stanford parser以操作的简便性吸引了我。
安装过程如下:
首先下载源码,地址为:http://nlp.stanford.edu/software/lex-parser.html#Download
选择最新版本下载,点击红框部分进行下载:
下载后进行解压,解压后,打开自己IntelliJ程序,点击File->Project Structure,进入到如下界面,点击进入Modules->Dependencies,点击加号进行添加,选择stanford-parser.jar和stanford-parser-XXX-model.jar。这样就完成了stanford parser的安装。
接下来是调用。我选择代码中调用,其他两种方式调用参见:https://www.cnblogs.com/Denise-hzf/p/6612574.html
代码调用:
Stringmodel_path=model_path;//这里我选择的是新华语料,xinhua是根据大陆的《新华日报》训练的语料,model-path是当时下载的model文件解压后的你所选择的语料路径
String str ="中国的神威太湖之光计算机被用于天气预报、制药研究和工业设计等领域";//输入测试语句
LexicalizedParser lp = LexicalizedParser.loadModel(model_path);
Tree t = lp.parse(str);
t.pennPrint();
ChineseGrammaticalStructure gs =new ChineseGrammaticalStructure(t);//中文语法结构
Collection tdl = gs.typedDependenciesCollapsed();//依存关系分析
System.out.println(tdl.toString());
String s ="";
for (int i=0;i
TypedDependency td = (TypedDependency) tdl.toArray()[i];
String age = td.dep().toString();
s+=age+"/";
s+=" ";
}
System.out.println(s);
运行结果是:
以上就是stanford parser在IntelliJ中的调用。