Entitymention, похоже, не работает. Я следовал подобному подходу, упомянутому здесь, добавив entitymentions
как один из annotators
Как я могу обнаружить именованные объекты, которые имеют более 1 слова, используя RegexNER от CoreNLP?
Ввод: «Вот ваши 24 доллара»
У меня есть TokensRegex:
{ ruleType: "tokens", pattern: ([{ner:"NUMBER"}] + [{word:"USD"}]), action: Annotate($0, ner, "NEW_MONEY"), result: "NEW_MONEY_RESULT" }
Инициативный конвейер:
props.setProperty("annotators", "tokenize,ssplit,pos,lemma,ner,tokensregex,entitymentions");
props.setProperty("tokensregex.rules", "basic_ner.rules");
Я все еще получил 2 CoreEntityMention вместо 1.
Оба они имеют одинаковое значение для edu.stanford.nlp.ling.CoreAnnotations$NamedEntityTagAnnotation
, равное NEW_MONEY
но у них разные edu.stanford.nlp.ling.CoreAnnotations$EntityMentionIndexAnnotation
, что 0
для 24
1
для USD
Как их можно объединить, так как они имеют одинаковую аннотацию тега сущности.
3.9.2
используется версия библиотеки Стэнфорда.