reVISION:将全可编程技术扩展至广泛的视觉导向机器学习应用
买芯片网专注整合全球优质赛灵思代理商现货资源,是国内领先的Altera(英特尔)、Lattice(莱迪思)、Xilinx(赛灵思 AMD)芯片采购服务平台,买芯片网轻松满足您的芯片采购需求.
机器学习的应用正迅速地扩展至越来越多的终端市场,在用户端、在云端或者在那些基于端处理与基于云的数据分析相结合的混合解决方案中。面向云应用,赛灵思最近推出了可重配置加速堆栈(2016年11月推出),目标直指包括机器学习推断在内的各种计算加速应用。面向端应用,赛灵思现在宣布凭借XilinxreVISION堆栈大幅扩展至广泛的视觉导向机器学习应用。全新的reVISION堆栈能够支持更广泛的很少或没有硬件设计专业知识的嵌入式软件和系统工程师,使其也能利用赛灵思的技术更轻松、更快速地开发视觉导向的机器学习应用。
图1赛灵思扩大机器学习应用从端到云的部署
(来源:MachineLearningLandscape-MoorInsights&StrategyResearchPaper)
广泛的赛灵思视觉和机器学习应用
,放眼全球,赛灵思已经成为众多企业构建先进嵌入式视觉系统的最佳选择。截至今天,全球已经有23家汽车制造商在85款不同车型的ADAS系统中部署了赛灵思先进的嵌入式视觉系统,另外还有数百家嵌入式视觉客户在其他数千种应用中也部署了赛灵思的先进嵌入式视觉系统。其中至少有40家已经在开发或部署机器学习技术以大幅提高系统的智能。现在,大多数的赛灵思视觉客户包括具有很强硬件专长的工程师们,都看准了ZynqAllProgrammableSoC和MPSoC的应用。
图2赛灵思嵌入式视觉行业成就
reVISION的目标应用和使命
赛灵思正在为一些热门市场的应用提供支持。在这些市场中,差异化至关重要,系统必须响应迅速,最新算法和传感器必须能够被快速部署。这些应用包括“专业消费类”应用、汽车、工业、医疗、航空航天、军用以及高端前沿消费者应用。这些应用通常不包括部署在差异化较低的“够用就好”或者发展成熟的技术之上的非常大批量的消费类应用或者主流商品化应用在。
,众多的传统嵌入式视觉应用通过采用机器视觉和传感器融合技术后都在发生巨变。
图3从嵌入式视觉到视觉导向的自主系统
下一代应用包括协作机器人、具有感应和躲避功能的无人机、增强现实、自动驾驶汽车、自动化监视和医疗诊断等。这些系统通常具有三大使命:
1.系统不仅要会思考,而且还能对情境立即做出“响应”。这就要求一个从感应到处理、分析、决策、通信和控制整个流程中更一致的视图。同时还要高效实施、部署最新机器学习技术,满足8位及更深层面的精确性要求。注意,针对机器学习训练优化的技术继续偏离对机器学习推断优化的技术。赛灵思已经专门为推断技术优化了其全可编程器件系列。
2.图4下一代视觉导向系统的应用使命
鉴于神经网络和相关算法的快速变化以及传感器的快速发展,必须实现灵活性,能通过软硬件的可重配置性升级系统。
3.由于许多新系统都连接到了一起(物联网),因此需要既能与传统的已有设备通信,也能与未来推出的新设备通信,同时还要能够进行云端通信。赛灵思将此定义为任意互联。
赛灵思器件可以独特地支持以上所有三大使命,且比其它替代方案拥有显著的和可测量的优势。通过高效的推断和控制,赛灵思实现了传感器的最快响应时间,支持最新的神经网络,算法和传感器的可重构性,并支持与传统或新机器、网络和云的任意连接。
图5赛灵思独特的应用优势
图6广泛应用的障碍
然而,赛灵思器件的这些优势原来只有那些拥有硬件或者RTL设计专长的专业用户才能受益,对于更广泛的应用和支持使用行业标准库和框架进行软件定义编程,还存在巨大的障碍。reVISION堆栈的诞生,解决了这个通往广泛应用的障碍。
reVISIONSTACK
图7赛灵思reVISION堆栈
赛灵思reVISION堆栈包括用于平台、算法和应用开发的丰富的开发资源,支持最流行的神经网络(诸如AlexNet、GoogLeNet、SqueezeNet、SSD和FCN)以及库元素(如CNN网络层的预定义优化型实现方案,这也是构建定制神经网络DNN/CNN所需的)。配合丰富的满足加速要求的OpenCV功能,支持机器视觉处理。对应用层面的开发来说,赛灵思支持流行的框架,包括用于机器学习的Caffe和用于计算机视觉的OpenVX(将于2017年下半年推出)。reVISION堆栈还包括赛灵思和第三方提供的基于ZynqSoC和MPSoC的开发平台。
移除了通往广泛应用的障碍
reVISION堆栈支持一大批广泛的设计团队无需深层的硬件专业技术,使用软件定义开发流程就能将机器学习和计算机算法的高效实现方案整合到响应迅速的系统中。
,reVISION开发流程从熟悉的C、C++和/或OpenCL语言及相关编译器技术的基于eclipse的开发环境(即SDSoC开发环境)启动。在SDSoC环境中,软件工程师和系统工程师能以reVISION硬件平台为目标,并采用大量的加速就绪型计算机视觉库,很快还能采用OpenVX框架,从而快速构建应用。
图8reVISION的软件定义设计流程
对于机器学习,我们可用Caffe等流行的框架来培训神经网络,用Caffe生成的.prototxt文件对基于ARM的软件调度器进行配置,从而驱动专门为可编程逻辑预先优化的CNN推断加速器。
对计算机视觉和其他专有算法来说,用户可对软件代码进行特征分析,发现瓶颈,并在代码中标出希望加速并进行“硬件优化”的特定功能。“系统优化编译器”则用来创建加速的实现方案,包括处理器/加速器接口(数据移动器)和软件驱动器。结合计算机视觉和机器学习功能,该编译器能创建优化的融合实现方案。
,专家级赛灵思用户采用传统RTL设计流程,与ARM软件开发人员合作,要花大量设计时间才能开发出高度差异化的机器学习和计算机视觉应用。
图9reVISION堆栈——移除通往广泛应用的障碍
为进一步加快设计进程,减少对硬件专家的依赖,赛灵思大约在两年前推出了基于C、C++和OpenCL语言的SDSoC开发环境。虽然这帮助其它上千名能够开发自己的基础平台、库和应用的用户大幅缩短了开发周期,但仍无法满足广泛机器学习应用推广与部署的要求,而且机器学习也带来了复杂问题。
Xilinx中国海量优质的信息资源、行业资讯、最新开发方案等资讯信息平台。