前言

谷歌推出的NASNet架构,用于大规模图像分类和识别。NASNet架构特点是由两个AutoML设计的Layer组成——Normal Layer and Reduction Layer,这样的效果是不再需要相关专家用human knowledge来搭建卷积网络架构,直接用RNN把Hyperparameter计算出来,这样就实现了网络结构自动学习。

论文:Learning Transferable Architectures for Scalable Image Recognition

强化学习

论文:《Neural ,Architecture Search with Reinforcement Learning》。 网站链接(开源代码): https:// github .com / tensorflow /models

论文中的核心是:利用Reinforcement Learning(强化学习)机制训练一个RNN(循环神经网路)controller(控制器)去自动产生一个神经网络,无需人为手动设计网络,设计出的网络在相关有权威的数据集上都取得了很好的成绩。看完论文后发现没有硬件资源根本是无法使得训练跑起来的,有钱就是任性,论文用了800个GPU跑起来的。

RNN在处理变长问题和生成变长式问题时得到广泛应用,RNN通过循环单元可以展开为一个多长度概率模型,把变长问题使用一个概率框架来表示。在进行模型生成时,可以使用同样的方法进行模型长度枚举和选择优化,生成变长模型或者可变模型。

关于RNN模型:DNN结构进化之RNNDNN结构进化之LSTMDNN结构进化之NTM/DNC。用于处理变长问题,发展出RNN;用以解决RNN梯度消失问题,发展出LSTM;NTM模型抽象LSTM的cell内存,模型可以直接训练简短的生成模式,比如copy、循环、排序、NGM文法描述等简单内存操作模式。

强化学习用于结构搜索:controller控制器给出个action,action去环境中做出动作并得到一个结果result,最后将result作为反馈信号反馈给controller控制器,controller控制器根据反馈值进行修改,然后一直迭代这个过程直到到达目标。

论文的思想是:通过一个controllerRNN在搜索空间(search space)中得到一个网络结构(论文中称为child network),然后用这个网络结构在数据集上训练,在验证集上测试得到准确率R,再将这个准确率回传给controllercontroller继续优化得到另一个网络结构,如此反复进行直到得到最佳的结果,整个过程称为Neural Architecture Search。后面讲详细介绍整个流程,本总结主要是围绕生成CNN来介绍,论文中也可以生成RNN)。

模型生成过程

以卷积层的生成为例,使用RNN结构作为控制器用于生成conv层的超参数-conv个数、filter的高和宽、stride的高和宽等。下图为RNN的展开式结构,真正的RNN结构为一个recurrent单元。

控制一个RNN网络的unit的参数值,根据RNN生成变长串的一般法则,可以生成一个对应 结构的CNN网络描述。当然这个结构描述是变长的,长度和结构由RNN的参数决定,这样在一个可变CNN网络结构和RNN参数之间建立起一个函数映射。

根据论文的描述,使用所谓的anchor方法,一个RNN网络综合Conv层、Pooling层、SoftMax等多个RNN单元,综合为一个大的RNN网络,作为控制器。

反馈学习-训练RNN

文章描述联合RNN的优化方法和CNN的评价方法,使用CNN在测试集合上的表现作为CNN的评价,并把CNN的评价反传给RNN,用以训练RNN的结构和参数。

从整个过程可以看出,用以生成CNN的RNN结构的训练涉及到两部分,相对于一般使用数据直接训练RNN,多了一个CNN的自动生成,优化和测试,优化函数转化过程,直觉上需要极大的运算量,比训练通常RNN运算复杂度多几个数量级。

论文描述细节

Training details: The controller RNN is a two-layer LSTM with 35 hidden units on each layer.I t is trained with the ADAM optimizer (Kingma & Ba, 2015) with a learning rate of 0.0006. Theweights of the controller are initialized uniformly between -0.08 and 0.08.

For the distributed training ,we set the number of parameter server shards S to 20, the num be r of controller replicas K to100 and the number of child replicas m to 8, which means there are 800 networks being trained on 800 GPUs concurrently at any time.

生成模型用于迁移学习

迁移学习即是把一个领域的框架复用到另一个领域,两种应用领域具有特定的结构相似性,模型复用之时可以稍作修改或者稍加训练即可使用。

Training deta.............................

