我有很多美国学校年鉴的扫描页,上面有人物肖像和名字。页面中的所有文本都经过 OCR 处理,并在每个页面的多个版本中收集:
目标是确定哪些文本字符串代表人名并将其与肖像相关联。问题是每本年鉴都是唯一的,每一页也可能是唯一的,因此无法应用通用模式(但可能有一些通用模式)。另一个问题是页面中除了名称之外还包含许多其他文本,而且集合非常庞大。
上面的例子中名字是用大写字母写的,所以很容易识别,但这不是常见的情况。
另一个例子:
我在考虑几个方向:
- 使用美国名字字典建立索引并搜索每个 此索引中页面中的单个单词以查找可能的名称。
- 使用全名识别。我尝试了
opennlp
Java 库,但是 它仅适用于以大写字母开头的名称。 也许其他图书馆也可以。 - 训练一些神经网络。这样的结果能比 前两个选项?
您能建议哪些算法可以帮助解决这个问题吗?
最佳答案
确实 NER 会有所帮助,使用现有软件是可以的,但我建议,对于这样的子域(人名),使用可能的名字/姓氏列表作为特征和标准线索(例如大写字母,小姐/先生)。
使用男性/女性特征将名字与肖像联系起来当然是个好主意。
将两者分开实现(姓名识别/肖像匹配)作为模棱两可的过程会很好:它将允许在可能的假设中选择那些最大化其他标准的那些:姓名 nb 与肖像 nb,布局的规律性以关联姓名有肖像等。
主要是常识,但希望对您有所帮助!
PS不要忘记无法将姓名与肖像相关联的情况,例如通过使用似然阈值(乍一看,您的上一张图片似乎就是这种情况?)
关于algorithm - 从非结构化年鉴文本中提取人名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46668856/