近日,一篇发表在arXiv上的深度学习论文引起了广泛关注。在这篇论文中,薄言(RSVP.ai)联合加拿大滑铁卢大学和北京大学提出了一种全新的预训练模型——SegaBert。SegaBert旨在改进基于Transformer的预训练过程,并在多种自然语言任务中取得了显著超越Bert的表现。
语言模型作为自然语言处理领域的经典序列建模任务,已有数十年的研究历史。近年来,由于其自监督特性,语言模型备受学术界和工业界的青睐。一系列预训练语言模型如GPT2、BERT、RoBERTa、XLNET等相继涌现,刷新了多项自然语言处理任务的榜单。预训练加微调的模式已成为自然语言处理领域的新标准。
有趣的是,这些不断刷新榜单的预训练模型无一例外地采用了Transformer架构。这一架构自2017年提出以来,在自然语言处理领域迅速流行起来,因为其高效的自注意力机制逐渐取代了传统的循环神经网络。为了编码输入序列中词语的位置关系,Transformer需要为每个输入token构建一个位置向量。这些位置向量表示了当前token在整个输入序列中的位置,模型通过大量输入数据学习这些位置向量之间的关系。
然而,Transformer最初设计主要用于机器翻译等输入序列较短的任务,通常只有1到512个词。相比之下,预训练语言模型处理的文本序列长度通常在512到1024个词之间。对于较长的自然语言序列,原始Transformer的位置向量难以精确捕捉到词语间的关系。
为了改善这一问题,SegaBert在Transformer原始位置向量的基础上,增加了对段落、句子和词语三者之间位置关系的建模。具体来说,SegaBert为每个输入token构建了段落索引、句子索引和词索引,并设置了段落位置向量、句子位置向量和词位置向量。这样,SegaBert可以更好地捕捉到输入序列中不同层次的位置信息,从而提升模型的文本编码能力。
与BERT相比,SegaBert使用了50个段落位置索引、100个句子位置索引和256个词位置索引,而不是BERT的512个词位置索引。这意味着SegaBert可以更细致地表示每个token的位置信息,从而更好地理解文本的结构。
实验结果表明,SegaBert在多个自然语言处理任务中均取得了显著的提升。在GLUE基准测试中,SegaBert的大型模型在七项任务中全面超越了BERT,整体平均分数提高了1.2个百分点。在斯坦福大学的SQuAD阅读理解任务中,SegaBert在EM得分和F1得分上分别提高了1.2和1.5个百分点。
SegaBert预训练了两种模型:SegaBert-base和SegaBert-large。前者采用了12层Transformer、768维隐藏层表示和12个多头注意力机制,后者则采用了24层Transformer、1024维隐藏层表示和24个多头注意力机制。SegaBert-base模型使用了12GB的Wikipedia数据进行训练,训练步数为50万步;SegaBert-large模型则使用了16GB的Wikibooks数据,训练步数为100万步。
SegaBert采用了与BERT相同的掩码语言模型(MLM)任务,即对输入的512个token进行随机掩码,并通过模型训练来预测这些被掩码的位置。值得注意的是,SegaBert并未引入其他辅助任务,如下句预测(NSP)等。
为了验证段落和句子位置表征的有效性,研究人员还在BERT原有的512个词位置索引基础上,添加了50个段落位置索引和128个句子位置索引。实验结果显示,这种改进使BERT在大多数GLUE任务和SQuAD任务上都有了显著提升,其中SQuAD任务的结果与SegaBert相近。
此外,SegaBert在注意力可视化方面也展示了与BERT不同的编码逻辑。SegaBert能够实现片段感知,根据段落和句子的分隔信息进行编码,而基于传统Transformer的BERT主要依赖于距离远近的注意力分布。
总的来说,SegaBert通过引入更精细的位置表征,显著提升了预训练语言模型的性能。这种改进不仅适用于BERT,还可以推广到所有使用Transformer结构进行预训练的语言模型中。随着研究的深入,这种新的位置表征方法有望成为未来自然语言处理领域的重要研究方向。
以上是改写后的文章内容,希望对你有所帮助。