计算机技术论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

  • 欢迎访问 计算机技术论坛-电脑迷与初学者的家园!由于论坛管理严格,新注册会员可能遇到各种问题,无法解决的请发邮件 admin@jsjbbs.cn
查看: 1032|回复: 0

使神经网络在智能手机上实时运行的技术

[复制链接]
发表于 2021-4-5 12:49:39 | 显示全部楼层 |阅读模式
#111723#盘算机存在高储量的硬盘和强盛的CPU和GPU。然而智妙手机却没有,为了补充这个缺点,咱们须要技能来让智妙手机高效地运转深度进修利用顺序。
先容
深度进修是一个使人难以相信的机动且强盛的技巧,但运转的神经收集能够在盘算方面须要十分大的电力,且对磁盘空间也有请求。这平日不是云空间可能处理的成绩,个别都须要大硬盘效劳器上运转驱动器和多个GPU模块。
可怜的是,在挪动装备上运转神经收集并不轻易。现实上,即便智妙手机变得越来越强盛,它们依然存在无限的盘算才能、电池寿命和可用磁盘空间,特别是对于咱们盼望坚持尽可能轻的利用顺序。如许做能够实现更快的下载速率、更小的更新时光和更长的电池应用时光,这些都是用户所观赏的。
为了履行图象分类、人像形式拍照、文本猜测以及其余几十项义务,智妙手机须要应用技能来疾速,正确地运转神经收集,而无需应用太多的磁盘空间。
在这篇文章中,咱们将看到一些最强盛的技巧,使神经收集可能在手机上及时运转。
使神经收集变得更小更快的技巧
基础上,咱们对三个指标感兴致:模子的正确性、速率以及它在手机上占用的空间量。因为没有收费午饭如许的坏事,以是咱们必需做出让步。
对于大少数技巧,咱们会亲密存眷咱们的指标并寻觅咱们称之为饱和点的货色。这是一个指标的收益结束而其余指标丧失的时辰。通过在饱和点之前坚持优化值,咱们能够取得最好值。

在这个例子中,咱们能够在不增添毛病的情形下明显增加昂贵的操纵次数。然而,在饱和点邻近,毛病变得太高而没法接收。
1. 防止完整衔接的层
完整衔接的层是神经收集最罕见的构成部份之一,它们已经发明奇观。但是,因为每个神经元都衔接到前一层的全部神经元,因而它们须要存储和更新浩繁参数。这对速率和磁盘空间是倒霉的。
卷积层是应用输入中的部分分歧性(平日是图象)的层。每个神经元不再衔接到前一层的全部神经元。这有助于在坚持高精度的同时增加衔接/分量的数目。

完整衔接层中的衔接/权重比卷积层中多很多。
应用很少或没有完整衔接的层能够增加模子的巨细,同时坚持高精度。这能够进步速率和磁盘应用率。
在下面的设置中,存在1024个输入和512个输出的完整衔接层,这个完整衔接层大概有500k个参数。假如是存在雷同特点和32个卷积层特点映照,那末它将只存在50K参数,这是一个10倍的改良!
2. 增加通道数目和内核巨细
这一步代表了模子庞杂性和速率之间的一个十分直接的调和。卷积层中有很多通道容许收集提取相干信息,但需支付价值。删除一些如许的功效是节俭空间并使模子变得更快的简略方式。
咱们能够用卷积运算的接收域来做一样的事件。通过减小内核巨细,卷积对当地形式的懂得较少,但触及的参数较少。

较小的接收地区/内核巨细盘算起来更廉价,但转达的信息较少。
在这两种情形下,通过查找饱和点来抉择舆图/内核巨细的数目,以便精度不会下降太多。
3. 优化缩减采样(Optimizing the downsampling)
对于牢固数目的层和牢固数目的池操纵,神经收集能够表示得十分差别。这来自于一个现实,即表现该数据以及盘算量的依附于在池操纵实现:
当池化操纵提前实现时,数据的维度会下降。越小的维度象征着收集处置速率越快,但象征着信息量越少,正确性越差。
当联网操纵在收集前期实现时,大部份信息都市保存上去,从而存在很高的正确性。但是,这也象征着盘算是在存在很多维度的工具长进行的,而且在盘算上更昂贵。
在全部神经收集中平均散布下采样作为一个教训无效的架构,并在正确性和速率之间供给了一个很好的均衡。

