由 TensorFlow Model Optimization 维护
有两种形式的量化:训练后量化和量化感知训练。请从训练后量化开始,因为它更易于使用,尽管量化感知训练在模型准确率方面的表现通常更好。
本页面概述了量化感知训练,旨在帮助您确定它与您的用例的契合程度。
要查看端到端示例,请参阅量化感知训练示例。
要快速找到您的用例所需的 API,请参阅量化感知训练综合指南。
概述
量化感知训练可以模拟推理时间量化,同时创建一个模型,下游工具将使用该模型生成实际量化模型。量化模型使用较低的精度(例如 8 位而不是 32 位浮点数),这样可在部署期间带来诸多好处。
使用量化部署
量化通过压缩模型和减少延迟带来了诸多改进。使用 API 默认值时,模型大小可缩减至原来的四分之一,我们通常会在测试的后端中看到 CPU 延迟缩短为原来的三分之二到四分之一。最终,可以在兼容的机器学习加速器(例如 EdgeTPU 和 NNAPI)上看到延迟方面的改善。
这种技术用于语音、视觉、文本和翻译用例的生产中。代码目前支持其中一部分模型。
试验量化和相关硬件
用户可以配置量化参数(例如位数),并在一定程度上配置底层算法。对 API 默认值进行这些更改后,将没有支持的部署路径。
特定于此配置的 API 是实验性的,不具备向后兼容性。
API 兼容性
用户可以使用以下 API 应用量化:
模型构建:仅包含序贯模型和函数式模型的 tf.keras。
TensorFlow 版本:TF 2.x Nightly 版本。
不支持包含 TF 2.X 软件包的 tf.compat.v1。</