赛灵思推出reVISION堆栈,进军视觉导向机器学习领域

2017 年 3 月 13 日,通过名为 reVISION™的堆栈,All programmable 技术和器件公司赛灵思(Xilinx)宣布将赛灵思技术扩展至广泛的视觉导向机器学习应用领域,解决软件及算法工程师 80% 的开发难题。


机器学习近年来的快速发展促进了传统嵌入式视觉系统的变革,众多传统嵌入式视觉应用采用机器视觉和传感器融合技术后都在发生巨变。


在 All programmable 技术和器件的全球领先企业赛灵思发布面向广泛视觉导向机器学习应用的名为 reVISION™堆栈解决方案的时候,赛灵思公司战略与市场高级副总裁 Steve Glaser 通过一个视频向我们展示了这样一个视觉导向的机器学习所推动的嵌入式视觉系统未来世界。

那么,赛灵思重磅发布的这个 reVISION™堆栈和嵌入式视觉系统的开发有什么关系,又有着什么样的市场价值和意义呢?


从传统的嵌入式视觉系统到视觉导向的自动化系统转变的三大需求


随着人工智能技术的发展,许多传统的嵌入式视觉系统正在逐步向利用机器学习和传感器融合的视觉导向系统应用转变,赛灵思 reVISION™所瞄准的,就是视觉导向的半导体市场。赛灵思认为这个市场占据大约三分之二的应用和三分之一的总市场容量。


img_0712.png

许多传统嵌入式视觉系统正在逐步向利用机器学习和传感器融合的视觉导向系统应用转变


在 Steve Glaser 看来,从传统的嵌入式视觉系统到视觉导向的自主系统,其实质就是后者可以实现三大使命:


img_0713.png下一代视觉导向系统的应用使命

第一、系统要能够智能高效地快速响应


速度极快的确定性系统响应时间是十分必要的。以汽车识别潜在的碰撞并采取刹车为例,ADAS 实际应用需要实时进行响应,甚至有时要具备可预测性。快速响应可以轻松实现安全刹车,避免碰撞,反之则会造成碰撞,带来安全隐患。这不但要求系统从感应到处理、分析、决策、通信一列过程高效推进,同时还要高效部署最新的机器学习技术。


第二、 系统要可以灵活地升级到最新算法和传感器


就灵活性而言,为了能够用尖端神经网络和机器学习推断效率部署最佳系统,工程师必须能够在整个产品的产品生命周期同时优化软硬件。通过统计可以看出,机器学习领域最近两年的科技发展十分迅猛。许多新的神经网络随着新技术的出现不断发展,也大幅提高了的部署效率。


img_0714.png

系统升级速度需要跟上神经网络演进的速度


而且,人工智能革命加速了传感器技术在不同领域的发展演进,也要求更高水平的传感器融合,以整合不同类型的传感器,以便在大环境下构建全面而完整的系统环境和对象视图。


img_0715.png

鉴于神经网络和相关算法的快速变化以及传感器的快速发展,可重配置性也就应运而生,使得软硬件系统不受传感器配置标准以及未来部署的限制,这满足了灵活性的需求。


第三、系统可以支持随时与其他机器和云相连接。


由于许多新系统都连接到了一起(比如物联网),因此需要与传统的已有设备通信,要与未来推出的新设备通信,还要能够进行云端通信。


赛灵思全可编程技术的独特优势


Steve Glaser 称,赛灵思全可编程的解决方案拥有独特的优势,可以全部满足以上自主系统需要实现的三大需求,而且比其它替代方案拥有显著的和可测量的优势。通过高效的推断和控制,赛灵思实现了传感器的最快响应时间,支持最新的神经网络,算法和传感器的可重构性,并支持与传统或新机器、网络和云的任意连接。


实际上,赛灵思全可编程解决方案在嵌入式视觉世界早已经被全球数百家用户所青睐。迄今为止,也就是在 reVISION™发布之前,全球已经有 23 家汽车制造商在 85 款不同车型的 ADAS 系统中部署了赛灵思先进的嵌入式视觉系统,另外还有数百家嵌入式视觉用户在其他数千种应用中也部署了赛灵思的先进嵌入式视觉系统。其中至少有 40 家已经在开发或部署机器学习技术以大幅提高系统的智能。大多数的视觉用户都看准了 Zynq® All Programmable SoC 和 MPSoC 的应用。


Steve Glaser 同时也承认,赛灵思方案虽然是打造下一代机器学习导向自主系统的理想选择,但是长期以来,这种方案还只属于那些拥有一定的硬件或者 RTL 设计基础工程师的客户。对于更广泛的应用和支持使用行业标准库和框架进行软件定义编程,还存在很大的障碍。reVISION™堆栈的诞生,正式为解决这个通往广泛应用的障碍而来。


