MicrosoftのオープンソースNASアルゴリズムペトリ皿は、ニューラルネットワークの移行を高めます


著者|イエス・ロドリゲス

翻訳|レイチェル

編集| yugao

制作| AI技術のベースキャンプ(ID:rgznai100)               

REVIEW神経のアーキテクチャ検索(神経アーキテクチャの検索、NAS)は、最もホットなトレンドの詳細な研究の一つです。NASの方法とデータセットは、特定の問題のために、最も適切なニューラルネットワークアーキテクチャを探してみてください。NASマシンは機械学習方法で問題を解決することを学びます。近年では、フレームワークやプラットフォームを学習主流のアルゴリズムの深さにNAS技術への試みの数は爆発的に増加したが、初期のNASモデルは、特に別のフィールドによって生成されたNAS移行するニューラルネットワークでは、多くの課題に直面しましたときフィールド。そのため、NAS空間で、技術革新のための多くの可能性が残っています。

 

最近、Microsoftはアルゴリズムが選択神経のネットワークアーキテクチャを最適化するために使用することができ、ペトリ皿と呼ばれるアルゴリズムの研究チームが発表しました。 

主な理由は、NASの設計ニューラルネットワークは非常に高価で表示され価格です。既存の生態系の深さ試験では、多くのよく知られており、ニューラルネットワークに十分な効果が著しく、特にユーザ・データ・セットとニューラルネットワーク生テストデータセットが異なるに、移行存在するのが困難です。既存のNASのアプローチでは、それらの多くは、優れたネットワークアーキテクチャを見つけるために、GPU時間の何百もの使用を必要とするが、その効果はわずかに優れてランダム探索を超えています。また、NAS技術の特徴選択の問題は、小さな挑戦ではありません。

 

特徴選択アルゴリズムの必要性は、ニューラルネットワークモデル構築のための特徴から抽出された関連データに焦点を当てる、これはNASに非常によく似ています。もちろん、選択ははるかにニューラルネットワークアーキテクチャを選択するよりも特徴シンプルで、それはまたのインスピレーションペトリ皿チームの源となっています:特徴選択法の原則から借り得ました。

NASの簡単な歴史

