Graphcore IPU的独特之处在于将整个机器学习知识模型保留在处理器内部。一个服务器内有16个与IPU-Link技术连接在一起的IPU处理器,这样的IPU系统将拥有超过100,000个完全独立的程序,所有程序都在机器智能知识模型上并行工作。
11月14日机器之心消息,微软与Graphcore达成合作,正式发布Microsoft Azure上Graphcore智能处理单元(IPU)的预览版。这是公有云领导供应商首次提供GrapchoreIPU,这些IPU从构建之初便旨在支持下一代机器学习,同时还包括Poplar软件栈。
据介绍,微软和Graphcore已经紧密合作了两年多。在此期间,由杰出工程师MarcTremblay领导的微软团队一直在开发针对Azure的系统,并在IPU上提升高级机器视觉和自然语言处理(NLP)模型。 Azure上的Graphcore IPU预览版现已开放供用户注册,专注于突破NLP界限并在机器智能方面取得新突破的开发者可获得优先访问权限。
Graphcore从零开始设计智能处理单元(IPU),旨在驱动机器智能领域的新突破。IPU和产品就绪的Poplar软件栈为开发人员提供了功能强大、高效、可扩展和高性能的解决方案,从而助力实现AI创新。通过加速更复杂的模型并开发全新的技术,客户得以解决最困难的AI工作负载。
目前模型中最先进的性能
微软和Graphcore的开发人员使用BERT语言模型实现了最先进的性能和准确性,仅用一个IPU服务器系统和8个C2 IPU处理器PCIe卡就可以在56个小时内训练BERTBase。对于BERT推理,Graphcore的客户发现吞吐量提高了3倍,延迟改善了20%以上,从而可以更快地交付结果。该水平的语言理解性能对于搜索引擎提供更有用的查询响应以及对于文本和对话式AI应用程序(如情感分析和需要人类水平理解能力的智能个人助手)至关重要。自然语言处理是人工智能的重要战略领域,预计到2025年,仅针对自然语言处理的人工智能硬件市场规模就将达到150亿美元(来源:Tractica Q42018)。 “自然语言处理模型对于微软来说非常重要——在Microsoft Azure上运行我们的内部AI工作负载,以及服务我们的AI客户,” 微软公司Azure计算事业部副总裁Girish Bablani说:“与Graphcore在处理器方面的新合作能够为我们的客户带来诸多裨益,这一潜力令我们感到非常兴奋。Graphcore的产品扩展了Azure的能力,我们在此领域内所做的努力是我们确保Azure仍然是AI最佳云的战略的一部分。”IPU使新的AI创新成为可能
除了为当今的复杂AI模型(如BERT)提供最先进的性能外,IPU还擅长加速新技术。 IPU将开辟新的研究领域,并帮助公司探索新技术,建立可以用更少的数据进行训练的更高效的机器学习系统。欧洲搜索引擎Qwant是Graphcore IPU早期的客户之一,Qwant凭借运行搭载下一代图像识别模型 ResNext的IPU,获得了高性能,同时降低了延迟。 Qwant首席执行官埃里克·莱安德里(EricLeandri)解释说: “Qwant的研究团队致力于AI的前沿技术,以便在用户搜索查询中快速提供最佳结果,同时确保结果是中立、公正和准确的。这是一个很高的要求。我们每天仅图像搜索就达到数百万次。我们正在实施的最新AI创新之一是称为ResNext的新型图像识别模型,可以提高提供图像搜索结果的准确性和速度。我们一直与微软和Graphcore紧密合作,在Azure中使用IPU处理器技术,并且在使用IPU上使用ResNext的图像搜索功能中看到了显着改,即性能提高了3.5倍。 Graphcore IPU在新的机器智能模型上具有巨大的创新潜力,我们正在研究这些方法来完善搜索,以便我们能够准确地提供客户所需的结果。”
ResNext使用分组卷积和深度可分离卷积来大幅提高效率(准确性/参数)。这涉及将卷积块拆分为较小的可分离块,以便IPU有效地支持这些卷积块。为了更深入地了解针对组卷积和完全深度可分离卷积的硬件适用性,Graphcore的客户工程团队制定了一组微基准测试,其中包括典型的卷积模块。测试表明,IPU具有明显的全面优势,分组卷积的吞吐量优势更高达77倍。
什么是IPU?
智能处理单元(IPU)与当今的CPU和GPU处理器完全不同。它是一种高度灵活、易于使用的并行处理器,完全从零设计,能在目前用于训练和推理的机器智能模型上实现最先进的性能。更重要的是,IPU的设计令实现新兴机器智能工作负载成为可能。 Graphcore IPU的独特之处在于将整个机器学习知识模型保留在处理器内部。一个服务器内有16个与IPU-Link技术连接在一起的IPU处理器,这样的IPU系统将拥有超过100,000个完全独立的程序,所有程序都在机器智能知识模型上并行工作。全软件栈和框架支持
过去三年中,Graphcore建立了专门为机器智能设计的图形工具链——Poplar软件栈。Poplar与TensorFlow和开放神经网络交换(ONNX)无缝集成,从而使开发人员可以使用其现有的机器智能开发工具和现有的机器学习模型。 Graphcore还为ONNX提供了训练运行时(runtime),并且正与ONNX各组织紧密合作,以将其纳入ONNX标准环境中。最初的PyTorch支持将于2019年第四季度提供,完整的高级功能支持将于2020年初可用。