2015-03-20 2 views
1

Я хотел бы использовать структурированную информацию, которую я имею в форме XML для обучения модели CRF для пакета Stanford NLP. XML выглядит примерно так:Преобразование XML для использования в качестве учебного набора для распознавания именных имен (NER)

<dates> 
    <date>Advance Access publication on 
     <month>July</month> 
     <day>11</day>, 
     <year>2007</year> 
    </date> 
</dates> 

По http://nlp.stanford.edu/software/crf-faq.shtml#a я мог бы использовать

java -cp stanford-ner.jar edu.stanford.nlp.process.PTBTokenizer sample.xml > date.tok 

, чтобы мои жетоны. Но как я могу использовать инкапсуляцию XML, чтобы автоматически пометить мои токены соответствующим классом?

Есть ли такая поддержка/процесс в пакете NLP в Stanford, или мне лучше писать свой токен-файл вручную (например, с помощью XSLT)?

ответ

0

Я не знаю этот формат XML. Если это обычный стандарт, вы можете найти конвертер - вы хотите конвертировать в кодировку «IO» или «IOB», с которой работает Stanford NER. В противном случае вам придется делать это вручную.

Вот пример кодирования IO: есть одно слово на строку, каждый с соответствующим тегом NER. Этот тег является либо «O» (без метки), либо определенной меткой NER. Обратите внимание, что предложения разделяются пустой строкой.

I O 
complained O 
to O 
Microsoft ORGANIZATION 
about O 
Bill PERSON 
Gates PERSON 
. O 

They O 
told O 
me O 
to O 
see O 
the O 
mayor O 
of O 
New LOCATION 
York LOCATION 
. O