考虑到 NAS 方法最近的流行程度,可能有很多人会认为 NAS 是最近才出现的学科。2016年,谷歌关于强化学习的著名论文(https://arxiv.org/abs/1611.01578)的发表使得 NAS 重新回到人们的视野。而事实上, NAS 的研究可以追溯到20世纪80年代。最早关于 NAS 的论文之一发表于 1988年,标题为“Self Organizing Neural Networks for the Identification Problem”(https://papers.nips.cc/paper/149-self-organizing-neural-networks-for-the-identification-problem). 从那之后,关于 NAS 的研究陆续发表,但直到谷歌关于 NAS 论文的发表,NAS 技术才真正得到肿瘤机器学习社区的重视。如果您对 NAS 方法的研究历史感兴趣,可以参阅 AutoML Freiburg-Hannover(https://www.automl.org/automl/literature-on-neural-architecture-search/) 网站上的相关介绍。

NAS 的两个类型:前向搜索 vs. 后向搜索

NAS 技术中主要有两个类型:后向搜索(vackward-search)和前向搜索(foward-search)。后向搜索在 NAS 技术中更为常见,该方法首先以图结构构建一个所有可能的神经网络架构的集合,之后通过梯度下降或强化学习逐步降低不需要的边的权重。尽管该方法能够有效降低 NAS 的搜索时间,其存在一个主要的缺陷:在构建初始的图结构时需要人类的领域知识。

 

采用前向搜索的 NAS 尝试通过对规模较小的神经网络结构进行扩展以得到更大的神经网络。这种方法继承了深度学习模型特征选择方法的很多原则。该方法和后向搜索的不同之处在于,前向搜索不需要设计一个有限的搜索空间,因此前向搜索更加普遍化且易于使用,尤其是在基于已有模型进行热启动时,或是进行长时间持续的学习时。

Petridish

Petridish 是一个前向搜索 NAS ,其借鉴了特征选择和梯度提升技术。该算法首先创建一个模型集合以作为搜索输出,之后通过多个 stop-forward 层和 stop-gradient 层来高效识别加入模型集合的最佳候选模型,并使用异步方法进行训练。

 

Petridish 的算法可以分为三个阶段:

  • 阶段0: Petridish 首先输入一个规模较小的母模型,该模型一般为人为定义的仅包含一到两层的简单模型,或是已经由领域专家基于数据集构建的成熟的神经网络模型。

  • 阶段1: Petridish 将候选层、 stop-gradient 和 stop-forward 层与母模型连接,并对构建出的模型的一部分进行训练。候选层可以是搜索空间中任何操作的组合。通过使用 stop-gradient 和 stop-forward 层,该算法能使得候选层的梯度在进行积累的同时不影响前向的操作和后向的梯度。如果没有 stop-gradient 和 stop-forward 层,算法将很难明确候选层对母模型效果的贡献如何,且可能导致更多的训练花销。

  • 阶段2: 如果一个特定的候选层或候选层的集合对模型的效果提升有所贡献,则将 stop-gradient 层、stop-forward 层和其他候选层一处,并对模型进行整体训练以进行融合。之后,使用散点图对训练结果进行绘制,以得到一个对帕累托边界的估计。

 

             

将帕累托边界添加到 Petridish 算法中是一个很有趣的想法,通过使用该边界,研究者能够更容易地决定针对特定任务达到最优效果的神经网络架构。另外,对帕累托边界的估计也使得多个标准间的权衡更加易于观察,包括准确率、FLOPS 、内存、时延,等等。在下图中,帕累托边界附近的点构成了搜索结果的集合,该集合包含多个模型以供研究者和工程师进行选择。

          

微软研究团队通过多个 NAS 基线对 Petridish 的效果进行了评估。特别地,团队使用 CIFAR-10 数据集对图片分类模型进行了评估,并将所得模型在 ImageNet 数据集上进行了测试。在 CIFAR-10 数据集上,Petridish 的平均测试错误率降低至百分之 2.75 ± 0.21,最低测试错误率达到百分之 2.51 ,且仅使用 3.2M 参数,搜索时间为五天 GPU 时间。在将模型从 CIFAR-10 迁移至 ImageNet 时, Petridish 最优时的测试错误率降低到百分之 28.7 ± 0.15 ,最低测试错误率达到百分之 28.5,且仅使用 4.3M 参数。初始的测试结果甚至超越了已有的最优 NAS 模型,且同时将计算花销控制在了合理的范围内。

              

对于快速成长的 NAS 技术生态系统而言, Petridish 是一个非常有趣的尝试,尤其是其使用的前向搜索方法,因为大部分流行的 NAS 技术均基于后向搜索搭建。微软已经在其 Azure ML 平台增加了 NAS 模块, Petridish 算法的增加必将使得该平台具有更加丰富的功能。

 

原文链接:

https://towardsdatascience.com/microsoft-introduces-project-petridish-to-find-the-best-neural-network-for-your-problem-f3022bee5fce

(*本文为AI科技大本营翻译文章,转载请微信联系1092722531)

精彩推荐

2020年,由 CSDN 主办的「Python开发者日」活动(Python Day)正式启动。我们将与 PyCon 官方授权的 PyCon中国社区合作,联手顶尖企业、行业与技术专家,通过精彩的技术干货内容、有趣多元化的活动等诸多体验,共同为中国 IT 技术开发者搭建专业、开放的技术交流与成长的家园。未来,我们和中国万千开发者一起分享技术、践行技术,铸就中国原创技术力量。

【Python Day——北京站】现已正式启动,「新春早鸟票」火热开抢!2020年,我们还将在全国多个城市举办巡回活动,敬请期待!

活动咨询,可扫描下方二维码加入官方交流群~

CSDN「Python Day」咨询群 ????

来~一起聊聊Python

如果群满100人,无法自动进入,可添加会议小助手微信:婷婷,151 0101 4297(电话同微信)


推荐阅读

发布了1299 篇原创文章 · 获赞 1万+ · 访问量 536万+

おすすめ

転載: blog.csdn.net/dQCFKyQDXYm3F8rB0/article/details/104035503
おすすめ