当前位置: 首页 > 科技观察

Wordembedding说明参数占比过大?MorphTE方法的20倍压缩效果不减

时间:2023-03-12 19:48:51 科技观察

介绍wordembedding是机器翻译、问答、文本分类等各种自然语言处理任务的基础,通常占20%~90%的总模型参数。存储和访问这些嵌入需要大量的空间,不利于模型在资源有限的设备上的部署和应用。为了解决这个问题,本文提出了MorphTE词嵌入压缩方法。MorphTE将张量乘积运算的强大压缩能力与语言形态学的先验知识相结合,在保持模型性能的同时实现词嵌入参数的高倍压缩(超过20倍)。论文链接:https://arxiv.org/abs/2210.15379开源代码:https://github.com/bigganbing/Fairseq_MorphTE模型本文提出的MorphTE词嵌入压缩方法首先将词划分为具有语义意义的最小单元——语素,并为每个语素训练一个低维向量表示,然后利用张量积实现低维语素向量的量子纠缠数学表示,从而得到高维词表示。01词的语素在语言学中,语素是具有特定语义或语法功能的最小单位。对于英语等语言,一个词可以拆分成词根、词缀等更小的词素单元。例如,“unkindly”可以拆分为“un”表示否定,“kind”表示“友好”等,“ly”表示副词。对于中文来说,一个汉字也可以拆分成部首等更小的单位,比如“木”可以拆分成代表水的“氵”和“木”。虽然词素暗示语义,但它们也可以在单词之间共享,从而链接不同的单词。此外,有限数量的语素可以组合成更多的词。02Wordembeddingcompressionrepresentationintheformofentangledtensor相关工作Word2ket通过张量积将单个词嵌入表示为几个低维向量的纠缠张量形式。产品。Word2ket只需要存储和使用这些低维向量来构建高维词向量,从而有效减少参数。例如当r=2,n=3时,可以通过两组三个维度为8的低维向量张量积得到一个512维的词向量,此时需要的参数个数减少从512到48.03Morphologicallyenhancedtensorwordembeddingcompression是指通过张量积,Word2ket可以实现明显的参数压缩,但在高压缩和机器翻译等更复杂的任务中通常很难达到压缩前的效果。由于低维向量是纠缠张量的基本单位,语素是词的基本单位。考虑到语言知识的引入,本研究提出了MorphTE,它训练低维词素向量,并使用词中包含的词素向量的张量积来构造相应的词嵌入表示。具体来说,首先使用词素切分工具对词汇表V中的词进行切分,所有词的词素会组成一个词素表M,词素的个数会明显低于词的个数()。对于每一个词,构造它的词素索引向量,它指向词素表中每个词所包含的词素的位置。所有词的词素索引向量构成一个词素索引矩阵,其中n为MorphTE的阶数。对于词汇表中的第j个词,利用其词素索引向量从第r组参数化词素嵌入矩阵中索引对应的词素向量,通过张量积进行纠缠张量表示,得到对应的词嵌入。形式化如下:通过上述方法,MophTE可以将基于词素的语言先验知识注入到词嵌入表示中,同时,不同词之间词素向量的共享可以显式地建立词间连接。此外,词素的数量和向量维度远低于词汇表的大小和维度,MophTE从两个角度实现了词嵌入参数的压缩。因此,MophTE可以对词嵌入表示进行高质量压缩。实验本文主要针对不同语言的翻译和问答等任务进行实验,并将其与相关的基于分解的词嵌入压缩方法进行比较。从表中可以看出,MorphTE可以适配英语、德语、意大利语等不同语言,在超过20倍压缩比的情况下,MorphTE可以保持原有模型的效果,而其他压缩方法几乎都有下降的效果。此外,MorphTE在不同数据集上的压缩率超过40倍,优于其他压缩方法。同样,在WikiQA的问答任务和SNLI的自然语言推理任务上,MorphTE分别实现了81倍和38倍的压缩比,同时保持了模型的效果。结论MorphTE将先验的形态语言知识与张量积强大的压缩能力相结合,实现了词嵌入的高质量压缩。在不同语言和任务上的实验表明,MorphTE可以在不影响模型效果的情况下实现20-80倍的wordembedding参数压缩。这验证了引入基于词素的语言知识可以改善词嵌入压缩表示的学习。虽然MorphTE目前只对词素进行建模,但它实际上可以扩展为一个通用的词嵌入压缩增强框架,显式地对原型、词性、大写等更多先验语言知识进行建模,进一步提高词嵌入压缩表达。