Do Deep Nets Really Need to be Deep?

Annotation

DN----Deep Net
SN----Shallow Net

Introduction

Theme: 用一个SN去模拟DN可不可以达到较好的效果?

思考:DN的效果为什么比SN好?
可能原因:1、DN参数多。2、DN层数多。3、卷积操作可以学到一些特殊的特征。4、目前的学习算法和正则化过程对DN更加有效。5、All of above 或者 None of above.

作者在文中给出了一个判断网络深度是否合适的方法,如果一个SN 和一个DN 拥有相同的参数规模,并且SN可以有很接近DN的结果,那么当前任务就不需要那么深的网络。

The subjects

TIMIT

Experiment

SoftMax 的输入为 logits, 输出为 probability, 训练SN时用logits.
原因:probability 给出的是softMax对目标的给分(如(0.01, 0.01, 0.98)),同一个对象的不同组给的分数差异很大,容易让SN忽略小分数。
Loss函数:

其中, x ( t ) x^{(t)} x(t)代表输入特征, z ( t ) z^{(t)} z(t)代表logits, W W W是输入与隐藏层的权重, β \beta β是隐藏层与输出之间的权重, g ( x ( t ) ; W ; β ) = β f ( W x ( t ) ) g(x^{(t)}; W; \beta )=\beta f(Wx^{(t)}) g(x(t);W;β)=βf(Wx(t))是第 t t t个训练点的预测。

为了限制通过网络的信息流和有效参数的数量,分解权重矩阵 W ∈ R h × d W\in R^{h\times d} WRh×d W = U × V W=U\times V W=U×V,得:

Result

在这里插入图片描述
PER: phone error rate

Structure

在这里插入图片描述

Reference

参考博客
论文地址

猜你喜欢

转载自blog.csdn.net/Goodlick/article/details/108254930