从量化到无监督学习再到量子AI,高通在AI领域有这些前沿研究成果。
提到高通,如果你想到的还是无线电通信技术和芯片,那你可就落伍了。
2007 年高通启动首个 AI 项目,开始了人工智能研发之路。2018 年 5 月,高通AI研究院成立,进一步强化整合公司内部的前沿人工智能研究。在AI研发方面,高通从未停下脚步。
高通自2007年以来的AI研发成果。
最近,高通技术副总裁、阿姆斯特丹大学机器学习教授Max Welling撰文介绍了高通近期的AI研发成果,涉及量化、无监督学习和量子AI等基础性长期研究。
量化
如何提高能效,尤其是在终端侧实现高能效是高通一直以来的研究方向。
能效,即使应用能够实时、低功耗、流畅地进行推理。而量化是缩小神经网络大孝降低计算时间和能耗的重要手段,然而量化方法面临着一些挑战:维持模型准确率,以及自动化量化过程。
高通在这两个方面均取得了显著进展,其目标是将神经网络量化至更低的位宽,同时维持原有的准确率,并增加自动化程度、减少所需数据量、最小化训练。为解决这些问题,过去一年中高通提出了三种量化方法:data free quantization (DFQ)、AdaRound (Adaptive Rounding) 和Bayesian bits。
DFQ量化:从 32 位浮点到 8 位定点量化
DFQ是一种解决权重范围中的偏差和不均衡的自动化方法,由高通AI研究院2019年提出,被ICCV 2019接收为Oral论文 [2]。该方法无需训练,不需要额外数据,且能在不过多损失准确率的情况下实现 8-bit 量化。
DFQ方法不依赖于训练数据、微调或超参数设置,而是用一种自动化的方式使32-bit设置下训练得到的深度学习模型在8-bit 硬件上运行。
为什么能实现这样的效果?这离不开跨层均衡(cross-layer equalization)和偏见纠正。
DFQ算法流程图。(图源:[2])
DFQ方法利用模型重缩放和重参数化,使模型对量化具备更强的稳健性,缓解量化对准确率的影响。例如,使用 MobileNet V1、MobileNet V2 和 Resnet 18等模型执行目标检测任务,在不需要重新训练的情况下,通过DFQ进行量化后的模型准确率损失在0.9%以内。
直至6-bit量化时,DFQ量化后的模型仍可以达到接近32位浮点的准确率,而基线量化方法从12-bit 量化开始就出现了准确率显著下降的现象。
无需重新训练,就能完成从 32 位浮点到 8 位定点的模型量化,并实现几乎相同的准确率。这为高通生态链中广泛客户的量化需求提供了强有力的支持。
AdaRound:4-bit 量化
AdaRound是一种更好的训练后量化权重舍入(weight-rounding)机制。该方法由高通AI研究院于今年6月提出,相关研究被ICML 2020会议接收 [3]。
AdaRound 挑战了常见的舍入方法,提出用自动化方式找出最优的舍入选择。AdaRound基于DFQ方法,因此无需重新训练,只需要少量无标注数据,并且能在不过多损失准确率的情况下实现 4-bit 权重量化。
高通研究人员首先创建了一种分析舍入方法效果的理论框架,该框架考虑了输入数据和任务损失的特点。基于这一框架,高通将舍入形式化为每层的二次无约束二元优化问题(QUBO)。
AdaRound方法通过连续松弛(continuous relaxation)为这一形式化找出优秀的解。该方法只需要少量无标注数据,计算高效,且能够应用于任意具备卷积或全连接层的神经网络。
实验表明,AdaRound在多个网络和任务上获得了新的训练后量化SOTA结果,包括Resnet18、Resnet50、MobilenetV2、InceptionV3 和 DeeplabV3。无需微调,AdaRound可以将Resnet18 和 Resnet50 的权重量化至4-bit,并且准确率损失不到1%。
不同训练后量化方法的性能对比情况。该表展示了不同模型的ImageNet验证准确率,从中可以看到AdaRound对Resnet18 和 Resnet50 执行量化后的准确率相比全精度模型只有不到1%的损失。(图源:[3])
Bayesian Bits:量化 + 剪枝,实现混合精度量化
Bayesian Bits是高通今年5月提出的一种学习混合精度量化的新方法 [1]。和前面两种方法相比,它需要训练和训练数据,但支持联合学习位宽精度和是否应对节点执行剪枝操作。该方法自动化执行混合精度量化,并在准确率和kernel位宽之间进行权衡,实现SOTA结果。
Bayesian Bits使用一种新型的量化操作分解方式,顺序地将位宽翻倍。对于每个新的位宽,它将全精度值和之前舍入值之间的残差进行量化。然后确定是否添加量化后的残差,以得到更高的有效位宽和更低的量化噪声。为生成硬件友好的配置,该分解从二次幂位宽开始,然后通过额外的 0-bit 选择,实现从统一的视角看待剪枝和量化。
分解图示。(图源:[1])
之后,Bayesian Bits引入可学习的随机门,用它们来整体控制给定张量的位宽。这样,我们就可以通过对随机门执行近似推断来获得低bit解。
实验表明,Bayesian Bits方法能够学习剪枝的混合精度网络。相比于静态位宽方法,该方法在准确率和效率之间实现了更好的权衡。
使用这些不同的量化方法,AI工程师和开发者可以选择适合自己需求且能够实现恰当权衡的方法。
此外,高通AI研究院提出的这些量化方法商用化速度很快,并通过论文、开源或SDK的形式与社区共享。例如,DFQ已被集成在高通创新中心(QuIC)开源的AI模型效率工具包(AIMET)和高通神经处理SDK中。
无监督学习
人类具备学习和想象世界的能力。冲击我们感官的原始信息就像一大堆相关关联的连续信号(如光波和声波),这些信号在我们的大脑中被解析为离散的物体及其之间的关系。我们可以看到桌椅、猫狗,可以理解它们的用途,甚至它们之间的关联。
而在深度学习中,常常将连续输入信号转换为较为抽象的表示(即嵌入),以便执行预测。而表示通常通过监督学习学得,即模型获得输入信号和标签。不过,学习过程并非一定是监督式的。即使没有标注,我们也可以执行学习任务,这就是无监督学习,该方法从原始输入信号中学习,旨在根据物体及其之间的关系来学习世界的模块化表示。
无监督学习是高通的一大研究方向。最近,高通研究人员对射频(RF)信号应用无监督学习技术,达到了厘米级的精确定位。
在下图所示的汽车装配线环境中,存在很多不规则的形状和移动设备,因此很难使用GPS等技术。如果我们想要基于手机接收到的射频信号来了解流水线工人的精确位置,使用传统方法建模室内RF传播是非常复杂的。换言之,由于墙和机械臂等不规则物体的反射、衍射和散射,射频信号会来自不同的路径,因此我们很难精确了解工人的位置。
对射频信号应用无监督学习可用于汽车装配线环境中的精确定位。
对于此类复杂环境或任意类型的室内定位环境,高通研究人员想出了一个好办法:将AI与物理学知识结合起来,从无标注射频信号中学习传播的复杂物理学知识。该方法就是「神经增强」(neural augmentation),即利用人类知识和算法增强神经网络,反之亦然。神经网络学习RF环境的一个优势是,它可以估计RF接收器的精确位置,从而定位人的位置。
将无监督学习技术应用于RF环境,进而学得精确定位。
在「神经增强」环节,高通创建的神经网络使用生成式自编码器和传统的通道建模,基于无标注信道状态信息(CSI)进行训练,并学习RF环境。该神经网络以完全无监督的方式学得发射器位置,甚至了解其刚体转换(如转移、反射、旋转)。只需少量标注RF测量值,就可以解决模糊映射问题,进而实现厘米级的精确定位。
神经增强技术:混合架构才是王道
在上述示例中,「神经增强」技术发挥了重要作用。该方法的核心思想是承认生成模型是智能的关键。
Max Welling教授认为「神经增强」有助于解决如何将推理能力集成到AI中的问题。
在人工智能发展初期,符号主义者认为我们应将逻辑推理的规则写入智能系统,联结主义者认为神经网络架构可以学习一切。神经增强则位于二者的中间地带。
在执行经典推断(即符号推理)时,模型无需从样本中学习,只要遵循逻辑规则,通过优化找到最可能的解释即可。但是,它忽略了从一组此类问题中学习的重要机会。假如你需要重建受损图像,你可以基于图像的生成过程优化某个目标函数,进而推断出最优的图像重建结果;你也可以创建一个由受损图像和完整图像对构成的数据集,学习如何重建它们。
而在神经增强中,你可以做到上述两者:使用经典模型作为主干迭代推理模型,训练一个神经架构来纠正其错误。换言之,将生成式因果模型嵌入到神经网络结构中。
Max Welling教授认为,这类混合架构是未来模型设计的关键 [4]。
量子力学 + AI = ?
量子计算是近期的热点话题,高通在这方面也做了一些基础研究:如何将量子力学和AI结合起来,实现显著的性能提升。
量子力学从微观的角度描述自然,具备两个适用于AI处理的属性:叠加(superposition)和纠缠(entanglement)。叠加表示每个量子比特既可能是1也可能是0。纠缠表示量子比特之间密切连接,一个量子比特的变化会立即影响到另一个。
高通的研究将这一范畴从经典比特(0或1)转向贝叶斯比特(0和1之间的概率分布)和量子比特(可将其看作球面,能够添加另一个维度或自由度)。
将量子力学应用到机器学习是真正基础的绿色研究领域。量子退火法和量子深度学习就是利用量子计算强大力量的典型例子。量子退火法可用于解决组合优化问题,如芯片的物理布局,从而提供性能的巨大提升。量子深度学习将量子力学的数学知识应用于深度学习,从而设计出更强大的算法。
目前,高通在这一领域取得了一些初步成果。他们开发了量子形变二值神经网络,支持在量子计算机上运行大型经典神经网络,或在经典计算机上进行高效模拟。基于此,高通研究人员将这一经典神经网络变形并集成量子效应,而且该网络仍能高效训练和运行。这也是首个用于真实数据的量子二值神经网络。
量子形变二值神经网络定义及原理(图源:[5])。
高通AI研究院成立两年多以来,研发方向从平台式创新,即用 AI 的方法使 AI 更有效,转向了全方位、全频谱的 AI 研究,在基础研究跟应用研究之间进行很好的平衡。
此外,高通AI研究院在能效、高效学习、个性化方向上发表了多篇论文,被CVPR、ICLR、NeurIPS、ICCV、MLSys等多个顶级会议接收,详情参见https://www.qualcomm.com/invention/artificial-intelligence/ai-research。
参考文献
[1] Baalen, M., Louizos, C., Nagel, M., Amjad, R. A., Wang, Y., Blankevoort, T., and Welling, M. Bayesian Bits: Unifying Quantization and Pruning. arxiv preprint arXiv:2005.07093, 2020.
[2] Nagel, M., Baalen, M., Blankevoort, T., and Welling, M. Data-Free Quantization Through Weight Equalization and Bias Correction. In ICCV, 2019.
[3] Nagel, M., Amjad, R. A., Baalen, M., Louizos, C., and Blankevoort, T. Up or Down? Adaptive Rounding for Post-Training Quantization. In ICML, 2020.
[4] Welling, M. As far as the AI can see: What we still need to build human-level intelligence. from https://www.qualcomm.com/news/onq/2020/05/13/far-ai-can-see-what-we-still-need-build-human-level-intelligence.
[5] Welling, M. Pushing the boundaries of AI research. from https://www.qualcomm.com/media/documents/files/presentation-pushing-the-boundaries-of-ai-research.pdf.