reVISION™堆栈:消除广泛机器学习应用的障碍


众所周知,1984 年在加利福尼亚圣何塞市成立的赛灵思是 FPGA 的发明者。FPGA 全称为现场可编辑门阵列,作为专用集成电路领域中的一种半制定电路,可以针对特定任务进行重新编辑,计算效率高。作为近些年备受业界关注的深度学习计算硬件平台,FPGA 市场一直被各巨头公司所关注、看好。2015 年英特尔完成了其迄今为止最大收购——以 167 亿美元收购赛灵思的竞争对手 FPGA 生产商 Altera 就是一个很好的证明。


事实上,赛灵思公司早在 2016 年就实现了从 FPGA(可编程逻辑)向 All Programmable(全可编程) 产品和技术的全面转型,现今产品覆盖 FPGA、SoC、MPSoC、RFSoC、3DIC。这次转型首先从产品上打开了可编程产品在更多领域应用的可能性,其次就是通过工具革新打破硬件编程的模式局限,致力于让广泛领域的工程师们可以使用这种硬件解决方案进行设计——既然是 SoC,是数据中心,那么面向的必然是广大的软件、算法工程师们。因此,赛灵思在工具上有了主要针对软件及算法工程师而且使用户增长 5 倍达 25 万的蓝图,即赛灵思工具上的三大步:


  • 2012 年推出 Vivado HLS (高层次综合) 工具,可以将 C,C++ 或者 System C 代码自动转化为硬件面试语言。Vivado HLS 不仅能加速算法实现,还能将验证时间缩短多达 1 万倍。然而这个工具还是需要硬件专业人员的参与。

  • 为进一步加快设计进程,减少对硬件专家的依赖,赛灵思在 2015 年推出了基于 C、C++和 OpenCL 语言的 SDSoC 开发环境。虽然这帮助其它上千名能够开发自己的基础平台、库和应用的用户大幅缩短了开发周期,但仍无法满足广泛机器学习应用推广与部署的要求,而且机器学习也带来了复杂问题。

  • 如今,在这样的大环境下,赛灵思推出了 reVISION™堆栈技术,致力于实现传统的嵌入式视觉系统到视觉导向的自动化系统的转变,并移除全可编程技术广泛应用的障碍。

全可编程技术向广泛视觉导向机器学习应用扩展的障碍在于软件定义的编程模式、库以及框架。而在软件定义开发方面,易用性恰恰是用户关注的重点。


「reVISION™堆栈的诞生正是为此而来」,Steve Glaser 说道。reVISION™堆栈的诞生扫清了全可编程技术广泛应用的障碍,支持具有很少甚至没有硬件知识或 RTL 设计专长的软件和系统工程师,使其可以使用软件定义开发流程就能将机器学习和计算机算法的高效实现方案整合到响应迅速的系统中,更轻松、更快速地开发视觉导向的智能系统。一旦将机器学习、计算机视觉、传感器融合和连接的优势融为一体,这些工程师将从中大受裨益。


reVISION™堆栈包括用于平台、算法和应用开发的丰富开发资源。它支持最流行的神经网络,例如 AlexNet、GoogLeNet、SqueezeNet、SSD 和 FCN,同时也支持库元素如卷积神经网络网络层的预定义优化型实现方案,这也是构建定制神经网络所需的。同时,堆栈配合了丰富的满足加速要求的 OpenCV 功能,可以支持机器视觉处理。对应用层面的开发来说,赛灵思支持流行的框架,包括用于机器学习的 Caffe 和用于计算机视觉的 OpenVX(将于 2017 年下半年推出)。reVISION™堆栈还包括赛灵思和第三方提供的基于 Zynq SoC 和 MPSoC 的开发平台。Steve Glaser 称,虽然目前仅支持 Caffe 框架,但是未来计划拓展到更多的框架比如 TensorFlow,也会根据用户的需求进行拓展。


img_0716.png

reVISION™堆栈包含广泛的平台、算法、应用开发资源


同时,reVISION™堆栈开发流程从熟悉的 C、C++、OpenCL 语言及相关编译器技术的基于 eclipse 的开发环境(即 SDSoC 开发环境)启动。在 SDSoC 环境中,软件工程师和系统工程师能以 reVISION 硬件平台为目标,并采用大量的加速就绪型计算机视觉库,很快还能采用 OpenVX 框架,允许开发者快速构建应用。


img_0717.png

