2015-11-03 107 views
5

我是NLP的新手。 我正在嘗試示例程序LexicalizedParser,但無法找到模型。Stanford Core NLP LexicalizedParser模型

String parseModel = "...../models/lexparser/englishPCFG.ser.gz"; 
LexicalizedParser lecicalizedParser = LexicalizedParser.loadModel(parseModel); 

我有所需的stanford-core-nlp-3.5.2.jar和樣本Java應用程序的構建路徑的NER罐子了。

我試過引用核心jar的絕對路徑並加載它但不能。 :(

我怎麼可以參考這一模式的確切位置,從我的程序代碼?

非常感謝您的幫助和所有幫助!

回答

4

如果你使用Maven的時候,請確保您有這些都依賴於你pom.xml

<dependency> 
    <groupId>edu.stanford.nlp</groupId> 
    <artifactId>stanford-corenlp</artifactId> 
    <version>3.5.2</version> 
</dependency> 
<dependency> 
    <groupId>edu.stanford.nlp</groupId> 
    <artifactId>stanford-corenlp</artifactId> 
    <version>3.5.2</version> 
    <classifier>models</classifier> 
</dependency> 

這種模式englishPCFG.ser.gz
裏面包edu.stanford.nlp.models.lexparser
是內部stanford-corenlp-3.5.2-models.jar

所以,你應該使用這條道路:我不使用maven此示例測試程序

String parseModel = "edu/stanford/nlp/models/lexparser/englishPCFG.ser.gz" 
+0

。我的構建路徑庫中都有這些庫。但是,通過在罐子內部穿過來訪問模型被證明是艱難的,但是要破解。我忘了一些基本的Java文件訪問是我的擔心。我必須承認。 – dirai

+0

你如何運行你的Java代碼? – StanfordNLPHelp

+0

@stanfordNLPHelp在eclipse中作爲獨立測試程序。我有我的庫項目的lib文件夾直接庫。我想我需要改變這樣的陳述: String parseModel =「../edu/stanford/nlp/models/lexparser/englishPCFG.ser.gz」但我不確定這個模型「englishPCFG.ser.gz」是在core-nlp jar中,或者我需要包含其他jar。在那種情況下,準確的罐子。 – dirai

相關問題