关于nlp:如何从对齐工具fast_align解释对齐分数?

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的论文中所做的那样,它们将跨语言检索的居中向量作为中心。或者只是谷歌的"并行语料库过滤"。