在这个方程中,我们可以看出前面讨论的两种类型的层的轮廓:y = H (x, Wh) 和传统网络的层相似,y = H (x, Wh) + x和残差单元相似。新的T(x,Wt)函数是什么呢?它的作用像一个开关,决定哪些信息应该通过主路径,哪些信息可以跳过途径。在两条路径都使用T和(1-T),激活的和必须总为1。在Tensorflow中的实现如下:
DenseNetworks 我想介绍的最后一个是Dense Network,或称DenseNet。你可能会认为这是把“跳过连接”这种方式发挥到极致。这里的观点是,如果连接一个从前一层中跳过的连接可以提升性能,那为什么不把每一层和其他的每一层连接起来呢?这样,网络中的信息反向传播总是存在有直接的通路。
dense connection的原理。From: https://arxiv.org/abs/1608.06993 DenseNet不使用加法,而是依赖层的堆叠(stacking): y = f(x,x-1,x-2…x-n) 这种结构在前馈和反馈设置中都有着直观的意义。在前馈设置中,除了高层特征激活外,任务还能从低层特征激活中受益。以物体分类为例,网络中较低的层可以确定图像的边缘,而较高的层可以确定图像中更大范围的特征,例如人的面部。使用有关边缘的信息有助于在复杂场景中正确地确定对象。在反馈设置中,使所有的层连接起来可以轻易地快速把梯度分别传递到各自的位置中。 但是在实现DenseNet时,不能只是把所有层连接起来。只能把具有相同高度和宽度的层堆叠在一起。因此,我们先是把一系列卷积层稠密堆叠到一起,然后应用跨层(striding)或池化层(pooling layer),再把另外一系列的卷积层稠密堆叠到一起,等等。在Tensorflow上的实现如下:
所有这些网络都可以用CIFAR10数据集训练来进行图像分类,并可以很好地实现几十层的网络,而传统的神经网络做不到。只需稍微调整参数,我能够使它们在一小时左右的训练之后实现超过90%的精度。训练每个模型的完整代码,以及与传统网络的比较已经发布在github(https://github.com/awjuliani/TF-Tutorials/blob/master/Deep%20Network%20Comparison.ipynb)。 :COO、执行总编、主编、高级编译、主笔、运营总监、客户经理、咨询总监、行政助理等 9 大岗位全面开放。 简历投递:j[email protected] HR 微信:13552313024 新智元为COO和执行总编提供最高超百万的年薪激励;为骨干员工提供最完整的培训体系、高于业界平均水平的工资和奖金。 加盟新智元,与人工智能业界领袖携手改变世界。 (责任编辑:本港台直播) |