Dav*_*ord 5 optimization pytorch
我正在尝试优化我的 pytorch 模型。我了解量化的基础知识(将 32 位浮点数更改为 16 位或 8 位的其他数据类型),但我不知道这两种方法有何不同或应选择什么。
我看到 AMP(自动混合精度)https://pytorch.org/tutorials/recipes/recipes/amp_recipe.html 和常规量化https://pytorch.org/tutorials/recipes/quantization.html。
有人可以解释一下区别和应用吗?谢谢。
自动混合精度(AMP)的主要目标是减少训练时间。另一方面,量化的目标是提高推理速度。
\nAMP:并非所有层和操作都需要 fp32 的精度,因此最好使用较低的精度。AMP 负责处理什么操作使用什么精度。它最终有助于加快训练速度。
\n\n\n混合精度尝试将每个操作与其适当的数据类型相匹配,这可以减少网络\xe2\x80\x99s的运行时间和内存占用。
\n
另请注意,在启用 Tensor Core 的 GPU 架构上观察到最大性能增益。
\n量化将模型参数中的 32 位浮点数转换为 8 位整数。这将显着减小模型大小并提高推理速度。然而,它可能会严重影响模型的准确性。这就是为什么您可以利用量化感知训练 (QAT) 等技术。剩下的你可以阅读你分享的教程。
\n| 归档时间: |
|
| 查看次数: |
1340 次 |
| 最近记录: |