How do I interpret the alignment score from the alignment tool fast_align?
我正在使用对齐工具包fast_align:https://github.com/clab/fast_align,以获取并行语料库的逐字对齐。 有一个选项可以打印出比对分数-如何解释该分数? 分数是否衡量平行句子之间的对齐程度? 我知道语料库中的某些句子对齐得很好,而其他句子则没有,但是到目前为止,我发现分数与对齐程度之间没有关联。 我应该调整句子中的单词数吗?
FastAlign是IBM Model 2的实现,得分是此模型估计的概率。 JHU的这些幻灯片中很好地解释了该模型的细节。
分数是给定目标句子单词和对齐方式的源句子的概率。该算法反复估算:
然后,分数是单词到单词的翻译概率与算法收敛到的对齐方式的乘积。因此,从理论上讲,这应该与句子的平行程度相关联,但是有很多方法可以打破这些句子。例如,稀有词的概率估计不可靠。另一个问题可能是某些单词(例如" of")可能是多单词表达式的一部分,而这些单词在其他语言中是单个单词,这也使概率估计值产生了偏差。因此,难怪这种可能性是不可信任的。
如果您的目标是过滤平行语料库并删除不正确对齐的句子对,那么我建议您采取其他措施。您可以例如使用多语言BERT,就像他们在Google的论文中所做的那样,它们将跨语言检索的居中向量作为中心。或者只是谷歌的"并行语料库过滤"。