我正在尝试使用 LingPipe 并按照本教程提取命名实体(人员、人员和组织) 。这是我试图从中提取名称的全文,这是代码(为简洁起见,省略了异常处理):
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 工作得很好,问题是上面的代码在某种程度上滥用了这个库中的类/方法。但我似乎无法找到代码有什么问题?
有任何想法吗?