IBM日前放出话来,说旗下POWER服务器上的机器学习不仅仅是比谷歌云的TensorFlow快而已,而是快了整整46倍。
谷歌软件工程师Andreas Sterbenz今年二月曾发文描述如何利用谷歌云机器学习和TensorFlow进行大规模广告和推荐场景点击预测。
他训练的模型可用来预测Criteo Labs点击日志(http://labs.criteo.com/)上显示广告的点击次数,Criteo Labs点击日志的大小超过1TB,包含来自数百万显示广告的特征值和点击反馈资料。
数据经过预处理(60分钟)后进行实际学习,训练用了60台工作机器和29台参数机器。该模型的训练花了70分钟,评估损失为0.1293。据我们的理解,该数值是准确性的粗略指标。
Sterbenz然后用了不同的建模技术,以获得更好的结果和减少评估损失,这样做花的时间会更长,最后用的模型是一个三期(Epoch)深度神经网络(Epoch指所有训练矢量更新权重的次数),耗时78小时。
IBM对此并不感兴趣,IBM希望证明自己的训练框架在POWER9服务器和GPU上运行时,在基本初始训练方面的性能比谷歌云平台上89台机器还要好。
苏黎世IBM研究中心的Thomas Parnell和Celestine Dunner用了相同的源数据,都是 Criteo Terabyte Click Logs(Criteo TB点击日志),训练样本达42亿个,特征达100万个,用的机器学习模型、逻辑回归都相同,但机器学习库不同。Parnell和Dunner用的是Snap机器学习库(Snap ML)(https://arxiv.org/pdf/1803.06333.pdf)。
他们在四台Power System AC922服务器上用Snap ML进行训练,即是说8个POWER9 CPU和16个Nvidia Tesla V100 GPU。完成时间不是70分钟,而是91.5秒,快了46倍。
他们给出了一张图表,比较了Snap ML、谷歌TensorFlow和另外三个库的表现:
速度是TensorFlow的46倍,这样的改进是不可小视的。二位研究人员将其归因于什么呢?
他们表示,Snap ML的特点是多层次并行性,可以在集群里不同节点之间分配工作负载,因而可以利用加速器单元,而且还可以利用各计算单元的多核并行性
1、首先,将数据分布到集群中的各工作节点上
2、再将节点上的数据分配到并行运行的CPU和加速GPU上
3、数据再被发送到GPU的多个内核,而CPU工作负载用的是多线程
Snap ML对分层算法功能进行嵌套,以利用三个层级上的并行性。
IBM研究人员并没有说TensorFlow未利用并行性,也没有提供Snap ML和TensorFlowz之间在这方面的比较。
但他们确实提到,“我们实行了专门的解决方案,目的是利用GPU的大规模并行架构,同时又不违背GPU内存中的数据局部性,这样就可以避免大量的数据传输开销。”
他们的文章称,用NVLink 2.0接口的AC922服务器比用接到Tesla GPU的PCIe接口的至强服务器(至强黄金版6150 CPU @ 2.70GHz)要快。 文章表示,“对于基于PCIe的设置,我们测到的有效带宽为11.8GB /秒,对于基于NVLink的设置,我们测到的有效带宽为68.1GB /秒。”
发送到GPU的训练数据就会在GPU里处理。 NVLink系统向GPU发送数据块的速度比PCIe系统快得多,时间为55ms,而不是318ms。
IBM团队还表示,“我们将系统用到的算法在用于稀疏数据结构时做了一些新的优化。”
总的来说, Snap ML似乎可以更多地利用Nvidia GPU,与x86服务器产品的PCIe链接比,在NVLink上可以更快地将数据传给Nvidia GPU。我们不知道POWER9 CPU与Xeons的速度相比时如何;就我们所知,IBM尚未公开发布任何POWER9与Xeon SP直接比较的结果。
我们其实也无法说Snap ML比TensorFlow好了多少,只有在相同的硬件上运行Snap ML和TensorFlow做了比较以后才能见分晓。
无论怎么说,时间缩短了46倍的确令人印象深刻,这样的表现给了IBM推动旗下POWER9服务器很大的空间,POWER9服务器可以成为加插Nvidia GPU运行Snap ML库及进行机器学习的场所。
好文章,需要你的鼓励
洛杉矶大火一年后,亚马逊Ring安全服务推出Fire Watch功能以降低野火风险。该功能集成在Ring应用的邻里版块中,计划今春全美推广。系统依托非营利组织Watch Duty的野火预警,当检测到野火时会通知附近用户,符合条件的户外摄像头将启用AI图像识别监测火情。Ring还推出AI异常事件预警和主动警告功能。但隐私问题仍存争议,多个州因隐私法限制相关AI功能使用。
剑桥大学研究团队首次系统探索AI在多轮对话中的信心判断问题。研究发现当前AI系统在评估自己答案可靠性方面存在严重缺陷,容易被对话长度而非信息质量误导。团队提出P(SUFFICIENT)等新方法,但整体问题仍待解决。该研究为AI在医疗、法律等关键领域的安全应用提供重要指导,强调了开发更可信AI系统的紧迫性。
数据平台Snowflake将谷歌Gemini模型集成到其Cortex AI中,让客户在数据环境边界内访问基础模型。Cortex AI支持跨云推理,无论客户环境运行在AWS、Azure还是谷歌云上。该平台已支持OpenAI、Anthropic等多家模型提供商,采用按需付费模式。客户可通过SQL或API直接访问模型,分析多模态数据并构建AI应用场景。
威斯康星大学研究团队开发出Prithvi-CAFE洪水监测系统,通过"双视觉协作"机制解决了AI地理基础模型在洪水识别上的局限性。该系统巧妙融合全局理解和局部细节能力,在国际标准数据集上创造最佳成绩,参数效率提升93%,为全球洪水预警和防灾减灾提供了更准确可靠的技术方案。