“PRADO”于去年推出。取得了SOTA成绩。pQRNN的新颖之处在于它可以结合简单的映射和准RNN编码器进行快速并行处理。同时,谷歌证明该模型能够以更少的参数完成文本分类任务,并达到BERT级别的性能。深度神经网络的快速发展在过去十年中彻底改变了自然语言处理(NLP)领域。与此同时,保护用户隐私、消除网络延迟、启用离线功能和降低运营成本等问题正在迅速推动可在移动设备而非数据中心运行的NLP模型的开发。然而,由于移动设备的内存和处理能力有限,这就要求在移动设备上运行的模型在不影响结果质量的情况下要小巧高效。去年,Google发布了一个名为“PRADO”的神经结构,使用参数大小小于200K的模型,在很多文本分类问题上取得了SOTA的成绩。虽然大多数模型为每个标记使用固定数量的参数,但PRADO模型使用的网络结构需要很少的参数来学习与任务最相关或最有用的标记。PRADO的工作原理一年前开发时,PRADO利用特定于NLP领域的文本分割来减小模型大小并提高性能。图:PRADO模型结构图:PRADO和LSTM在Yelp数据集上的对比通常,NLP模型的文本输入首先被处理成适合输入到神经网络的形式,然后将文本分割成预定义的通用词典(包括所有可能的token列表中的值)对应的Segment。然后,神经网络使用可训练参数(包括嵌入表)唯一地识别每个片段。然而,这种利用文本分割的方式对模型性能、大小和延迟有很大影响。下图显示了使用的各种方法及其优缺点:由于文本片段的数量是模型性能和压缩的重要参数,因此出现了一个问题,即NLP模型是否需要能够清楚地识别每个可能的文本片段。为了回答这个问题,谷歌还研究了NLP任务的内在复杂性。只有少数NLP任务(如语言建模和机器翻译)需要知道文本片段之间的细微差别,因此需要能够唯一标识所有可能的文本片段。相比之下,大多数其他任务都可以通过了解这些片段的一小部分来解决。此外,与任务相关的片段的子集可能不是最常见的片段,例如a、an、the等,这些片段对于许多任务来说都是无用的片段。因此,允许网络为给定任务确定最相关的部分可以带来更好的性能。此外,该模型不需要能够唯一地识别这些片段,只需要识别文本片段的集群。例如,情感分类器只需要知道与文本中的情感密切相关的聚类。利用这些发现,PRADO旨在从单词而不是单词片段或字符中学习文本片段的集群,这使其能够在低复杂度的NLP任务中取得良好的性能。由于单词粒度更有意义,并且对于大多数任务而言,最相关单词的数量很少,因此学习此类相关单词子集所需的模型参数要少得多。pQRNND:改进PRADO在PRADO成功的基础上,我们提出了改进的NLP模型pQRNN。该模型由三个构建块、一个将文本中的标记转换为三元向量序列的投影算子、一个密集的瓶颈层和一堆QRNN编码器组成。pQRNN中投影层的实现与PRADO中使用的相同,帮助模型学习最相关的标记,而无需使用一组固定的参数定义它们。它首先对文本中的标记进行标记,并使用简单的映射函数将它们转换为三元组特征向量。这使得这个三元向量序列具有平衡对称分布,可以唯一表示文本。这种表示并不直接有用,因为它没有解决相关任务所需的任何信息,并且网络无法控制这种表示。我们将其输入密集的瓶颈层,使网络能够学习与手头任务相关的单词表示,但瓶颈层产生的表示仍然没有考虑单词的上下文。然后通过使用一堆双向QRNN编码器学习上下文表示,这使得网络能够从未经预处理的输入文本中学习上下文表示。pQRNN的性能作者在民间评论数据集上评估了pQRNN,并将其与BERT模型在同一任务上进行了比较。简单地说,pQRNN的参数比BERT小得多,因为模型大小与参数数量成正比。此外,pQRNN被量化,进一步将模型大小缩小了4倍。公开训练的BERT版本在这个任务上表现不佳,因此将其与在几个不同的相关多语言数据源上预训练的BERT版本进行比较获得最好的性能。结论:轻量级文本分类神器证明它可以作为使用上一代模型PRADO的下一代最先进的轻量级文本分类模型的基础。改进后的pQRNN模型表明,这种新架构几乎可以达到BERT级别的性能,尽管只使用了1/300的参数和监督数据。为了促进该领域的进一步研究,谷歌现已开源PRADO模型,并鼓励社区将其用作新模型架构的起点。项目地址:https://github.com/tensorflow/models/tree/master/research/sequence_projection
