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

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

3天内不再提示

MIT韩松等人团队开发了一种高效的神经结构搜索算法

DPVg_AI_era 来源:lp 2019-03-29 08:53 次阅读

MIT韩松等人团队开发了一种高效的神经结构搜索算法,可以为在特定硬件上自动设计快速运行的神经网络提供一个“按钮型”解决方案,算法设计和优化的机器学习模型比传统方法快200倍。

使用算法自动设计神经网络人工智能的一个新领域,而且算法设计的系统比人类工程师开发的系统更准确、更高效。

但是这种所谓的神经结构搜索(NAS)技术在计算上非常昂贵。

谷歌最近开发的最先进的NAS算法,它可以在一组GPU上运行,需要48000小时来生成一个用于图像分类和检测任务的卷积神经网络。当然了,谷歌拥有并行运行数百个GPU和其他专用硬件的资金实力,但这对其他大部分人来说是遥不可及的。

在5月份即将举行的ICLR会议发表的一篇论文中,MIT的研究人员描述了一种NAS算法,仅需200小时,可以专为目标硬件平台(当在大规模图像数据集上运行时)直接学习卷积神经网络。这可以使这类算法得到更广泛的使用。

论文:ProxylessNAS: 在目标任务和硬件上直接搜索神经架构

地址:https://arxiv.org/pdf/1812.00332.pdf

研究人员表示,资源匮乏的研究人员和企业可以从节省时间和成本的算法中受益。论文作者之一、MIT电子工程与计算机科学助理教授、微系统技术实验室研究员韩松(Song Han)表示,他们的总体目标是“AI民主化”。

MIT电子工程与计算机科学助理教授韩松

他说:“我们希望通过在特定硬件上快速运行的一个’按钮型’(push-button)的解决方案,让AI专家和非专家都能够高效地设计神经网络架构。”

韩松补充说,这样的NAS算法永远不会取代人类工程师。“目的是减轻设计和改进神经网络架构所带来的重复和繁琐的工作,”他说。他的团队中的两位研究人员Han Cai和Ligeng Zhu参与了论文。

ImageNet最高精度,计算成本降低200倍

在他们的工作中,研究人员开发了一些方法来删除不必要的神经网络设计组件,以缩短计算时间,并仅使用一小部分硬件内存来运行NAS算法。另一项创新确保每个输出的CNN在特定的硬件平台(CPU、GPU和移动设备)上运行得比传统方法更高效。在测试中,研究人员用手机测得CNN运行速度是传统方法的1.8倍,准确度与之相当。

CNN的架构由可调参的计算层(称为“过滤器”)和过滤器之间可能的连接组成。过滤器处理正方形网格形式的图像像素,如3x3、5x5或7x7,每个过滤器覆盖一个正方形。过滤器基本上是在图像上移动的,并将其覆盖的像素网格的所有颜色合并成单个像素。不同的层可能具有不同大小的过滤器,并以不同的方式连接以共享数据。输出是一个压缩图像——来自所有过滤器的组合信息——因此可以更容易地由计算机进行分析。

由于可供选择的架构的数量——称为“搜索空间”——是如此之大,因此应用NAS在大型图像数据集上创建神经网络在计算上是令人望而却步的。工程师们通常在较小的proxy数据集上运行NAS,并将它们学到的CNN架构转移到目标任务。然而,这种泛化方法降低了模型的精度。此外,相同的输出架构也适用于所有硬件平台,这造成了效率问题。

研究人员直接在ImageNet数据集中的一个图像分类任务上训练并测试了他们的新NAS算法。他们首先创建了一个搜索空间,其中包含所有可能的CNN候选“路径”(paths)——即层和过滤器连接以处理数据的方式。这使得NAS算法可以自由地找到最优的架构。

ProxylessNAS在ImageNet上达到最高精度,且搜索成本的GPU hours减少了200倍

通常,这意味着所有可能的路径都必须存储在内存中,这将超过GPU的内存限制。为了解决这个问题,研究人员利用了一种称为“路径级二值化”(path-level binarization)的技术,这种技术一次只存储一个采样路径,并节省了一个数量级的内存消耗。他们将这种二值化与“path-level pruning”相结合,后者是一种传统的技术,可以在不影响输出的情况下学习删除神经网络中的哪些“神经元”。然而,他们提出的新NAS算法并不是丢弃神经元,而是修剪了整个路径,这完全改变了神经网络的结构。

ImageNet上精度和延迟的结果

在训练中,所有路径最初都被赋予相同的选择概率。然后,该算法跟踪路径——一次只存储一个路径——以记录输出的准确性和损失(对错误预测的数字惩罚)。然后,它调整路径的概率,以优化精度和效率。最后,该算法修剪掉所有低概率路径,只保留了概率最高的路径——这就是最终的CNN架构。

硬件感知:测试延迟只需一部手机

韩松表示,该研究另一个关键的创新是使NAS算法具备“硬件感知”(hardware-aware),这意味着它将每个硬件平台上的延迟作为反馈信号来优化架构。

例如,为了测量移动设备上的延迟,Google这样的大公司会使用大量的移动设备,这是非常昂贵的。相反,研究人员构建了一个模型,只使用一部手机就能预测延迟。

不同硬件的延迟结果

对于网络的每个所选层,算法都对该延迟预测模型的架构进行采样。然后,使用这些信息来设计一个尽可能快地运行的架构,同时实现高精度。在实验中,研究人员的CNN在移动设备上的运行速度几乎是标准模型的两倍。

针对不同硬件优化的高效模型

