0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

CNN高效升级,有一定的可编程性

高工智能汽车 来源:未知 作者:胡薇 2018-10-20 09:13 次阅读

2018年7月18日,自适应和智能计算公司赛灵思(Xilinx, Inc.)宣布完成对专注于神经网络剪枝、深度压缩技术及系统级优化的中国AI芯片公司深鉴科技的收购。

这是迄今为止第一家中国AI芯片初创公司与全球芯片领军厂商的深度绑定。

深鉴科技CTO单羿在近日举办的赛灵思全球开发者大会上表示,公司此前本身在深度学习方面有一定的技术积累,用户不需要写底层的RTL,就可以通过提供的API接口,进行应用的开发,可以进一步降低开发者的难度,这是最适合客户的开发模式。

赛灵思在客户积累以及服务方面,有着丰富的经验和能力,对于创业公司而言,一般是缺乏客户的开发能力,以及后续的技术支持方面的能力。

因此对于深鉴而言,同赛灵思合作,可以弥补这一方面的劣势,更快的将产品推广给更广范围的用户,省去教育用户的开销。

另外,赛灵思和深鉴科技双方对于客户的看法是一样的,今天的AI的算法是一直在变化的,ASIC的做法并不适用,加之流片的成本也越来越高,周期较长,传统的做法并不是适应这个变化极快的时代。

FPGA在灵活性方面有着不可比拟的优势,目前的频率是在数百兆HZ,未来也会根据需求以及技术的成熟,达到过GHZ的频率;FPGA上也有着丰富的DSP资源,充分的互联,接口众多。这些特性都对应了这个AI算法快速迭代发展的时代。

因此,双方的优势和互补性使得彼此走到了一起。

深鉴提供全栈的解决方案,包括基本的检测、追踪、分割等算法,比如汽车检测、行人检测、交通标志牌识别的参考算法,免费给用户。既有标准化的优化算法技巧,也给用户定制化的可能。

这些方案是基于FPGA的部署,深鉴科技实际上做的就是DPU的设计,处理器的架构中,有自己的存储访问的Hardware、调度器、微体系结构等。有了这些之后,用户使用CNN就会变得高效,有一定的可编程性。

一.

DNNDK降低AI startup门槛

为了方便用户使用,深鉴科技开发了一套软件的工具DNNDK(Deep Neural Network Development Kit,深度学习开发与部署全栈式解决方案)。

最新的版本可支持两种赛灵思的方案,ZCU102和ZCU104。这个工具每月会定期的更新,方便用户下载使用。

对于AI创业公司而言,能够使其具备竞争力的,就是产品的差异化,而差异化是需要在软件上不断的训练不同的模型。

训练模型是需要依赖算法团队的实力,很少有创业公司能够兼顾模型精准和短小精悍。为了让用户无差异的使用相同的处理器平台,提供了模型压缩技术。

通过自动化工具,可以训练模型,经过不长的时间,就可以得到一个精简、轻量化的模型。深鉴科技的自动化模型压缩工具,是基于硬件进行的,因此更适合硬件加速。

压缩工具工作主要有两个步骤,量化和剪枝,量化就是改变参数,从浮点表达变成定点表达,剪枝就是去掉无用的部分,比如一些连接和神经元。

分类网络的压缩结果,保证压缩的精度变化不大。比如SSD+VGG压缩能够在保证网络成倍数减小的同时,精度不发生太大变化,同时运行速度还会有提升。

这些技术不仅可以用于安防,同样也可以用在自动驾驶中。

模型压缩的下一步,可通过增强学习或者机器学习的方式,提升工具的自我进化,去掉人类因素的干扰;另外一方面,做更低bit的量化,这个量化技术是下一步模型压缩中关键的技术。

二.

突破1Tops/天花板

对于AI处理器而言,算力大小是一个重要的指标,但如果应用到终端上的时候,单位功耗下的算力才是硬实力,尤其是汽车行业。

目前CNN卷积网络处理器的天花板是1Tops/w,而无论FPGA、ASIC还是GPU,都徘徊在这个指标附近,如果要完成更复杂的工作,更精细化的处理,就必须要提升这个关键性指标。

单羿表示,因为这个天花板是在宽bit的量化性能下得到的,所以要改变这个值必然要换一种方式。

目前的解决方式有两种,Sparsity和Low Precision,前者实际上是模型压缩,将网络的模型变小,后者是将参数的位宽变小,使得硬件在同样的DSP下,能够支持更多的乘法和加法的运算。

在Sparsity方面,深鉴团队从算法、软件、硬件方面分别进行了探索。这方面有不少的挑战,比如随机MEM的访问和固定格式的计算,带来计算的低效,非常挑战体系结构的设计;

另外一方面就是在压缩模型的同时进行稀疏,以及为了稀疏,需要做的一些索引。随着稀疏的增加,花费的资源越多,最终会使得压缩工作没办法进行。

Low Precision方面,2018年的时候,ISSCC已经开始尝试一些更低bit,从原来的8bit已经延生到了1bit。

学术界之所以这样做,是因为同样功耗下,更低bit比更高bit的算力能提升一个数量级,模型大小的存储量也会大大的降低。存储量的降低意味着可以把更多的参数放到片上来进行,片上带宽极高,latency也会短。而用FPGA做Low Precision的方式是比较恰当的。

深鉴科技此前的做法是,将FPGA中敏感的层,保留8bit,不敏感的层,用其它较低bit代替。当然这样的处理方式也给处理器的设计带来问题,因为dsp原来是支持8bit,现在却要支持更多bit。

