论文

一刀切:根据部署实际提出的问题设置推理深度

One Size Does Not Fit All: Setting Inference Depth from the Questions a Deployment Actually Asks

模型推理推理加速

摘要

Transformer 语言模型经过训练可以响应任何提示,但每次部署只询问一小部分问题:支持助理看到交付投诉,编码工具看到 Python。尽管如此,每个部署为每个词元支付相同的计算费用。本文衡量了当提前知道提示范围时可以避免多少成本。检查的机制是提前退出:一个小的、经过训练的组件(称为读出器)附加到中间层并提出一个词元,并且置信度测试决定是发出它还是运行其余层。模型被冻结,唯一使用的监督是模型本身对普通流量的输出。报告了三项发现。首先,可实现的节省在很大程度上取决于流量的类型:在 15 亿参数模型的一半深度下,算术应用题的 96% 的词元可以提前发出,中文解释的 8% 的词元可以提前发出,而词元级别的保真度与完整模型相匹配(这一衡量标准限制了第三个发现的暴露)。其次,在部署可能使用其流量知识的三种方式中,只有自定义提前退出的阈值是值得的:在每个部署中对其进行校准,在三个模型中将退出率提高了高达 59 个百分点,在大多数测试的语料库中提高了 10 个百分点以上。第三,词元级保真度(早期退出文献中的标准评估指标)在可以根据真实情况检查词元的领域中失败:在算术文字问题上,三个模型在完整运行时各自正确回答了 60 个问题,在早期退出下正确回答了 10 到 28 个问题,在保真度得分最高的配置中。预期的设置是个人设备上的小型模型,其中生成受到内存带宽而不是计算的限制。