mbart和mt5有什么不同。两者的模型都是transformers的模型(encoder+decoder结构),多篇论文表明了这样的结构比docoder-only或者prefixlm在多种下游任务中,特别是翻译、逻辑判断中都具有优势。
下面是两者之间的区别:
-
预训练的方式不同:虽然都是mask+span的方式,但是label的形式是不同的。例如输入为A_B_E,mbart的输出的label为ABCDE,但是mt5的输出的label为CD。这样看来,mbart做的任务似乎是更难的任务,有可能效果会更好。
-
微调的区别:mbart将任务区分为分类型的任务和生成式的任务,对两个不同型的任务微调代码不同(个人觉得应该是decoder中一个回到词库维度,一个回到cls维度)。但对于mt5来说,众生平等,一切任务都可以转换为生成式的任务。(个人觉得这个区别其实算不上大的区别)
-
bart使用的是绝对位置编码,t5使用的是相对位置嵌入。具体详述在:相对位置和绝对位置的探讨。
-
bart使用的是gelu,t5使用的是relu。
-
参数对比:t5参数量是bart的2倍
BART-large:12encoder, 12decoder, 1024hidden
T5-large: 24encoder, 24decoder, 1024hidden, 770M parameters