Как установить простой API Stanford-NLP на французском языке? - PullRequest
0 голосов
/ 08 апреля 2019

Я пытаюсь использовать stanford-nlp на французском в netbeans. Я использую netbeans 10.0 и stanford-nlp 3.9.2.

Я использую maven, и я установил эту зависимость в моем pom.

<dependency>
    <groupId>edu.stanford.nlp</groupId>
    <artifactId>stanford-corenlp</artifactId>
    <version>3.9.2</version>
    <type>jar</type>
</dependency>
<dependency>
    <groupId>edu.stanford.nlp</groupId>
    <artifactId>stanford-corenlp</artifactId>
    <version>3.9.2</version>
    <classifier>models</classifier>
</dependency>
<dependency>
    <groupId>edu.stanford.nlp</groupId>
    <artifactId>stanford-corenlp</artifactId>
    <version>3.9.2</version>
    <classifier>models-french</classifier>
</dependency

И пример кода в Java.

Document doc = new Document(props_fr,"Ceci est mon texte en français. Il contient plusieurs phrases.");
        for (Sentence sent : doc.sentences()) {
            System.out.println(sent.parse());
        }

Я ожидаю, что выход будет (используя http://nlp.stanford.edu:8080/parser/):

(ROOT (отправлено (NP (PRO Ceci)) (VN (V est)) (NP (DET mon) NC texte)) (PP (P ru) (NP (NC français))) (PUNC.)))

(ROOT (ОТПРАВЛЕНО (VN (CLS Il) (V contient)) (NP (DET plusieurs) (NC фразы)) (PUNC.)))

Но фактический результат:

(ROOT (NP (NP (NNP Ceci) (NNP est)) (NP (NP (NN mon) (NN texte)) (PP (IN en) (NP (NN français)))) (..))) (ROOT (NP (NP (NN Il))) (NP (JJ) contient) (NNS plusieurs) (фразы NNS)) (..)))

1 Ответ

0 голосов
/ 08 апреля 2019

Вы пытались загрузить StanfordCoreNLP-french.properties?

Properties props = new Properties();
props.load(IOUtils.readerFromString("StanfordCoreNLP-french.properties"));
StanfordCoreNLP corenlp = new StanfordCoreNLP(props);

Annotation ann = corenlp.process("Ceci est mon texte en français. Il contient plusieurs phrases.");
Document doc = new Document(props, ann);
...