由于Transkribus针对阅读围绕标准化基线组织的材料进行了优化,因此线性结构不允许将输出组织为源的基于列的格式。
为了将文本串转换成列,因此需要大量的后处理来将材料组织成具有列标题的列。
因此,Transkribus的输出不容易对材料进行任何定量分析。
与源的分割和标准HTR程序的输出格式相关的问题促使我们开发一种深度学习方法,该方法具有改进的文本分割模块和深度学习算法,该算法提取单词类别和关于单词页面位置的空间信息。
该方法允许源的显著改进的自动阅读,并且可以被推广以适合具有类似的基于松散列的结构的其他手写源。
改进阿尔斯堡赎金中文本元素分段的模型建立在中介绍的模型之上。
该架构由一个基于Resnet-50的功能金字塔网络组成,该网络将每个级别的功能串联起来。
网络输出二进制地图,预测线的中间位置。
从二进制图中,估计连接组件的边界并将其转换成多边形。
这些多边形然后被扩展并形成线的预测。
用焦点损失训练该模型以较暗的红色(黑色)显示线中间的预测,展开的多边形为红色。
如上所述,用于分段的训练数据包括266个地面实况页面,使用来自Transkribus的接口手动分段和转录。
通过每个转录者手动识别每行单词下面的基线来执行手动分段。
此后,Transkribus让边界框在分段基线周围扩展,这一过程可能会变得非常粗糙,具体取决于线的形状。
在左侧面板中展示了带有来自ransom的带注释页面的分段,在中间面板中展示了其生成的带注释的基本事实。
如图所示,我们的基本事实中的方框相对较大,这导致文本分段不足的严重风险,即两行合并成一行。
因此,我们按照中详述的“分段标签生成”技术来缩小边界框进行了一些修改,以确保小边界框(通常在一个整数附近)比其他边界框修剪得更少,以避免它们变得太小而影响模型性能。
图像的大小造成了计算能力方面的问题,因此训练和验证是通过补丁来完成的,即图像被分割成更小的块,然后输入到模型中。
为了验证,这些补丁在预测后被缝合在一起,以构成整个页面的二进制图。
在训练期间,小块的尺寸是512像素宽和256像素高,而验证使用完整的图像宽度和1024像素高。
由于长而歪斜的线上的不匹配,如粗略注释的训练数据实际上并不代表期望的模型输出,因此需要另一个精细注释的数据集来进行验证。
在该数据集中,注释是为了紧跟文本行,不包括字母的上升和下降部分。
如上所述,Transkribus等标准工具不提供任何度量来评估布局分析的准确性。
为了缓解这一问题,我们开发了新的细分工具验证指标;计算这些验证指标是为了最大限度地减少四个重要方面的误差。
这些维度是:
遗漏:模型遗漏了页面上包含信息的文本块。
过度分割:该模型将文本块分割成比真实文本更多的行。
噪声:模型错误地拾取页面上的灰尘或噪声,并将其解释为文本块。
分割不足:该模型未能识别地面真相中的单独线条,并错误地将两条线合并为一条。
为了评估分割,我们使用一组未展开的预测多边形来计算一个联合度量,该度量使所有这四个维度上的误差最小化,我们将这些预测多边形与地面真实多边形进行比较。
未被任何预测面预测的地面真实面会导致页面上的文本元素缺失。
如果地面真实面被多个预测面覆盖,则它会在多个预测面之间被分割,从而导致过度分割。
如果预测多边形与地面实况中不存在的线段重叠,我们称之为噪声。
最后,当预测多边形找到了文本行,但却切掉了其中的两行或更多行,而不是实际情况中预期的一个文本块时,欠分割被测量。
通过使用最小化误差乘积的模型来完成模型选择。
为了避免预测多边形和地面真实多边形之间的错误重叠,我们进行了健全性检查,以确保我们的预测多边形具有合理的大小,通常在0.4-0.6的范围内,通过并集上的交集(IoU)来测量,也称为Jaccard指数。
手动转录和分段的数据,用于训练,添加了来自不同划线的15页额外的手动分段数据进行验证。
评估我们的分割模型产生了令人满意的性能:我们发现99%的地面真实多边形与预测多边形重叠,其中95%恰好与一个多边形重叠。
此外,我们发现在97%的情况下,预测多边形与基础事实多边形重叠,其中98%的情况下多边形恰好与一个基础事实重叠,这意味着我们只错过了1%的基础事实,3%的预测是假阳性。
为了视觉上的清晰,用不同的颜色表示单独的分割部分,示出了所得到的分割的例子。
教导模型阅读文本的整体结构是基于,虽然有一些变化。
中介绍的模型中Resnet-34体系结构的最后一块已被移除以增加特征图的分辨率,并且由于模型不是二维的,图像特征从,如中的“时间编码”一节所述,超参数来自,并且使用Kullback-Leibler散度作为损失函数来训练模型。
在我们根据16世纪的笔迹训练模型之前,我们首先训练一个能够阅读字母的模型。
这样做是为了在我们开始在阿尔斯堡的赎金上训练模型时有一个更好的起始位置。
出于训练前的目的,我们使用文本行生成合成数据,这些文本行使用,使用数百种字体和来自Runeberg项目的语料库。
Runeberg项目将更古老的北欧印刷材料数字化,并有助于训练模型识别和解释字母作为北欧语言(在这种情况下是瑞典语)的单词。
在合成数据上对模型进行预训练后,我们使用上面概述的带注释的基本事实,即在Transkribus中生成的266页手动转录的页面,训练它阅读16世纪的笔迹。
为了确认培训材料是由几个不同的脚本生成的,我们将每个基础事实页面分成70%的页面用于培训,15%的页面用于验证以改进模型,15%的页面用于最终模型的外部测试。
我们以这种方式划分材料,以便生成一个度量标准,它可以告诉我们模块在这个特定的源中从不同的抄写员那里读取文本的情况。
通过分段和HTR模型,我们能够以完全自动化的过程阅读《阿尔斯堡的赎金》中的文本,并且错误率很低。
平均CER为9.1%,但不同卷之间的比率不同,从最高错误率(15.6%)到最低错误率(4.8%)不等。
到目前为止,文本识别以优于标准HTR模型的方式读取和分割文本,但它仍然缺少列分隔符,这意味着在数据可以进入统计软件进行定量分析之前,需要进行大量的后处理。
然而,页面上的图像和语言特性中有足够的信息,可以提取结构化数据来创建表格。
我们建议使用HTR模型来提取单词的含义,并在可用于将单词匹配到具有相关经济含义的结构化列中的过程中使用其在页面上的空间位置。
在这个过程中,我们利用了这样一个事实税source包含相对较少的单词,并且它们经常重复地涉及相同的类别。
这使得训练模型更容易,该模型理解任何给定的单词应该如何根据预定义的方案被给予分类。
我们的方案将单词分为七个主要类别:<地点>、<姓名>、<所属>、<数量>、<税>、<银>或<其他>。
这七个类别被编码成缩写(用<be>表示归属,<qu>表示数量,<ta>表示税收,等等。
意思是基础事实的转录和分类样本将把单词“cow”翻译成一个属性,把数字“2”翻译成一个数量,把货币单词“cent”翻译成与税收相关的东西,如下所示:“cow<be>2<qu>PCs<qu>2<ta>cent<ta>”。
分类标签被视为词汇表中的任何其他字符。
在将单词分类成列之前,我们需要解决16世纪缺乏标准化拼写和语言的问题。
源中有许多拼写变化,这妨碍了对分类方案的简单识别。
“silver”这个词的拼写和发音有十多种不同的方式,各地差异很大。
为了加速词类相似性传播的注释过程使用Levenshtein距离作为度量,用于注释彼此拼写相似的单词簇。
例如,单词“kvigor”(小母牛)在源代码中出现了十多种不同的拼写,但是它们可能都与一个可以一次性注释的集群相关。
在阅读过程中,模型可以访问语言特征和图像特征。
由于transformer体系结构能够将注意力放在分割的文本行中的任何地方,因此模型可以查看到目前为止它在文本中已经读取的内容,以及在图像中向前看,以确定在对单词进行分类时接下来会发生什么。
这种能力在对数字进行分类时特别有用。
在税收清单中,数字经常被用来量化财产及其货币价值,以及税收的价值。
为了确定数字应该如何分类,需要后续的单词作为决定因素。
与纯NLP模型相比,当模型可以使用图像中的上下文时,这种能力还应该增加用更高的CER分类单词的机会。
基于这些特征,我们提出了一个HTR模块,它将单词的阅读、转录和分类集成在一个过程中。
步骤如下:如上所述,从分割多边形中估计一条中线。
单词的水平位置被作为最大化每个单词中第一个字符的视觉特征中的注意力的自变量,该自变量然后被插值到图像中的一个位置。
纵坐标取该水平位置中线的纵坐标。
这意味着水平线来自分段模块,垂直线来自HTR模块。
单词被识别为从两条线相交处的坐标开始,其中水平线以白色给出,垂直线以彩色显示,转录的文本以白色大写字母显示在原始文本旁边。
该图还显示了带阴影的标准边界框,以举例说明线交点处的坐标更好地捕捉了单词的位置,特别是当线倾斜时,如在lvsborg'sransom中。
如在中所见水平线的颜色告诉我们这个单词属于哪一类。
“reniFldsta”的例子告诉我们,jren(绿色)是住在一个叫fldsta(黄色)的地方的一个农民的名字。
他在第一排的财产是两头价值2马克的母牛。
参考文献
芙凯G.阿尔法尼
《前工业化时代的经济不平等:欧洲及其以外》
友情提示
本站部分转载文章,皆来自互联网,仅供参考及分享,并不用于任何商业用途;版权归原作者所有,如涉及作品内容、版权和其他问题,请与本网联系,我们将在第一时间删除内容!
联系邮箱:1042463605@qq.com