DNN结构构建:NAS网络结构搜索和强化学习、迁移学习的更多相关文章

  1. NASNet学习笔记——   核心一:延续NAS论文的核心机制使得能够自动产生网络结构;    核心二:采用resnet和Inception重复使用block结构思想;    核心三:利用迁移学习将生成的网络迁移到大数据集上提出一个new search space。

    from:https://blog.csdn.net/xjz18298268521/article/details/79079008 NASNet总结 论文:<Learning Transfer ...

  2. 用深度学习(DNN)构建推荐系统 - Deep Neural Networks for YouTube Recommendations论文精读

    虽然国内必须FQ才能登录YouTube,但想必大家都知道这个网站.基本上算是世界范围内视频领域的最大的网站了,坐拥10亿量级的用户,网站内的视频推荐自然是一个非常重要的功能.本文就focus在YouT ...

  3. CARS: 华为提出基于进化算法和权值共享的神经网络结构搜索,CIFAR-10上仅需单卡半天 | CVPR 2020

    为了优化进化算法在神经网络结构搜索时候选网络训练过长的问题,参考ENAS和NSGA-III,论文提出连续进化结构搜索方法(continuous evolution architecture searc ...

  4. 使用Elasticsearch 与 NEST 库 构建 .NET 企业级搜索

    使用Elasticsearch 与 NEST 库 构建 .NET 企业级搜索 2015-03-26 dotNET跨平台 最近几年出现的云计算为组织和用户带来了福音.组织对客户的了解达到前所未有的透彻, ...

  5. Vue项目搭建流程 以及 目录结构构建

    Vue项目搭建流程 以及 目录结构构建 一个小的Vue项目, 基于微信浏览器的移动端, 做了这么多的练习项目, 这一次准备记录下构建的过程, 以方便以后的调高效率 环境准备 操作系统 我的 windo ...

  6. ANN:DNN结构演进History—LSTM网络

    为了保持文章系列的连贯性,参考这个文章: DNN结构演进History-LSTM_NN 对于LSTM的使用:谷歌语音转录背后的神经网络 摘要: LSTM使用一个控制门控制参数是否进行梯度计算,以此避免 ...

  7. ANN:DNN结构演进History—LSTM_NN

    前言 语音识别和动作识别(Action.Activities)  等一些时序问题,通过微分方式可以视为模式识别方法中的变长模式识别问题.语音识别的基元为音素.音节,字母和句子模式是在时间轴上的变长序列 ...

  8. Evolution of Image Classifiers,进化算法在神经网络结构搜索的首次尝试 | ICML 2017

    论文提出使用进化算法来进行神经网络结构搜索,整体搜索逻辑十分简单,结合权重继承,搜索速度很快,从实验结果来看,搜索的网络准确率挺不错的.由于论文是个比较早期的想法,所以可以有很大的改进空间,后面的很大 ...

  9. AI小白必读:深度学习、迁移学习、强化学习别再傻傻分不清

    摘要:诸多关于人工智能的流行词汇萦绕在我们耳边,比如深度学习 (Deep Learning).强化学习 (Reinforcement Learning).迁移学习 (Transfer Learning ...

随机推荐

  1. SSD硬盘安装系统后要做的事

    1***cmd>fsutil behavior query DisableDeleteNotify 0如果返回值是0,则代表TRIM处于开启状态:反之如果返回值是1,则代表TRIM处于关闭状态2 ...

  2. 【BLE】CC2541之自己定义长短按键

    本篇博文最后改动时间:2017年01月06日,11:06. 一.简单介绍 本文以SimpleBLEPeripheral为例,介绍怎样将普通IO口(P12)自己定义为长短按键,实现按键3S以内松开为短按 ...

  3. 【LIS】Luogu P1020 导弹拦截

    昨天晚上看蓝书,看到了LIS问题的优化解法. 是比O(n方)更快的解法,实际上是一个常数优化. 先讲一下朴素的解法: 一个集合a,a[i]是第i个元素.设dp[i]为以编号为i的元素结尾的最长不上升子 ...

  4. Codeforces Round #363 (Div. 2)E. LRU

    E. LRU time limit per test 2 seconds memory limit per test 256 megabytes input standard input output ...

  5. 在ARM-linux上实现4G模块PPP拨号上网【转】

    本文转载自:http://blog.csdn.net/zqixiao_09/article/details/52540887 在ARM平台上实现4G模块的PPP拨号上网,参考网上的资料和自己的理解,从 ...

  6. vue实例以及生命周期

    1.Vue实例API 1.构造器(实例化) var vm = new Vue({ //选项 |-------DOM(3) |   |-------el (提供一个在页面上已存在的 DOM 元素作为 V ...

  7. 7. ExtJS.form中msgTarget

    转自:https://www.cnblogs.com/guafuli/articles/msgtarget_values.html Ext表单提示方式:msgTarget:有4中方式:qtip,tit ...

  8. C#面向过程之类型转换、算术运算符、关系运算符、逻辑运算符、if-else语句、switch-case、循环结构(while、for)、三元表达式

    数据类型转换: int.parse()只能转换string类型的 当参数为null时会报异常int i =Convert.ToInt32(false) 运行结果是0int i =Convert.ToI ...

  9. easyui-datebox 年月视图显示

    //年月视图做法 $('#startYearDate').datebox({ onShowPanel: function () { //显示日趋选择对象后再触发弹出月份层的事件,初始化时没有生成月份层 ...

  10. [POI2013]POL-Polarization

    题目描述 Everyone knew it would only be a matter of time. So what? Faced for years on, a peril becomes t ...