reVISION™堆栈软件定义流程


针对机器学习算法,可以利用 Caffe 等流行的框架来培训神经网络,用 Caffe 生成的.prototxt 文件对基于 ARM 的软件调度器进行配置,从而驱动专门为可编程逻辑预先优化的 CNN 推断加速器。


对计算机视觉和其他专有算法来说,用户可对软件代码进行特征分析,发现瓶颈,并在代码中标出希望加速并进行「硬件优化」的特定功能。「系统优化编译器」则用来创建加速的实现方案,包括处理器/加速器接口(数据移动器)和软件驱动器。结合计算机视觉和机器学习功能,该编译器能创建优化的融合实现方案。


img_0718.png

reVISION™堆栈易用性


赛灵思嵌入式视觉及 SDSoC 高级市场经理 Nick Ni 表示:「我们的目的就是让更多软件工程师和系统工程师无需掌握或只需掌握一点硬件设计专业技术,就能够更轻松快速地开发出智能嵌入式视觉系统,包括将机器学习和计算机视觉算法的超高效实现方案整合到高响应性系统中。以 OpenCV 为例,OpenCV 库函数对于开发许多计算机视觉应用来说是比较重要的。目前我们可以提供部分已经进行优化好的库,不需要开发者自己来写硬件代码,可以直接用我们的工具库进行生成。利用 reVISION™进行计算视觉的设计流程是:在 Zynq 平台上交叉编译 OpenCV application,列提纲并确定瓶颈函数,最小化代码变动并将函数烧入硬件中,将生成的 SW/HW 图片复制到 SDCard 并在 Zynq 开发板上运行。五月份,我们将会发表约 50 个优化好的库,未来会结合用户的需求对库进行更全面的优化,致力于为客户提供 80% 的解决方案,而剩余的 20% 则是用户的 100%,是用户将独特创意实现的过程。」


reVISION™堆栈叫板 CPU/GPU


除了 FPGA,时下主流的人工智能算法,深度学习计算硬件平台还包括 CPU、GPU、ASIC。CPU 作为最初用作硬件平台的通用处理器,通用性好,模块功能多,逻辑处理能力强,可以完成复杂度高的计算,但是在执行深度学习算法时计算性能一般。GPU 不同于 CPU 的单线程处理,结构简单,提供了大量的计算单元,更能适应深度学习大量的矩阵、卷积运算,英伟达公司就一直在 GPU 领域占主导地位。ASIC 作为一种为专门目的而设计的集成电路,是面向特定用户的需求的,具有不产生冗余、计算性能高、功耗低的特点,比如 Google 的 TPU。


Steve Glaser 为我们展示了带有 reVISION™的典型 SoC 与传统 CPU 和 GPU 以及典型 SoC 的比较结果。从图中可以看出,reVISION™不但能支持从推断到机器学习推断和互联控制的优化,系统响应时间最快,还能为硬件优化的算法加速提供所需的可重配置性,并具备能升级更新到最新传感器和连接性的需求。


img_0719.png

从响应时间和可重配置性方面,对带有 reVISION™的典型 SoC 与传统 CPU 和 GPU 以及典型 SoC 进行性能比较


仅针对响应时间而言,CPU 和传统 GPU 针对的是机器学习的训练过程,而赛灵思则着手于从传感器到推断和控制的最低时延来实现最快响应性。嵌入式 GPU 和典型 SoC 需要从传感器到视觉、机器学习和控制处理频繁访问外部存储器。相比之下,赛灵思基于 Zynq SoC 的 reVISION™部署了使用可编程逻辑和较多的内部存储器实现的优化和流线型数据流。在与英伟达先进处理器 NVIDIA Tegra X1 进行基准对比时,基于 reVISION™的流程在机器学习方面单位功耗图像捕获速度提升 6 倍,在计算机视觉处理的帧速率提升 40 倍,时延仅为 1/5(以毫秒为单位),这些确定性的响应能力指标正是对于实时应用十分重要的。


img_0720.png

用于推断和控制的最低时延传感器


作为一切技术创新、落地的基础,半导体芯片产业持续升温,各公司对于半导体芯片领域的研发是一场没有硝烟的战场。近年来,各巨头公司为扩大、占领半导体芯片市场战略举动层出不穷,竞争也愈发激烈。赛灵思 reVISION™堆栈的发布,无疑将让机器学习开发平台市场的竞争进一步加剧,然而对于创意不断的用户市场,有一个强大新平台可以选择,无疑是一个振奋人心好消息。 

入门芯片硬件赛灵思产业FPGA产品reVISION™
暂无评论
暂无评论~