2017-09-07 1 views
0

일부 문장의 머리말을 찾으려고합니다. 그러나 다른 구 유형에 대해서는 예외적으로 No head rule defined이 있습니다. 일부 구문 유형은 저에게 중요하지 않으므로 if 절로 tham을 무시할 수 있습니다. 그러나 예를 들어, AP (Adjective Phrase)은 저에게 중요하며 그러한 문구의 선두 단어를 갖고 싶습니다. 그것에 관한 어떤 도움이나 생각? 내 java 코드에서 나는 Stanford CoreNLP (3.8)의 최신 버전을 사용하고Stanford CoreNLP를 사용하여 문장을 구문 분석 할 때 AP에 대해 정의 된 머리말 규칙이 없습니다.

HeadFinder hf = new UniversalSemanticHeadFinder(); 
    hf.determineHead(oneTree, mainTree); 

하고 코드 영어 문장과 함께 완벽하게 작동합니다 :

나는 다음과 같은 코드를 사용하고 있습니다.

최고,

답변

0

다른 구성 라벨 세트를 사용하고있는 것으로 보입니다. 헤드 파인더는 Penn Treebank (PTB) 형식의 나무 용으로 개발되었습니다. 예를 들어 형용사로는 ADJP이라는 레이블을 사용합니다. this page에 PTB 라벨 세트 및 그 설명이 있습니다.

+0

답변 해 주셔서 감사합니다. Stanford CoreNLP HeadFinder가 독일어로 개발되지 않았거나 잘못된 모델을 사용하고 있습니까? 저는 독일어로 "german-fast.tagger"와 "germanSR.ser.gz"를 사용하고 있습니다. 이 모델들은 나에게 "Adjective Phrase"에 대해 "AP"를줍니다. 잘못 사용하고 있습니까? – user1419243

+0

예, 불행히도 각 트리 뱅크 주석 스키마에 대한 헤드 파인더를 개발해야하며 독일 트리 뱅크에 대한 헤드 파인더가 없습니다. 즉, 'UniversalSemanticHeadFinder()'를 독일어로 변형하는 것이 너무 어렵지 않아야한다고 생각합니다. (구현을 마치면 CoreNLP에 포함시켜 드리겠습니다.) –

관련 문제