苏黎世联邦理工学院的研究人员开发了一项突破性技术,显著提高了神经网络的效率。通过改进推理过程,研究团队大幅降低了这些网络的计算需求。
在对广泛使用的语言任务转换模型BERT的实验中,研究人员取得了超过99%的计算量减少。这种前沿方法同样适用于驱动大型语言模型(如GPT-3)的变换器模型,为加速和提高语言处理效率铺平了道路。
快速前馈网络的理解
变换器作为大型语言模型的基础,包含多个层次,包括注意力层和前馈层。前馈层占据了模型参数的很大一部分,其计算强度高,源于需要计算输入维度上所有神经元的乘积。
研究人员发现,并不是所有前馈层的神经元在推理时都需要对每个输入激活。于是,他们引入了“快速前馈”层(FFF)来替代传统的前馈层。FFF使用条件矩阵乘法(CMM),这是一种数学操作,能够替代传统前馈网络的密集矩阵乘法(DMM)。与DMM需要对所有输入参数与所有神经元进行相乘不同,CMM仅选择一部分神经元进行处理,从而简化了计算过程,减轻了计算负担。
FastBERT:语言处理的游戏规则改变者
为了验证他们的创新技术,研究团队开发了FastBERT,这是一种修改版的Google BERT模型。FastBERT通过用快速前馈层替代标准前馈层来提升性能,将神经元组织成一个平衡的二叉树结构,根据特定输入激活单一分支。
为了评估FastBERT的能力,团队在通用语言理解评估(GLUE)基准上对多个模型进行了微调,这是一套旨在评估自然语言理解系统的工具。
结果令人瞩目:FastBERT在性能上与相似大小和训练的基线BERT模型表现相当。经过仅一天的微调,使用一台A6000 GPU的变体仍能维持至少96%的BERT性能。值得注意的是,最佳变体在只使用0.3%神经元的情况下也达到了BERT的性能。
研究人员认为,将快速前馈网络整合到大型语言模型中,将极大提升处理速度。例如,在GPT-3中,每个变换器层包含49,152个神经元,而借助FFF,这一数量可以在推理过程中优化为仅使用16个神经元,这相当于GPT-3神经元的0.03%。
应对优化挑战
尽管密集矩阵乘法在多年的发展中得到了很大优化,但条件矩阵乘法的优化仍显不足。研究团队指出:“密集矩阵乘法是计算历史上最优化的数学操作。”当前深度学习框架对CMM的支持有限,主要是通过高级模拟实现。
为推动这一领域的发展,研究团队开发了自己的CMM操作实现,结果在推理过程中实现了78倍的速度提升。他们相信,随着硬件的进步和更优的低级算法实现,速度提升有望超过300倍,这将有效解决语言模型中一个迫切的问题:更快地生成标记。
结论
对于基于BERT的模型,理论上的速度提升潜力达341倍,突显了该研究的变革潜力。研究人员希望能促进条件神经执行原语在设备编程接口中的进一步发展。这项研究是解决大型语言模型在内存和计算限制方面的重要一步,推动更高效、稳健的人工智能系统的发展。