Nlp LingPipe命名实体识别器输出大量不匹配

Nlp LingPipe命名实体识别器输出大量不匹配,nlp,named-entity-recognition,lingpipe,Nlp,Named Entity Recognition,Lingpipe,我正在尝试使用LingPipe和以下工具提取命名实体(人、人和组织)。以下是我试图从中提取名称的代码(为简洁起见,省略了异常处理): 正如您所看到的,存在许多不匹配/部分匹配,例如Bali.,pair,Bali,I',Widodo。我,“雅培,”。我假设库的NER工作得很好,问题是上面的代码在某种程度上误用了这个库中的类/方法。但我似乎找不到代码的错误所在 有什么想法吗?问题似乎出在你在第一行读到的chunker模型中。它可能使用了错误的标记器,这是Bali.,I',Widodo的来源。我,“雅

我正在尝试使用LingPipe和以下工具提取命名实体(人、人和组织)。以下是我试图从中提取名称的代码(为简洁起见,省略了异常处理):

正如您所看到的,存在许多不匹配/部分匹配,例如
Bali.
pair
Bali
I'
Widodo。我
“雅培
。我假设库的NER工作得很好,问题是上面的代码在某种程度上误用了这个库中的类/方法。但我似乎找不到代码的错误所在


有什么想法吗?

问题似乎出在你在第一行读到的chunker模型中。它可能使用了错误的标记器,这是
Bali.
I'
Widodo的来源。我
“雅培
pair
Bali
可以用普通错误来解释(标记器的精度通常不超过80-90%)。然而,这种错误的来源也可以用坏模型来解释——例如,它可以为另一个领域进行训练

顺便说一句,你为什么用长管,但不?通常,它显示出更好的结果;e、 g.第一个可用的(即随机)。
另外,对于斯坦福德·内尔来说,这是一个很好的循序渐进的教程。

请为研究论文投票,因为我还测试了几个nlp库,这非常有用!这也是尝试LingPipe的原因。chunker的模型是从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
”