2017-02-10 1 views
1

Standford Core NLP를 사용하여 "hello world"를 실행하여 텍스트에서 명명 된 엔티티를 가져옵니다. 그러나 "Ixhuatlancillo"또는 "Veracruz"와 같은 일부 장소는 올바르게 인식되지 않으므로 LUG (장소)로 표시해야하는 도시는 모두 ORG로 표시됩니다. 스페인어 또는 모델을 확장하여 Mécoico에서 장소 (도시)를 추가하고 사람 이름을 추가하고 싶습니다. 어떻게해야합니까?스탠포드 coreNLP 스페인어 모델/사전을 확장하는 방법

미리 감사드립니다.

+0

다음은 사전에 항목을 추가 할 수있는 RegexNER 어노 테이터에 대한 유용한 설명서입니다. http://nlp.stanford.edu/software/regexner.html – StanfordNLPHelp

답변

1

가장 빠르고 쉬운 방법은 regexner 어노 테이터를 사용하는 것입니다. 이를 사용하여 수동으로 사전을 빌드 할 수 있습니다. 여기

이 예시 룰 형식 2

토큰 시퀀스 태그의 태그 즉 - - - 덮어 쓰기 가능

시스템 관리자 TITLE의 MISC (탭으로 분리, 첫 번째 열은 단어의 임의의 수가 될 수 있음) 우선 순위

위의 규칙은 텍스트에서 "시스템 관리자"를 TITLE (으)로 표시합니다. 귀하의 경우를 들어

:

베라 크루즈 LUG MISC, ORG, PERS 2

이 사전이 MISC, 여러 조직 및 PERS를 덮어 쓸 수 있습니다. 세 번째 열에 추가 태그를 추가하지 않으면 이전에 태그가 지정된 태그를 덮어 쓰지 않습니다. regexner.ignorecase는 대소 문자를 구별 일치를 만들기 위해 의미

java -Xmx8g edu.stanford.nlp.pipeline.StanfordCoreNLP -annotators tokenize,ssplit,pos,lemma,ner,regexner -props StanfordCoreNLP-spanish.properties -regexner.mapping /path/to/new_spanish.rules - regexner.ignorecase -regexner.validpospattern "^(NN|JJ|NNP).*" -outputFormat text -file sample-text.txt 

하는 것으로하고, -regexner.validpospattern 경우에만 지정된 POS 태그 패턴 시퀀스와 일치해야합니다 말하고있다 :

당신은 그것을 실행하려면이 같은 명령을 사용할 수 있습니다.

이 모든

는 그냥 문장에서 실행했다되고 :

Ella fue a Veracruz. 

그것은 제대로 태그. 베라 크루즈에게 잘못된 태그를 유발 한 문장이 무엇인지 알려 주실 수 있습니까?

+0

구문 분석하는 텍스트의 일부는 다음과 같습니다. ** Nombre : 마리오 Ezequiel Villalobos Gallegos. 방향 : Luis Donaldo Colosio No.56, José Ma Col. 모렐 로스 Y 파본, Ixhuatlancillo, 베라 크루즈 Correo의 electrónico : [email protected] CURP : XXXX801015XXCLLR08의 RFC : XXXX801015XX8 ** "Ixhualancillo는"올바른 레이블을 얻을 수 있지만, "베라 크루즈는"아직 ORG으로 표시됩니다. "Ixhuatlancillo, Veracruz"텍스트 만 구문 분석하면 두 위치 모두 올바르게 레이블이 지정됩니다. 텍스트 길이에 문제가있을 수 있습니까? –

+0

또 다른 질문, 예제에서 2 번을 어떻게 사용합니까? : ** Veracruz LUG MISC, ORG, PERS 2 ** –

+0

다음은 규칙 형식에 대한 전체 설명입니다. http://nlp.stanford.edu/nlp /javadoc/javanlp/edu/stanford/nlp/pipeline/TokensRegexNERAnnotator.html – StanfordNLPHelp

관련 문제