中科创达副总裁兼智能视觉事业全执行总裁孙力:解析深度学习的前沿研究以及应用出口


    由中国高科技行业门户OFweek维科网和高科会主办、OFweek人工智能网承办“OFweek(第二届)国际人工智能产业大会”于8月30日盛大召开。此次大会,随着上千名AI学术领袖、政府领导、领军企业与业界精英的到来,会场气氛持续高涨。
    大会持续两天,其中中科创达副总裁兼智能视觉事业全执行总裁孙力作为演讲嘉宾之一出席了第一天的主论坛,给大家带来了《解析深度学习的前沿研究以及应用出口》的主题演讲,介绍了嵌入式人工智能人工智能的挑战与实践。
    
    孙力先生
    中科创达副总裁兼智能视觉事业全执行总裁孙力首先分享了建筑设计的三个主题, 分别是嵌入式AI方面的发展趋势、嵌入式人工智能的挑战与落地、中科创达做的一些实践。
    其次分享了嵌入式人工智能的一些应用、落地挑战、压缩网络和常见技术。最终再介绍了中科创达在人工智能视觉方面的工作。
    以下是中科创达副总裁兼智能视觉事业全执行总裁孙力的现场演讲内容,OFweek小编作了不改变原意的整理和编辑:
    各位业界的朋友,大家好,我今天分享的主题是嵌入式人工智能的挑战和实践。 因为大家都说到,人工智能最后免不了要落地,不管你跑到云上还是跑到设备上,或者是跑在边缘侧。
    今天我要聚焦的是一个建筑设计方面的一个分享,大约有三个主题,第一个是嵌入式AI方面的发展,因为你不管叫它什么,总而言之人工智能要落地,你得跑在这些设备上。第二个是嵌入式人工智能的一些挑战,还有应用的落地上遇到的一些经验分享。第三个是中科创达做的一些实践。
    在嵌入式AI发展这块,大约有三个话题,首先我们看看嵌入式和云端的区别,它们二者是共存的,并不矛盾,根据需要以及所处场景,有一些需要跑在端侧,有的可以纯粹跑在云端。
    嵌入式能带来一些好处,比如说更快的响应或者更低的功耗,还有更好的数据隐私,因为有些数据并不希望被传到云端。
    另外大家都知道,目前的物联网虽然非常碎片化,但是从整体来讲的话,其数量还是相当庞大。而对于AI来说,未来这些物联网的硬件设备,再加上AI的算法,还有云端的结合,便可以使人工智能渗透到越来越多的场景里。
    对于整个视觉市场和嵌入式这一块,首先中科创达做了很多关于视觉这块的业务,目前视觉方面都是指视觉的终端,比如带摄像头的设备,并且数量呈现快速增长的趋势,语音方面更不用说了,已经取得了非常大的成就。
    那么接下来,不管是在安防、汽车、小机器人等很多的设备上面,摄像头都会快速地增加。而且大家看到,不管是给开发者还是企业用的,边缘侧的智能视觉设备也越来越多,有的为了投放教育市场,有的是可以用来做开发的一些设备,当然很多设备的工业设计或者结构等会不一样,可能针对不同的场景需要定制化。
    为此,中科创达推出了我们自己的TurboX AI Kit,来做这些人工智能的开发,设计基于高通骁龙845平台来安置,我们提供丰富的嵌入式 AI 开发、分析、优化和调试工具,加速端侧 AI 的实现与普及,助力生态系统构建。
    我再说一些嵌入式人工智能的应用和落地挑战。实际上人工智能最后要落地到嵌入式这一块,市场上有那么多的芯片,密度不同,操作系统不同,但运算力却那么有限,甚至有的人在挑战一些操作系统来部署人工智能生态系统,这样做对于一些比较小的封闭的生态系统来说的话,对于算法的开发者就会比较困难。
    对于嵌入式AI算法的部署本身,比较简单,你要做训练,训练完要转换模型,要把它放入嵌入式,然后让它跑起来。最麻烦的就在于当你放到不同的芯片上,你到底是放在CPU,还是DSP上,或者GPU上?所以这些都带来非常大的一些挑战。
    对于嵌入式算法的优化策略,无非就是说要针对你所使用的tag的芯片硬件,来做深度的硬件和软件的优化。那么对于硬件的话,你先要考虑的就是它的功耗和成本。你不能把芯片给吹爆了,因为它的算力是有限的。但是如果你把这些网络裁剪太厉害,它的精度又不够了,实际上这就是一个迭代的流程,要不停的去迭代,而且一定要压榨干所有芯片上的DSP、GPU。首先就要跟芯片平台有非常深度的合作,另外在软件方面一定要降低算法模型的运算量。
    实际上不管什么样的嵌入式终端,首先你都要根据你要落地的芯片,先看这个算力有多少,而后才能知道你的神经网络的层数、神经网络的大小。然后你再看它的KPI是多少,根据这些给你的目标平台和芯片做一个性能的评估。最终你要看到你的算法复杂度的上限,并且你一定要摸到底,但是基于限制的神经,网络神经模型可能会很大,这样在嵌入式里面会跑不动,接着你要把它进行裁剪。
    你要给网络做很多的裁剪和压缩。之后利用一些工具来测量它的真实性能,也即检测你裁剪完之后跑的效果。如果不能满足性能,裁剪就没有用。如果在满足这些性能之后,然后再进行迭代,不停的迭代,一定不要浪费掉你的DSP和GPU。
    另外在嵌入式这一块的算法进行优化,一定要对网络的模型进行 paper上的重训练,然后使用不同参数进行反复的调,再测量它的性能。另外还要修改神经网络的一些通道,找到准确率和速度的最佳平衡点。
    再跟大家分享一些关于嵌入式上的压缩网络和常见技术,网络上大家都能看得到一些工友的paper,大家可以针对这些模型进行一些深度优化,在类似的精度上面,大家可以去做裁剪尝试。另外就是所谓的裁剪,不管你剪的什么也好,网络太复杂,就意味着大脑太大。那么你在嵌入式的设备上就跑不动,那就还需要进行减值。
    最后,我再分享一下中科创达在视觉方面的一些工作,因为我们有非常庞大的视觉团队,包括图像整理团队,我们整体加起来有四五百人,我们跟高通是战略合作关系,还有跟ARM等公司都有在平台层面的深度合作。中科创达有AI平台架构,我们有自己的算法。
    但是各种操作系统太碎片化了,有的客户说我一定要跑在DSP上,因为功耗比GPU要好。有的客户说我就跑到GPU上。面对各种不同的操作系统,故视觉工作面临非常大的挑战。在这种情况下,实际我们公司拥有有非常多的经验,我们在很多的芯片,很多的操作系统的碎片化上进行服务。加上中科创达是服务型公司,所以我们接触的这些案例相当多。
    我分享几个比较有趣的案例给大家,我们在今年刚交付给我们一个欧洲的客户,其公司是做微波炉的, 产品是用高通的芯片,但是芯片算力太差。比如微波炉想要要识别里边的食物,从而自动选择加热的方法,其实这种情况下对算法的精度要求不是很高的。比如你到底是三皇鸡还是土鸡不重要,是个鸡就可以了,你是黄牛肉还是澳洲产的牛肉也不重要,能识别出牛肉就可以,所以在那种情况下,你要先知道客户的需求,你就可以将很差的芯片进行裁剪,从而满足客户的要求。
    但是其实解决这些面临挺大挑战的,假如你真的要做食物方面的识别。其实有很多东西很难,因为有时候人都看不太出来,你到底是一个小狗还是个饼干,所以实际上,真正的一个算法,从一个demo给大家秀一下到商用化,其中“最后一公里”是特别困难的,测试过程总是能够找到bug,所以必须来反复的调整。
    如果再将这些产品放到市场,那挑战更大。我们曾做了这些产品给食堂,包括关于面包店的一些解决方案,虽然这个面包,看起来很容易,但是有各种不同的面包,你不能说光把面包识别出来就完了,如果说今天新推出一个面包,你怎么办?
    另外其实我们还接到大量的工业上的一些需求,比如说瑕疵的检测,现在有很多的工厂,比如说液晶面板,有的工厂里还有大量工人在做质检。虽然实际上现在的人工智能不是万能的,他必须得结合传统的图像处理的方法,不能纯粹用人工智能,但这样就可以把部分人类解放出来。虽然说有些人要失业,但是他可以做更有趣的一些工作,因为质检要轮班,并且对视力、对精神实际上都有很大的压力。
    好,这就是我今天的分享,谢谢。