论文

通过矩阵乘积运算符分解压缩 Transformer 语言模型:PicoGPT 案例研究

Compressing Transformer Language Models via Matrix Product Operator Decomposition: A Case Study on PicoGPT

模型优化模型压缩

摘要

基于 Transformer 的语言模型在 NLP 任务中实现了强大的性能,但其具有隐藏维度的二次参数缩放使得在资源受限的硬件上的部署成本昂贵。我们研究矩阵乘积运算符 (MPO) 分解作为 Transformer 的原则压缩方法。 MPO 将权重矩阵分解为低秩核链,近似质量由键维 chi 控制。我们用参数化为 MPO 链的 MPOLinear 模块替换 PicoGPT 中的每个 nn.Linear 层,PicoGPT 是一种具有大约 1M 参数的 GPT-2 风格字符级语言模型。核心通过 TT-SVD 从预训练的密集权重或随机初始化进行初始化,并使用标准 PyTorch autograd 进行训练,无需自定义反向传递。我们推导出 PicoGPT 中五种不同权重形状的平衡因式分解方案,并评估 Tiny Shakespeare 上 {4,8,16,32} 中的键维度 chi。 MPO 压缩在 chi = 4 时可实现每个 Transformer 块高达 13 倍的压缩。在 chi = 16 时,模型使用 191,872 个参数而不是 1,020,224 个参数,同时保留 97.7% 的基线词元精度(51.6% vs 52.8%)。重构误差遵循预期趋势,并且在相同的键维数下,三位点分解的重构误差低于两位点分解的重构误差。 chi = 8 模型为每个参数提供了最佳准确度,在该指标上超出了密集基线 2.7 倍。这些结果表明,MPO 参数化是 Transformer 压缩的低秩方法和非结构化修剪的实用且有理论依据的替代方案。