Stanford CoreNLP Morphology.stemStatic забранява преобразуването на малки букви?

Коментарите относно метода stemStatic на класа Morphology гласят, че той ще:

връща нов WordTag, който има лемата като стойност на word().
По подразбиране несобствените съществителни имена са малки букви, освен ако не са зададени опции.

(https://github.com/evandrix/stanford-corenlp/blob/master/src/edu/stanford/nlp/process/Morphology.java)

Как/къде мога да задам тези опции, за да деактивирам преобразуването на малки букви?

Прегледах източника, но не виждам как мога да задам опции, които ще повлияят на този статичен метод. Разочароващо, свързаният метод за статична лематизация -- lemmaStatic -- включва булев параметър, за да направи точно това...

Използвам v3.3.1 чрез Maven...

Благодаря!


person Darrell Berry    schedule 09.07.2015    source източник


Отговори (1)


Добре, след като разгледах това за малко, изглежда правилният път може да е да не се използва статичен метод, а вместо това да се изгради екземпляр на Morphology с:

public Morphology(Reader in, int flags) {

Флаговете int ще задават lexer.options.

Ето опциите на лексера (от Morpha.java):

/** If this option is set, print the word affix after a + character */
private final static int print_affixes = 0;  
/** If this option is set, lowercase all tokens */
private final static int change_case = 1;
/** Return the tags on the input words if present?? */
private final static int tag_output= 2;

Флаговете int са битовият низ за 3-те опции, така че 7 = 111, което означава, че всички опции ще бъдат зададени на true, 0 = 000, всички опции са false, 5 = 101 ще зададе print_affixes и tag_output и т.н...

След това можете да използвате apply в Morphology.java

public Object apply(Object in) {

Обектът в трябва да бъде WordTag, изграден с оригиналната дума и етикет.

Моля, уведомете ме, ако имате нужда от допълнителна помощ!

Можем също така да променим Morphology.java, за да има метода, който искате! Горното е, ако не искате да си играете с персонализирането на Stanford CoreNLP.

person StanfordNLPHelp    schedule 12.07.2015