Microsoft Custom Translator 训练数据中的冲突

Conflicts in the training data for Microsoft Custom Translator

我正在使用 Microsoft Custom Translator 并提供 tmx 格式的训练数据。我的训练数据有一些冲突。例如,我有英语到德语的训练数据,其中有重复的英语字符串,但这些重复的英语字符串的德语翻译是不同的。在这种情况下,它如何影响模型?

只要一方不同,它们就只是替代翻译,这种情况一直在发生。备选方案将被保留,并影响最终模型中的概率。

我将扩展我们尊敬的 Microsoft Translator 同事的官方和批准的答案。

是的,它经常发生,是的,它会影响结果模型中的概率。

这样好吗? 视情况而定。

是的,由于不同的上下文,尤其是在短字符串上,存在 target-side 冲突,但同样经常有其他原因,以及不合理的不一致。

最好实际查看 target-side 冲突,并根据冲突的类型和场景做出执行决策 - 整体数据集,所需的行为和通用系统的行为。

在某些情况下,target-side 训练数据中的冲突是可取的或无害的,但至少同样经常,它们是有害的或打击 trade-offs。

例如,缺少重音符号、错误的编码、令人讨厌的隐藏字符或其他 non-human 可读差异(例如 double-width 括号、冲突的区域设置、未翻译的片段、更新样式指南...大多是有害的冲突。一种变体可能是定位单元,而另一种则不是。而且,通常情况下,一个变体只是一个糟糕的翻译。

通常,这些直接冲突 - 即具有相同确切来源的段之间的冲突,可以通过简单的脚本找到 - 是关于更广泛数据集中冲突的线索 - 除非您知道你在找什么。

Trade-offs 存在于更多1:1 翻译和创译之间,准确和流畅之间。前者名声不好,但风险较小,但更稳健。

决定可能是删除、解决或规范化,或者去调试数据集和数据管道。

只是把它全部扔进黑匣子并喃喃自语 In Deep Learning We Trust 超过 Manning 和 Schütze 1999 三遍只有在规模 - 你训练自定义的频率时才有意义模型,而不是训练数据的数量 - 太高了,基本的尽职调查是不可行的。

要真正知道,您可能需要在有冲突和没有冲突的情况下训练系统,并进行评估和比较。

Source-side另一方面,噪音和冲突甚至都不是真正的冲突,包含在内通常是安全的,甚至是有益的。而且它们仍然值得一看。