2015-03-06 3 views
0

Я пытаюсь извлечь именованные объекты (людей, лиц и организаций) с помощью LingPipe и после this tutorial. Вот full text, что я пытаюсь извлечь имена из и здесь код (обработка исключений опущена для краткости):LingPipe Named Entity Recognizer выводит много несоответствий

Chunker chunker = readChunker("/path-to-chunker"); // custom method for 
                reading the model 
String article = "Some long news article spanning multiple lines..."; 

Chunking chunking = chunker.chunk(article); 
Set<Chunk> chunkingSet = chunking.chunkSet(); 
for (Chunk chunk : chunkingSet) { 
    String name = article.substring(chunk.start(), chunk.end())); 
    System.out.println(name); 
} 

И это (часть) на выходе я получаю:

Tony Abbott 
Indonesia 
Joko Widodo 
Sukumaran 
Andrew Chan 
Bali. 
pair 
the Bali 
Nusa Kambangan 
Indonesian 
Indonesian 
I’ 
Widodo. I 
” Abbott 
Julie Bishop 
Widodo 
al-Jazeera 
Sukumaran 
Chan 
Bishop 
” 

Как вы можете видеть, есть много несовпадений/частичного совпадения, как Bali., pair, the Bali, I', Widodo. I, " Abbott, ". Я предполагаю, что NER библиотеки работает нормально, и проблема в том, что вышеупомянутый код каким-то образом неправильно использует классы/методы из этой библиотеки. Но я просто не могу найти, что не так в коде?

Любые идеи?

ответ

2

Похоже, что проблема заключается в модели chunker, которую вы читаете в первой строке. Вероятно, он использует неправильный токенизатор, который является источником Bali., I', Widodo. I, " Abbott, ". pair и the Bali можно объяснить обычными ошибками (метчики обычно имеют точность не более 80-90%). Однако источник таких ошибок также можно объяснить плохой моделью - например, ее можно обучить другому домену.

Btw, почему вы используете длинную трубку, но не Stanford NER? Это, как правило, показывает лучшие результаты; например первый доступный (то есть случайный) article. Кроме того, here является хорошим пошаговым руководством для Standford NER.

+0

Upvote для исследовательской работы, так как я также тестирую несколько библиотек nlp, и это очень полезно! Это также причина для тестирования LingPipe. –

+0

Модель chunker получена на веб-сайте LingPipe, и она предварительно подготовлена ​​к новостным материалам, что я точно тестирую. Вот почему я думаю, что он должен работать намного лучше, чем это. –

 Смежные вопросы

  • Нет связанных вопросов^_^