Google AI加速器Cloud TPU现支援PyTorch框架

Google在云端加速器TPU进一步支援深度学习函式库PyTorch,大多数的PyTorch程式,仅需使用Python套件PyTorch/XLA,进行最小程度的修改,就能够使用TPU来加速机器学习工作负载,且在TPU还不支援的操作,自动退回到以CPU运算,而PyTorch/XLA也会生成详细的报告,助PyTorch使用者发现应用程序瓶颈,在Cloud TPU上,能够高效能的执行机器学习工作负载。
在2019年PyTorch开发者大会上,脸书、Google以及Salesforce Research的工程师开始了PyTorch-TPU专案,目标是要让PyTorch社群,可以更容易运用Cloud TPU高效运算能力,因此该团队创建了PyTorch/XLA套件,结合PyTorch API与XLA线性代数编译器,让PyTorch可以连结到Cloud TPU,将TPU核心作为装置使用。
XLA是Google在2018年推出的最佳化编译器,透过最佳化算法运算,可以提升机器学习模型的执行速度,XLA支援处理器以及绘图卡,也能够在Google TPU上执行,透过XLA可以让Cloud TPU更容易支援PyTorch。
最新释出的PyTorch/XLA,使Cloud TPU正式支援PyTorch 1.6,在基础设施层提供模型平行运算能力,允许开发者可以在多个TPU核心上,分散大规模嵌入表,因此有能力创建许多过去无法达成的应用。另外,Google在云端上发布的深度学习虚拟机器(DLVM)映像档,其中包括PyTorch等各种深度学习框架,而 PyTorch/XLA 1.6现在预装在DLVM中,并且已经对Cloud TPU进行最佳化,供使用者快速启用开始工作。
为了让开发者更好上手PyTorch/XLA,Google云端还提供一组常用深度学习模型开源实作,以及相关的教程,这些模型包括使用ImageNet资料集的图像分类任务ResNet-50,还有Transformer、RoBERTa以及BERT等知名模型,也能使用PyTorch 1.6才加入,由脸书开发的深度学习推荐模型(DLRM)。官方提到,在Cloud TPU训练这些模型,大部分的情况仅需要很少的程式码更改。
艾伦人工智能研究所(Allen Institute for AI,A12)最近在多个专案中,开始使用PyTorch/XLA以及Cloud TPU进行研究,他们利用PyTorch/XLA在最新的语言模型中,加入视觉化元件,以改善语言理解能力,A12科学家Matthew Peters认为,虽然PyTorch/XLA目前还只是新技术,但提供已经投入使用PyTorch的组织,一个加速训练机器学习模型的新运算平台。