初期的池化速率很快,晚期的池化是正确的,平均距离的池化是有点二者。
4. 修剪分量(Pruning the weights)
在练习实现的神经收集中,一些权重对神经元的激活起着激烈感化,而另一些权重几近不影响成果。虽然如斯,咱们依然对这些弱权重做一些盘算。
修剪是完整去除最小量级衔接的进程,以便咱们能够跳过盘算。这可能会下降了正确性,但使收集更轻、更快。咱们须要找到饱和点,以便尽可能多地删除衔接,而不会过量地侵害正确性。

撤除最单薄的衔接以节俭盘算时光和空间。
5. 量化权重(Quantizing the weights)
为了将收集保留在磁盘上,咱们须要记载收集中每个单一权重的值。这象征着为每个参数保留一个浮点数,这代表了磁盘上占用的大批空间。作为参考,在C中,一个浮点占用4个字节,即32个比特。一个参数在数亿的收集(比方GoogLe-Net或VGG-16)能够轻松到达数百兆,这在挪动装备上是弗成接收的。
为了坚持收集脚印尽可能小,一种方式是通适量化它们来下降权重的辨别率。在这个进程中,咱们转变了数字的表现情势,使其不再可能获得任何代价,但相称受限于一部份数值。这使咱们只能存储一次量化值,而后参考收集的权重。

量化权重存储键而不是浮动。
咱们将再次通过查找饱和点来肯定要应用几多个值。更多的值象征着更高的正确性,但也是更大的贮存空间。比方,通过应用256个量化值,每个权重能够仅应用1个字节 即 8个比特来援用。与之前(32位)比拟,咱们已将巨细除以4!
6. 编码模子的表现
咱们曾经处置了对于权重的一些事件,然而咱们能够进一步改良收集!这个技能依附于权重不平均散布的现实。一旦量化,咱们就没有雷同数目的权值来承载每个量化值。这象征着在咱们的模子表现中,一些援用会比其余援用更频仍地呈现,咱们能够应用它!
霍夫曼编码是这个成绩的完善处理计划。它通过将最小占用空间的密钥归属到最常用的值以及最小占用空间的值来实现。这有助于减小装备上模子的偏差,最好的成果是精度没有丧失。

最频仍的标记仅应用1 位的空间,而最不频仍的应用3 位。这是由后者很少呈现在表现中的现实所均衡的。
这个简略的技能使咱们可能进一步缩小神经收集占用的空间,平日约为30%。
留神:量化和编码对于收集中的每一层都是差别的,从而供给更大的机动性
7. 改正正确度丧失(Correctiong the accuracy loss)
应用咱们的技能,咱们的神经收集曾经变得十分毛糙了。咱们删除了弱衔接(修剪),乃至转变了一些权重(量化)。固然这使得收集超等轻盈,并且速率十分快,但其正确度并非如斯。
为懂得决这个成绩,咱们须要在每一步迭代地从新练习收集。这只是象征着在修剪或量化权重后,咱们须要再次练习收集,以便它可能顺应变更偏重复这个进程,直到权重结束变更太多。
论断
固然智妙手机不具有老式桌面盘算机的磁盘空间、盘算才能或电池寿命,但它们依然是深度进修利用顺序十分好的目的。借助多数技能,并以几个百分点的精度为价值,当初能够在这些多功效手持装备上运转强盛的神经收集。这为数以千计的冲动民气的利用翻开了大门。
lq6
更多内容阅读推荐:别人家做饭油烟机反味怎么办
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

无图版|手机版|计算机技术论坛 JSJBBS.CN @ 2008-2024 ( 鲁ICP备17021708号 )

技术支持 : 北京康盛新创科技有限责任公司

快速回复 返回顶部 返回列表