一个专注的语言学习系统比以往任何时候都更有效率
麻省理工学院研究人员的新硬件和软件系统简化了最先进的句子分析。人类语言可能效率低下。有些话很重要。其他的,消耗品。重读这个故事的第一句话。“语言”和“低效”这两个词几乎传达了句子的全部含义。关键字的重要性是计算机自然语言处理(NLP)的流行新工具的基础:注意力机制。
当编码到更广泛的NLP算法中时,注意力机制会关注关键字,而不是同等重要地对待每个单词。这会在NLP任务中产生更好的结果,例如检测正面或负面情绪或预测句子中的下一个单词。
麻省理工学院的研究人员开发了一种硬件和软件系统,可以减少文本分析和生成所需的计算能力、能源和时间。图片来源:麻省理工学院Jose-LuisOlivares
然而,注意力机制的准确性通常是以牺牲速度和计算能力为代价的。它在通用处理器上运行缓慢,就像您在消费级计算机中发现的那样。因此,麻省理工学院的研究人员设计了一个组合的软硬件系统,称为SpAtten,专门用于运行注意力机制。SpAtten以更少的计算能力实现更精简的NLP。
“我们的系统类似于人脑处理语言的方式,”王汉瑞说。“我们阅读速度非常快,只关注关键词。这就是SpAtten的想法。”
该研究将于本月在IEEE高性能计算机体系结构国际研讨会上发表。王是该论文的第一作者,也是电气工程与计算机科学系的博士生。合著者包括张哲凯和他们的导师宋韩助理教授。
自2015年推出以来,注意力机制一直是NLP的福音。它内置于最先进的NLP模型中,例如Google的BERT和OpenAI的GPT-3。注意机制的关键创新是选择性——它可以根据算法之前在训练阶段遇到的单词模式的比较来推断句子中哪些单词或短语最重要。尽管注意力机制很快被NLP模型采用,但它并非没有代价。
NLP模型需要大量的计算机能力,部分原因是注意力机制的高内存需求。“这部分实际上是NLP模型的瓶颈,”Wang说。他指出的一个挑战是缺乏专门的硬件来运行具有注意力机制的NLP模型。通用处理器,如CPU和GPU,在注意力机制复杂的数据移动和算术序列方面存在问题。随着NLP模型变得越来越复杂,问题会变得更糟,尤其是对于长句子。“我们需要算法优化和专用硬件来处理不断增长的计算需求,”王说。
研究人员开发了一个名为SpAtten的系统来更有效地运行注意力机制。他们的设计包括专门的软件和硬件。一项关键的软件进步是SpAtten使用“级联修剪”,或从计算中消除不必要的数据。一旦注意力机制帮助选择句子的关键词(称为标记),SpAtten就会修剪掉不重要的标记并消除相应的计算和数据移动。注意机制还包括多个计算分支(称为头)。与令牌类似,不重要的头部被识别并修剪掉。一旦分派,无关的令牌和头就不会影响算法的下游计算,从而减少计算负载和内存访问。
为了进一步减少内存使用,研究人员还开发了一种称为“渐进量化”的技术。该方法允许算法在更小的位宽块中使用数据并从内存中获取尽可能少的数据。较低的数据精度,对应较小的位宽,用于简单的句子,较高的精度用于复杂的句子。直观地说,这就像将短语“cmptrprogm”提取为“计算机程序”的低精度版本。
除了这些软件进步外,研究人员还开发了一种硬件架构,专门用于运行SpAtten和注意力机制,同时最大限度地减少内存访问。他们的架构设计采用了高度的“并行性”,这意味着在多个处理元素上同时处理多个操作,这很有用,因为注意力机制可以同时分析句子中的每个单词。该设计使SpAtten能够在少量计算机时钟周期内对令牌和头(用于潜在修剪)的重要性进行排名。总的来说,SpAtten的软件和硬件组件相结合,消除了不必要或低效的数据操作,只关注完成用户目标所需的任务。
该系统背后的理念体现在其名称中。SpAtten是“稀疏注意力”的合成词,研究人员在论文中指出,SpAtten“与'spartan'谐音,意思是简单和节俭。”王说,“这就像我们这里的技巧:让句子更简洁。”这种简洁在测试中得到了证实。
研究人员编写了SpAtten硬件设计的模拟代码——他们还没有制造出物理芯片——并针对竞争的通用处理器对其进行了测试。SpAtten的运行速度比下一个最佳竞争对手(TITANXpGPU)快100倍以上。此外,SpAtten的能效比竞争对手高1,000倍以上,这表明SpAtten可以帮助减少NLP的大量电力需求。
研究人员还将SpAtten集成到他们之前的工作中,以帮助验证他们的理念,即硬件和软件最好协同设计。他们使用他们的硬件感知转换器(HAT)框架为SpAtten构建了一个专门的NLP模型架构,并实现了大约两倍于更通用模型的加速。
研究人员认为SpAtten可能对那些将NLP模型用于大部分人工智能工作负载的公司有用。“我们对未来的愿景是消除语言冗余的新算法和硬件将降低成本并节省数据中心NLP工作负载的功率预算,”Wang说。
另一方面,SpAtten可以将NLP引入更小的个人设备。“我们可以延长手机或物联网设备的电池寿命,”王说,指的是联网的“东西”——电视、智能扬声器等。“这尤其重要,因为在未来,大量物联网设备将通过语音和自然语言与人类进行交互,因此NLP将成为我们想要采用的第一个应用程序。”
Han说SpAtten对效率和冗余去除的关注是NLP研究的前进方向。“人类的大脑很少被[通过关键词]激活。稀疏激活的NLP模型在未来很有希望,”他说。“不是所有的词都是平等的——只关注重要的词。”
标签: