让深度学习告别密集计算,新技术可减少95%计算量
创始人
2025-02-13 11:41:40
0次

莱斯大学的计算机科学家已经改编了一种普遍使用的技术来快速检查数据从而削减计算量,因此深度学习所需的能耗和时间也有所削减。

[[193636]]

莱斯大学的助理教授 Anshumali Shrivastava 说,「它应用于任何深度学习架构,该技术都能亚线性地扩展,也就是应用到的深度神经网络越大节省的计算越多。」

该研究将会发布在今年的 KDD 会议上被介绍,它解决了谷歌、Facebook、微软等大公司面临的***难题之一。这些大公司都在争相建立、训练、部署大量的深度学习网络来发展不同的产品,例如自动驾驶汽车、翻译、邮件智能回复。

Shrivastave 和莱斯大学的研究生 Ryan Spring 表示该技术来自于哈希法(hashing),一种行之有效的数据检索方法,经过改编可极大地减少深度学习的计算成本。哈希法使用哈希函数将数据转换为易管理的小数值哈希(被称作 hash)。哈希被存储在表格中,类似于印刷书中的索引。

Spring 说:「我们的方法融合了两项技术——巧妙的本地敏感性哈希法变体(variant of locality-sensitive hashing)和稀疏反向传播变体——以减少计算需求,且不附带大量的精确度损失。例如,在小规模的测试中发现我们可以降低 95% 的计算,但是和通过标准方法获取的精确度依然差 1% 以内。」

深度学习网络的基本构建块是人工神经元。尽管在 1950 年代就被作为生物大脑神经元的模型,人工神经元还仅仅是把输入数据转化为输出结果的数学函数和方程式。

在机器学习中,所有神经元都有相同的初始状态,就像白纸一样,它们会随着训练拥有各自的特定功能。在训练中,神经网络「看到」了大量数据,每个神经元都会成为识别数据中特定模式的专用结构。在***层,神经元执行简单的任务。例如在图像识别应用中,底层神经元或许用于识别亮/暗,或是物体的边缘。来自这些神经元的输出会被传递到网络中下一层的神经元那里,经受其他模式的识别和处理。仅有几层的神经网络即可识别面部、猫狗、交通指示牌和校车等概念。

Shrivastava 说:「向神经网络层级添加更多的神经元能扩展其表现性能,而我们希望神经网络没有大小上限,据报道谷歌正在尝试训练一个包含 1370 亿神经元的模型。」相比之下,对于训练和部署这样的神经网络可能会有计算力的限制。

他说:「如今使用的大部分机器学习算法都开发于 30 至 50 年前,设计时并未考虑计算复杂性。但有了大数据之后,在资源上有了基本的限制,比如计算周期、能耗和存储。我们实验室旨在解决这些限制。」

Spring 表示,大规模的深度网络中,哈希法将会极大地节省计算量和能耗。

他说:「节能随着规模而增加是由于我们利用了大数据之中的稀疏性。例如,我们知道一个深度网络有 10 亿个神经元。对于任何给定的输入,比如一只狗的图片,只有其中的几个会变兴奋。按照数据用语,我们将其称为稀疏性,而正是由于稀疏性,我们的方法将在网络变大之时节能更多。因此,当我们展示了 1000 个神经元的 95% 的节能时,数学表明我们可以为 10 亿个神经元实现超过 99% 的节能。」

论文:通过随机化哈希的可扩展和可持续的深度学习(Scalable and Sustainable Deep Learning via Randomized Hashing)

通过随机化哈希的可扩展和可持续的深度学习

链接地址:https://arxiv.org/abs/1602.08194

摘要:为了能在复杂的数据集上进行学习,当前深度学习架构正变得越来越大。这些架构需要极大量的矩阵乘法运算以训练数以百万计的参数。相对地,还有另一个正在发展的趋势想要将深度学习引入低功耗的、嵌入式的设备中。这些矩阵运算(深度网络的训练和测试都需要)在计算和功耗上都有很高的成本。我们提出了一种全新的基于哈希法(hashing)的技术,可以极大地减少深度网络的训练和测试所需的计算量。我们的方法结合了自适应 dropout(adaptive dropout)和用于***内积搜索(maximum inner product search)的随机化哈希(randomized hashing),从而可以有效地选择有***激活(activation)的节点。我们用于深度学习的新算法可以运行在显著更少(稀疏)的节点上,从而可以极大减少前向和反向传播的总计算成本。因此,我们的算法可以仅使用 5% 的总乘法量就平均保持在原模型准确度的 1% 的范围内。这里提出的基于哈希法的反向传播有一个独特的性质:其更新总是稀疏的。因为这种稀疏的梯度更新,我们的算法可以***地用于异步和并行的训练,可以通过增加内核的数量来实现近乎线性的加速。我们通过在几个真实数据集上的严格评估证明了我们提出的算法的可扩展性和可持续性(能效)。

使用随机化哈希的深度学习

算法 1:使用随机化哈希的深度学习

一个使用随机化哈希的神经网络的可视化表示

图 2:一个使用随机化哈希的神经网络的可视化表示

图 2中(1) 通过对每一隐藏层的权重进行哈希操作来构建哈希表;(2) 使用该层的随机化哈希函数来对该层的输入进行哈希操作;(3) 查询该层用于活动集 AS 的哈希表;(4) 仅在该活动集中的神经元上执行前向和反向传播。隐藏层中实心涂色的神经元是活动神经元。(5) 对更新后的权重重新执行哈希至新的哈希位置,从而更新 AS 权重和哈希表。

原文:https://phys.org/news/2017-06-scientists-slash-deep.html

【本文是51CTO专栏机构“机器之心”的原创译文,微信公众号“机器之心( id: almosthuman2014)”】

 

戳这里,看该作者更多好文

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
粉嫩如何诠释霸道 东芝M805... “霸道粉”是个什么玩意东芝M805拿过来的时候,笔者扑哧笑了,不是笑这款笔记本,而是笑这款产品的颜色...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
全面诠释网络负载均衡 负载均衡的出现大大缓解了服务器的压力,更是有效的利用了资源,提高了效率。那么我们现在来说一下网络负载...
只需三步,让你掌握阿尔法路由器... 请参照以下阿尔法路由器设置方法,通过浏览器进入及设置宽带路由器。经过这三个步骤的设置,基本上能够熟悉...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
30分钟搞定iOS自定义相机 最近公司的项目中用到了相机,由于不用系统的相机,UI给的相机切图,必须自定义才可以。就花时间简单研究...