亚线性内存:如何使 Performers 变得 SLiM
机器学习
2020-12-22 v1
摘要
Transformer 架构已彻底变革了序列数据的深度学习,成为广泛应用最先进解决方案中无处不在的部件。然而原生 Transformer 以资源昂贵著称,作为输入长度 的函数,其串行时间与内存均需 。近期工作提出了多种线性自注意力机制,串行计算仅随 缩放。我们就总体计算复杂度对具有线性自注意力的近期 Transformer 机制 Performers 进行了透彻分析。我们观察到显著的计算灵活性:前向与反向传播可作为 的亚线性内存函数(除输入序列的微小存储外)无近似地执行,代价是在并行设定下时间复杂度更高。在极端情形,Performer 在训练期间仅消耗 内存,仍需要 时间。这一被发现的时间-内存权衡可用于训练,或由于完全反向兼容,用于在低内存设备(例如智能手机或前代 GPU)上微调,从而助力去中心化与民主化的深度学习。
引用
@article{arxiv.2012.11346,
title = {Sub-Linear Memory: How to Make Performers SLiM},
author = {Valerii Likhosherstov and Krzysztof Choromanski and Jared Davis and Xingyou Song and Adrian Weller},
journal= {arXiv preprint arXiv:2012.11346},
year = {2020}
}