人工智能在边缘侧的不断扩展,是驾驭数据洪流的关键环节之一,也是物联网未来发展的重要趋势。随着人工智能如火如荼的发展,海量数据需要快速有效地分析和提取洞察,这也大大加强了对于边缘计算的需求。
人工智能的发展离不开数据,因为它需要大量的数据进行训练。在当前这样一个万物智能互联的时代,数据量的产生速度超出了一般人的想象。以智能摄像头为例,随着摄像头的分辨率从1080P转向4K,其一天所采集到的数据量将达到200GB。面临同样问题的还包括智能医院、自动驾驶和智能工厂,它们一天所产生的数据将分别超过3TB、4TB和1PB。有人做过这样的预测,到2020年,一个互联网用户平均每天将产生的数据量大概是1.5GB。
英特尔中国区物联网事业部首席技术官张宇博士
英特尔中国区物联网事业部首席技术官张宇博士日前在边缘计算产业联盟峰会主题演讲中,分享了如何在网络边缘实现智能化的观点。他认为,人工智能在边缘侧的不断扩展,是驾驭数据洪流的关键环节之一,也是物联网未来发展的重要趋势。随着人工智能如火如荼的发展,海量数据需要快速有效地分析和提取洞察,这也大大加强了对于边缘计算的需求。
边缘侧趋向负载整合
“以前的数据很多都是结构化数据,可以通过Excel表格或者简单的关系型数据库对其进行维护和管理。但今后会有越来越多的非结构化数据需要进行处理并借此发现内在关联,这时就需要边缘计算和人工智能技术。”但张宇并不认为对边缘计算的强调,就意味着边缘计算将代替云计算,“在物联网从互联走向智能,再走向自治的过程中,两者是协同互补的关系,并非彼此取代。”
在他看来,边缘计算所处理的数据属于局部数据,并不能形成对于全局的认知,只有云计算平台才能在后端对从各种不同边缘采集到的数据进行融会贯通。例如在智能交通领域,尽管智能摄像头能够通过各种方法能够识别出行人、车型、颜色和车牌,但却不了解车的轨迹;在今年的双11活动中,天猫商城的销售峰值超过25亿/秒,如果没有云计算平台的支持,这是很难想象的。
不过在2012年以前,人工智能在做图像识别时的准确度是低于人类的。下图中,虚线代表人类识别水平,实线代表机器识别错误率。可以看到,2012年以前机器识别的错误率还是高于人类的,但呈逐渐下降趋势,2012年之后,随着AlexNet等神经网络的出现,人工智能水平出现了质的飞跃。
机器识别错误率正在逐年下降
但人工智能同样面临很多挑战,对计算和存储资源的巨大消耗就是其中之一。以百度搜索为例,它每完成一次搜索,就需要完成千亿亿次的计算;如果再进行推理,即使去处理一张224 X 224分辨率的图片,像AlexNet、GoogleNet这样的人工智能网络,计算量也要超过10亿次。
因此,张宇强调了在边缘侧趋向负载整合是物联网演进的一个必然趋势。原来在不同设备上分立的负载会越来越多地通过虚拟化等技术,整合到一个单一的高性能的计算平台上,来实现一个综合的复杂的功能,各个功能子系统既能分享设备提供的计算,存储,网络等资源,同时还能具有一定的独立性,避免彼此的相互影响,从而可以简化系统架构,降低系统总体。同时,负载整合实际上也为边缘计算的实现以及为实施人工智能的应用提供了条件。整合后的设备既是边缘数据的汇聚节点,同时也是边缘控制的中心,这为边缘智能提供了处理所需的数据,同时也提供了控制的入口。因此英特尔认为人工智能和负载整合的结合,会在今后的边缘计算的系统里发生。
在边缘侧趋向负载整合是物联网演进的必然趋势
构建边缘协同的端到端系统
在一个边缘协同的端到端系统中,由于不同网源的功耗、计算性能和所能承担的成本各不相同,因此在选取硬件架构时往往会有特定要求。英特尔的做法是根据用户需求提供不同架构的解决方案,涵盖至强处理器、至强融核处理器、Movidius/Nervana神经网络处理器和FPGA、网络以及存储技术等硬件平台,以及多种软件工具及函数库,优化开源框架,来让他们进行自主选择。
张宇认为,如果想将人工智能用到边缘侧,网络优化将是一个关键的技术。因为目前人工智能的理论基础并不完备,导致很多人工智能的方法是冗余的,急需优化。
低比特、剪枝和参数量化是英特尔做网络优化的三大思路。所谓低比特,是指在传统的深度学习领域,往往采用32比特单精度浮点来进行参数表述,但在安防、机器学习和机器视觉实际应用中却并不需要如此高的精度,在不影响最终识别率的情况下,英特尔倾向将32比特的单精度浮点转变成16比特的半精度,甚至是8比特、2比特的整数精度,从而降低存储与计算负荷。
剪枝也是类似。如果把人工智能网络比喻成一个树枝,这棵树的每个不同分杈实际上对应的是不同的检测特征。对于没有效果的分支,用户完全可以在优化过程中把它剪掉,降低计算复杂度。而参数的量化是指可以根据参数的特征做聚类,用相对比较简单的符号或数字来表述,从而降低人工智能对于存储的要求。
如何界定行业的边缘?
计算任务应该放在边缘还是放在云端去做?如何界定行业的边缘?英特尔方面认为边缘计算的核心问题是如何根据不同行业的不同应用需求,选择不同的工作负载、成本和功耗方案去实施,并没有一致性的答案。
以安防监控为例,如果不考虑边缘计算,最简单的方式是前端摄像机捕捉到视频信息,传到作为中间节点的NVR做存储、解码和播放,然后把数据以流媒体方式压缩后传输到后端。但这种海量信息的传输对网络带宽和后端存储形成了压力,势必导致一部分业务的运行和计算前移。在这个需求下,用户具体是做车辆、行人或路标的检测、跟踪、分类、识别,这对于前端摄像机里部署的智能分析算法是有不同要求的。
但有一个共性的技术是需要理解和掌握的:即怎样使计算架构变得更容易被软件定义?也就是说,不管何种业务类型都可以更灵活的在云端,在边缘侧,甚至在终端节点上运行。如果没有软件定义的灵活性,要把工作负载从云端迁移到前端是非常困难的事情,芯片厂商必须要做这样的考量。
“边缘计算联盟(ECC)并不是要实现完全统一的架构,更多的是提供参考架构。”张宇解释说,参考架构旨在定义一个逻辑框架,尽管不会细分到每种硬件需要怎样的配置、执行何种协议、实现何种功能等,但里面也有能够适应不同复杂度的系统。比如边缘计算节点(ECN)概念就可能是一个单一设备、一个边缘集群或者是一个边缘云,可以根据不同用户的使用场景实现不同的适配。但他同时也承认,不同垂直行业的要求是不一样的,如何把边缘计算的理念和框架映射到垂直行业里,产生真正可落地的具体方案,这是挑战,也是联盟正在努力推进的方向。此外,今后如何在架构的升级中体现不同行业的特点与个性,也是今后工作的重心。
而作为联盟驱动创新的重要成果,《边缘计算参考架构2.0》在本届峰会上正式发布,重点阐释了边缘计算的概念、特点、价值,分别从概念视图、功能视图、部署视图三个维度全方位展现ECC边缘计算参考架构2.0,提出构建模型驱动的智能分布式开放架构,实现架构极简,OICT设施自动化和可视化,以及资源服务与行业业务需求的智能协同,通过全层次开放架构推动跨产业的生态协作,产品的快速孵化,为边缘计算技术研发、应用创新和产业发展提供方向指引。
把自己人搞得多多的,把敌人搞得少少的
边缘计算同样是一个巨大的生态系统,不可能有任何一家公司能够完全覆盖产业链里所有的上下游环节。本届峰会上,ECC与工业互联网产业联盟(AII)正式签署战略合作协议,宣布双方未来将在研究报告/白皮书、试验平台/测试床、技术标准、市场推广等方面开展合作;与国际半导体照明联盟(ISA)、车载信息服务产业应用联盟(TIAA)签订战略合作协议,共同致力于推动边缘计算在智慧照明、智能车载领域的应用创新、标准制定和商业落地。同时还宣布将与西安电子科技大学、中国自动化学会边缘计算专业委员会联合举办“2018年边缘计算技术研讨会(SEC-China 2018)”,为相关领域学术界、产业界提供交流合作,成为发布领域相关前沿科研成果的平台,大力推动中国边缘计算技术与产业的发展。
作为联盟的重要一员,英特尔物联网事业部首席战略技术官兼首席高级工程师Brain McCarson对公司的定位是提供计算、通信、存储所需要的芯片解决方案,以及围绕芯片相关的底层软件和中间件元素。
他特别提到了两家合作伙伴:华为和沈阳自动化研究所。其中,华为发布了基于英特尔处理器的边缘网关产品AR550i,利用这个产品,华为在整个产业链就起到了ODM/OEM的角色,并将其带给相应的系统集成商和终端用户;英特尔联合沈阳自动化研究所展示的边缘计算测试床则是智能机器人,目的是验证基于深度学习的机器视觉方案在实际系统中的工作效果。该系统由英特尔实感技术实现3D视频采集,基于英特尔边缘计算参考平台完成物体的检测与识别,结果将控制机器人的手臂完成物体抓取的操作。
张宇认为,无论是云计算还是边缘计算都无法独立存在,两者之间是相辅相成的。英特尔的优势在于能够完全覆盖从云端计算到网络通信基础设施,再到终端的端到端系统。而从软件生态上来说,目前而言,X86架构处理器芯片的软件兼容性优势依然非常明显,绝大部分企业级应用仍然运行在X86架构上。未来,随着计算能力的进一步释放,英特尔将会在数据链路中扮演更重要的角色。