首页 > 解决方案 > 如何在使用 Intel Extension for PyTorch (IPEX) 时启用混合精度训练?

问题描述

我正在使用针对 Pytorch 的英特尔扩展来研究 Dog-Cat 分类器(参考 - https://github.com/amitrajitbose/cat-v-dog-classifier-pytorch)。我想减少模型的训练时间。如何在我的代码中启用混合精度?参考这个 github(https://github.com/intel/intel-extension-for-pytorch)来训练我的模型。

标签: artificial-intelligenceintelintel-oneapiintel-pytorch

解决方案


要启用混合精度,您可以直接关注 github 链接以获取 pytorch 的英特尔扩展 ( https://github.com/intel/intel-extension-for-pytorch )。

For Float32 you can
# Invoke optimize function against the model object and optimizer object
model, optimizer = ipex.optimize(model, optimizer, dtype=torch.float32)

对于 BFloat16

# Invoke optimize function against the model object and optimizer object with data type set to torch.bfloat16
model, optimizer = ipex.optimize(model, optimizer, dtype=torch.bfloat16)

推荐阅读