为广泛的视觉导向机器学习应用铺路
2017-04-01
作者:于寅虎
来源:电子技术应用
编者按: Xilinx公司宣布推出Xilinx reVISION™ 堆栈,将赛灵思技术扩展至广泛的视觉导向机器学习应用领域,进一步补充和完善了其近期发布的可重配置加速堆栈,将大幅扩展Xilinx公司相关技术在机器学习应用领域从端到云的部署。日前,笔者专访了Xilinx公司战略与市场营销部高级副总裁Steve Glaser先生,他详细阐述了reVISION堆栈在视觉导向机器学习方面的强大推动力。
随着物联网设备与技术的快速部署,从终端采集的数量呈现大爆炸,其中视频数据流更是其中的主流,因此针对视频采集与智能分析成为热点。此前,物体识别、图像分类,都是在云上通过机器学习来完成的基于视频的机器学习,然而由于受到信息传输技术的速率和带宽限制,视觉导向的机器学习任务不可能完全在云端完成,于是在终端开展机器学习成为新的方向,把视频一帧一帧地转变为视觉,通过机器学习可以来识别其中具体的内容。
据统计,在以摄像头为代表的嵌入式终端里,大约80%最初的机器学习的应用都是以视觉系统为基础的,其他20%的应用涉及控制系统和安全性,因此以视觉为导向的机器学习技术,成为当前主流市场热点。
加速从端到云的具备机器学习能力设备部署
“以视觉为导向的机器学习正在各类市场中实现一系列快速增长的应用,其中包括传统的高端消费市场、汽车、工业、医疗和航空航天与国防等, 还包括新一代应用如协作机器人、具有“感应和躲避”功能的无人机、增强现实、自动驾驶汽车、自动化监视和医疗诊断等”。Steve Glaser先生介绍,“在这些市场中,差异化至关重要,系统必须具备最高响应速度、最新算法和快速的传感器部署,大约三分之二的视觉导向半导体应用属于这类市场。”
目前,相当数量的客户选择了xilinx器件来开发视觉系统,但是客户并没有使用传统的FPGA器件,而是使用了全可编程的Zynq技术。
Steve Glaser表示,上述公司之前都做出了很大的投入,也开发了很多关于硬件和软件的专业资源,在竞争过程当中获得优势。现在这些客户已经开始寻找下一代的技术,他们不仅仅是开发以计算机视觉为基础的解决方案,他们还在加入更多的机器学习、传感器方面的元素。
虽然不知道具体的客户在做什么项目,但是Steve Glaser知道已经有超过40家客户现在是在用Xilinx的Zynq技术进行机器学习的技术开发。
在这一过程中,如何解决客户在新的开发项目过程中遇到的痛点,成为加速推终端视觉导向机器学习设备部署的关键。
Steve Glaser表示,从客户那里了解到三个主要的需求点。第一,客户希望机器学习的智能性有所提高,同时系统能够实现及时的快速响应来应对一切外部事件。第二,,客户希望能够以非常高的效率使用非常先进的算法来运行应用,比如成本要低,功耗要低。第三,客户希望获得灵活性,神经网络算法都在不停的变化,传感器的类型配置和组合也在不断的变化,因此客户希望能够非常便捷的来升级他们的系统,使得他们能够以最好的解决方案为客户服务。
全新的reVISION堆栈可加速机器视觉开发
面对以视觉导向进行机器学习功能开发客户遇到的痛点,Xilinx公司推出了全新的reVISION堆栈,在当前很好地解决了工程师在开发过程中遇到的困难。
Steve Glaser表示,Xilinx紧紧地抓住了这一市场机遇,有能力帮助提高这些客户的生产率,尤其是帮助他们能够更好的应用机器学习来开发新的自主系统。
据Steve Glaser介绍, reVISION 堆栈包括平台、算法和应用开发所需的丰富的开发资源,可支持最流行的神经网络, 包括 AlexNet、GoogLeNet、SqueezeNet、SSD 和 FCN。此外,该堆栈还提供了库元素, 包括 CNN 网络层的预定义的优化型实现方案,这也是构建定制神经网(DNN/CNN)所必需的。机器学习元素配合丰富的满足加速要求的 OpenCV 系列功能用于计算机视觉处理。对应用层开发来说,赛灵思支持业界标准的框架,包括用于机器学习的 Caffe 和用于计算机视觉的 OpenVX。reVISION 堆栈还包括赛灵思及第三方提供的开发平台,诸如各种类型的传感器。
全新的reVISION堆栈能够支持更广泛的没有或者很少硬件设计专业知识的嵌入式软件和系统工程师,使其也可以使用赛灵思技术更轻松、更快速地开发视觉导向的智能系统。一旦将机器学习、计算机视觉、传感器融合和连接的优势融为一体,这些工程师将从中大受裨益。
支持以最快速度打造响应最快的视觉系统,相比最具竞争力的计算嵌入式 GPU 和典型 SoC,将机器学习推断的单位功耗图像捕获速度提升了 6 倍,将计算机视觉处理的单位功耗帧速度提升了 42倍,时延降低为 1/5。即便是没有硬件专业知识的开发人员也能通过结合使用 C/C++/OpenCL 开发流程、业界标准的框架,以及 Caffe 和 OpenCV 等库,用单个 Zynq SoC 或 MPSoC 芯片开发出嵌入式视觉应用。
借助reVISION堆栈所独具的可重配置性和任意连接优势,开发人员可以利用堆栈快速开发和部署升级。随着神经网络、算法和传感器技术和接口标准的不断加速发展,可重配置性对“适应未来”的智能视觉系统至关重要。
Steve Glaser强调,reVISION堆栈能够帮助Xilinx扩展广泛的视觉导向机器学习应用领域,再加上之前推出的可重配置加速堆栈,就能够实现从终端到云的一个全面的覆盖和布局,推动下一代的机器学习。
reVISION可以完成80%开发任务
可以说,reVISION堆栈这一产品的出现是基于一系列技术的延革。
据Steve Glaser介绍,大约在六年以前,Xilinx推出了新的提高产率的工具,也就是基于RTL的硬件设计的工作流程,使得整个过程能够大大的加速,一直以来客户都在使用这样的工作流程来处理计算机视觉。但同时也有很多客户开始利用Xilinx的最新器件进行机器学习方面的开发,采用传统的RTL流程设计,花费了客户大量的精力与资源。所以大约在一年半之前,Xilinx推出首个软件定义的编程环境,也就是SDSoC,也就是Zynq SoC芯片,主要是嵌入式的应用。
现在Xilinx已经有1100多名付费的Zynq用户,其中有半数都是专注于视觉方面的应用。Zynq虽然可以帮助客户提高了生产率,但是并没有达到客户的最高目标。实际上,客户希望能够有符合行业标准的库和框架,帮助他们继续压缩开发时间。
Steve Glaser表示,通过reVISION的堆栈,开发时间可以大大压缩,而且reVISION的堆栈还能够服务于那些并没有掌握硬件方面专业知识的工程师。传统的模式就是赛灵思提供芯片以及开发环境当中20%的解决方案,剩下的80%要由客户来完成。但是有了这个reVISION堆栈以后,Xilinx能够完成解决方案当中80%的工作,剩下的客户只要完成20%就可以实现自己的应用。
正如Steve Glaser刚才提到的,这样的发展能够大大的拓展无论是工程师还是客户以及其他的应用对我们的器件和技术的应用,也使得这些新的客户能够获得至少比较大的之前专家级的客户能够获得的优势。所以以软件为基础的自主的reVISION,能够提供一些我这里提出的性能方面的优势。
后记:作为一家一直站在FPGA领导厂商位置的企业,Xilinx一直引领着这一领域的发展方向。 此次reVISION堆栈的发布,对于机器视觉领域来说是一个很大的福音。一方面消除了向广泛视觉导向机器学习应用扩展的障碍,另一方面加速了了机器学习应用从端到云的开发和部署。