韩松说,一个有趣的结果是,他们的NAS算法设计的CNN架构长期以来被认为效率太低,但在研究人员的测试中,它们实际上针对特定的硬件进行了优化。

例如,工程师基本上已经停止使用7x7过滤器,因为它们的计算成本比多个更小的过滤器更昂贵。然而,研究人员的NAS算法发现,具有部分7x7过滤器层的架构在GPU上运行得最快。这是因为GPU具有高并行性——意味着它们可以同时进行许多计算——所以一次处理一个大过滤器比一次处理多个小过滤器效率更高。

“这与人类以前的思维方式背道而驰,”韩松说。“搜索空间越大,你能找到的未知事物就越多。你不知道是否会有比过去的人类经验更好的选择。那就让AI来解决吧。”

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

    关注

    42

    文章

    4774

    浏览量

    100898
  • 自动化
    +关注

    关注

    29

    文章

    5596

    浏览量

    79409
  • 数据集
    +关注

    关注

    4

    文章

    1208

    浏览量

    24737

原文标题:MIT华人助理教授新作:加快神经网络设计自动化的步伐

文章出处:【微信号:AI_era,微信公众号:新智元】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    BitEnergy AI公司开发一种新AI处理方法

    BitEnergy AI公司,家专注于人工智能(AI)推理技术的企业,其工程师团队创新性地开发了一种名为线性复杂度乘法(L-Mul)的AI处理方法。该方法的核心在于,它用整数加法替代
    的头像 发表于 10-22 15:15 407次阅读

    bp神经网络算法过程包括

    BP神经网络(Backpropagation Neural Network)是一种多层前馈神经网络,具有强大的非线性映射能力,广泛应用于模式识别、信号处理、预测等领域。本文将详细介绍BP神经
    的头像 发表于 07-04 09:45 495次阅读

    日本九州大学开发了名为QDyeFinder的人工智能(AI)工具

    在探索大脑这宇宙中最复杂结构的征途中,科学家们不断突破技术的边界,以更精细、更高效的方式揭示其奥秘。近期,日本九州大学的研究团队在《自然·通讯》杂志上发表了
    的头像 发表于 07-03 14:43 503次阅读

    神经元的结构及功能是什么

    神经元是神经系统的基本结构和功能单位,它们通过电信号和化学信号进行信息传递和处理。神经元的结构和功能非常复杂,涉及到许多不同的方面。
    的头像 发表于 07-03 11:33 1384次阅读

    神经网络反向传播算法的优缺点有哪些

    神经网络反向传播算法(Backpropagation Algorithm)是一种广泛应用于深度学习和机器学习领域的优化算法,用于训练多层前馈神经
    的头像 发表于 07-03 11:24 1086次阅读

    神经网络反向传播算法的作用是什么

    神经网络反向传播算法(Backpropagation)是一种用于训练人工神经网络的算法,它通过计算损失函数关于网络参数的梯度来更新网络的权重
    的头像 发表于 07-03 11:17 1484次阅读

    BP神经网络算法的基本流程包括

    BP神经网络算法,即反向传播(Backpropagation)神经网络算法,是一种多层前馈神经
    的头像 发表于 07-03 09:52 534次阅读

    神经网络算法结构有哪些类型

    神经网络算法是深度学习的基础,它们在许多领域都有广泛的应用,如图像识别、自然语言处理、语音识别等。神经网络的结构有很多种类型,每种类型都有其独特的特点和应用场景。以下是对
    的头像 发表于 07-03 09:50 468次阅读

    神经网络算法的优缺点有哪些

    神经网络算法一种模拟人脑神经结构的计算模型,广泛应用于机器学习、深度学习、图像识别、语音识别等领域。然而,
    的头像 发表于 07-03 09:47 1479次阅读

    神经网络算法的基本原理

    神经网络算法是人工智能领域的一种重要算法,它模仿了人脑神经元网络的结构和功能,通过对大量数据进行
    的头像 发表于 07-03 09:44 976次阅读

    神经网络反向传播算法原理是什么

    神经网络反向传播算法(Backpropagation Algorithm)是一种用于训练多层前馈神经网络的监督学习算法。它通过最小化损失函数
    的头像 发表于 07-02 14:16 679次阅读

    基于助听器开发一种高效的语音增强神经网络

    受限的微控制器单元(microcontroller units,MCU)上,内存和计算能力有限。在这项工作中,我们使用模型压缩技术来弥补这差距。我们在HW上对RNN施加约束,并描述了一种方法来满足它们
    发表于 06-07 11:29

    揭秘谷歌搜索算法工作原理,与官方声明存在矛盾

    有着十多年搜索引擎优化经验的兰德·菲什金,近日透露他收到份长达2500页的文件,据称这是对谷歌搜索算法工作原理的真实揭示,而非谷歌官方所声称的那样。
    的头像 发表于 05-29 16:00 612次阅读

    鼾声监测神经网络

    (LSTM)模型对打鼾和非打鼾声音进行分类;Sun等人42提出了SnoreNet,这是一种维CNN(1D CNN),它直接对原始声音信号进行操作,而无需手动制作特征;Khan等人8
    发表于 05-15 12:14

    鸿蒙OS开发之 融合搜索概述

    索引。 全文搜索 通过全文索引进行匹配查找结果的一种搜索引擎技术。 全局搜索 可以在系统全局统的入口进行的
    的头像 发表于 01-29 16:24 611次阅读
    鸿蒙OS<b class='flag-5'>开发</b>之  融合<b class='flag-5'>搜索</b>概述