深鉴使用了2bit和6bit,3bit和5bit的搭配方式,适合与赛灵思FPGA的架构,使得量化过程中不同层可以使用不同的位宽,从而达到提升效率的目的。

通过以上两种方式,处理器单位瓦数下的算力,就有可能提升。

三.

FPGA的减法

自动驾驶是当下一个火热的应用,其需要进行目标检测、分割、可行驶区域、以及行人车道线的识别等等,这些工作都是需要不同层网络进行计算处理。但这些工作同时用FPGA来做,系统负担会非常大。

为此,深鉴科技提出了一个通过多任务模型的训练,得到单一网络的方案,复用特征提取层的运算,把运算量最大的部分放到FPGA中的一个网络中进行。

而不同任务中,不同层的计算才可能会进行多次,从而达到缓解FPGA处理器运算压力的目的。

在系统级的优化方面,可以简化摄像头的图像处理,传统的摄像头内部有ISP、编解码等等,分属不同芯片处理,而通过使用赛灵思的FPGA,则只需要一块芯片既可以完成,内部不仅有DSP资源,同时还集成了第三方的ISP的库,可搭载一个完整的系统。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1629

    文章

    21753

    浏览量

    604167
  • cnn
    cnn
    +关注

    关注

    3

    文章

    352

    浏览量

    22243

原文标题:Sparsity+Low Precision突破CNN天花板 | GGAI技术

文章出处:【微信号:ilove-ev,微信公众号:高工智能汽车】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    什么是可编程逻辑

    。事实上,由于可编程逻辑器件,些设备制造商现在正在尝试为已经安装在现场的产品增加新功能或者进行升级。要实现这点,只需要通过因特网将新
    发表于 05-29 11:36

    求问有没有可编程的电源识别芯片

    有没有可编程的芯片,可以输入不同的电压,输出为一定的值,做到能识别电源,我想用两个电源
    发表于 11-08 13:59

    如何输入自己的可编程模拟电路

    如何输入自己的可编程模拟电路摘要:只有为数不多的公司在模拟IC 中提供拓扑可编程,其中最著名的公司Zetex 公司、Lattice半导体公司和Anadigm 公司。这些IC 提供
    发表于 03-30 16:58 34次下载

    可编程SoC(SoPC),什么是可编程SoC(SoPC)

    可编程SoC(SoPC),什么是可编程SoC(SoPC) SOPC ( System on a Programmable Chip,片上可编程系统)是以PLD(可编程逻辑器件)取代A
    发表于 03-26 17:01 2450次阅读

    SLPC可编程调节器PID控制参数整

    SLPC可编程调节器PID控制参数整
    发表于 12-11 23:15 0次下载

    可编程六路电源序器和监控器

    可编程六路电源序器和监控器
    发表于 05-18 12:38 7次下载
    <b class='flag-5'>可编程</b>六路电源<b class='flag-5'>定</b>序器和监控器

    片上可编程系统原理及应用

    片上可编程系统SOPC是种灵活、高效的SoC解决方案,而FPGA 是可编程再设计的“万能”芯片,FPGA是作为专用集成电路(ASIC)领域中的
    发表于 10-01 09:07 1916次阅读

    可编程电源的原理 可编程电源的优缺点

      可编程电源是种可以通过计算机编程来控制电源输出的电源。它可以根据用户的需求,自动调节电源的输出电压和电流,从而满足用户的需求。可编程电源具有节能、稳定性好、可靠
    发表于 02-21 15:16 2421次阅读

    可编程逻辑器件测试

    可编程逻辑器件 (Programmable Loeie Device,PLD)是种用户编程实现某种逻辑功能的逻辑器件,主要由可编程的与阵列、或阵列、门阵列等组成,可通过
    发表于 06-06 15:37 694次阅读
    <b class='flag-5'>可编程</b>逻辑器件测试

    可编程交流电源的特点及应用

    。传统的固定输出交流电源通常只能提供固定的电压值,而可编程交流电源可以根据需要在一定范围内调节输出电压。这种可调节使得可编程交流电源能够满足各种应用中的不同电压需求。 其次,
    的头像 发表于 11-09 16:58 879次阅读

    数字可编程变频电源使用哪些注意事项?

    数字可编程变频电源使用哪些注意事项? 数字可编程变频电源是种能够根据用户需求调整输出电压和频率的电源设备。它在工业生产和实验室研究等领域中被广泛使用。然而,使用数字
    的头像 发表于 11-13 16:09 762次阅读

    PLC(可编程逻辑控制器)的升级方式哪些呢?

    PLC(可编程逻辑控制器)的升级通常包括硬件升级和软件升级两个方面。
    的头像 发表于 05-27 11:26 826次阅读

    可编程电源如何编程

    可编程电源如何编程  可编程电源是种可以调节输出电压和电流的电源设备,广泛应用于电子设备测试、研发和生产等领域。通过编程,用户可以根据需要
    的头像 发表于 06-10 15:24 1396次阅读

    用TMAG5328电阻器和电压可编程霍尔效应开关实现可编程和诊断

    电子发烧友网站提供《用TMAG5328电阻器和电压可编程霍尔效应开关实现可编程和诊断.pdf》资料免费下载
    发表于 09-11 10:01 0次下载
    用TMAG5328电阻器和电压<b class='flag-5'>可编程</b>霍尔效应开关实现<b class='flag-5'>可编程</b><b class='flag-5'>性</b>和诊断

    可编程晶振的优点和缺点

    可编程晶振,近年来渐入人们眼中。什么是可编程晶振,与普通晶振什么区别?可编程晶振的优点和缺点哪些?1,什么是
    的头像 发表于 09-30 10:44 423次阅读
    <b class='flag-5'>可编程</b>晶振的优点和缺点