Backpack Language Models
🔗:https://arxiv.org/pdf/2305.16765.pdf 代码:https://backpackmodels.science 作者团队:Department of Computer Science, Stanford University ACL 2023 长文
这篇文章关注大模型中的词表示问题,提出一种使用多个“sense vector”线性组合的方法表示词向量,降低模型bias的方法。
研究动机
作者在introduction部分开门见山指出目前大模型的问题,“The CEO believes that MASK” 这句话,语言模型会倾向于输出“He”,背后隐含了一种性别偏见,因为也会有女性的“CEO”。另一方面, “The nurse believes that MASK”则会倾向输出“she”。
作者认为这种现象源自模型使用 Transformer 结构的时候,词是一整块放到模型中的,导致模型很容易被其他词(上下文)所干扰,因此,本文对词与词之间的fine-grained的影响进行学习。
具体模型方法
首先引入了“sense vector”的概念,然后将每个词表示为多个sense vector的加权组合的形式。对每个词$x$,会有:
$$ C(x)_1, C(x)_2, \dots, C(x)_k $$记词输出为$\textbf{o}i$,有: $ \textbf{o}i = \sum{j=1}^{n}\sum{\ell=1}^{k}\alpha_{\ell ij}C(x_j)_{\ell} $
实验
文章使用 Transformer 基线模型做实验,分了Micro (30M parameters), Mini (70M parameters), and Small (124M parameters; the same size as GPT-2 small) 三种模型进行实验,使用OpenWebText英文语料对模型进行训练。
评估方面,文章首先使用pp值衡量模型的表达能力(perplexity,值越低越好),结果显示使用backpack可以获得更好的表达能力。同时,作者提及backpack会使模型需要更长时间去收敛。这点其实也不难理解,因为对每个词表达的维度更丰富了,所以需要更长的时间去拟合,捕捉词sense与上下文之间的关联关系。
文章探索了sense的数量对模型表达能力的影响,结果显示,sense的增加会使得pp值显著下降,伴随的代价就是模型的总参数量也会增大。在sense=16时可以取得比较均衡的结果。
在其他实验部分,文章对sense进行可视化分析,结果还是挺显著的。
应用
值得一提的是,文章使用一个单独的章节重点提及backpack使用的方法在可控语言模型方面的应用,包括主题控制生成,缓解模型的性别偏见、借助外部知识完成模型输出的编辑等方面的应用。