目录
GoogLeNet系列解读
Inception v3
Inception v3整体上采用了Inception v2的网络结构,并在优化算法、正则化等方面做了改进,总结如下:
1. 优化算法使用RMSProp替代SGD。
2. 使用Label Smoothing Regularization(LSR)方法。LSR是一种通过在输出y中加噪声,实现对模型进行约束,降低模型过拟合的方法。进行模型训练时,通常真是标签q(k/x)采用one-hot的形式,而模型的输出一般为softmax归一后的概率分布p(k/x),
损失函数为,
训练的目的是使p(k/x)的分布尽可能接近q(k/x),但是这种方法很容易产生过拟合。举个例子,假设分类器需要区分“我们都喜欢玩耍”和“我们都喜欢学习”两句话。假设“玩耍”出现80次,“学习”出现20次,因为标签采用one-hot的形式,随着次数的增加,模型会逐渐倾向于“玩耍”这句话的搭配,使这个搭配的预测概率逐渐趋向于100%,而“学习”这个搭配会逐渐被忽略。
为了解决这个问题,作者以权重加入某一概率分布到原始标签中构成新的标签,形式如下:
其中,。论文中作者使用了均匀分布,
这种方式可以防止把模型预测值过分集中在给率较大的类别上,会对小概率类别增加更多的关注。
此时,损失函数变为,
从损失函数可以看出,LSR相当于使用了两个loss。当u服从均匀分布时,H(u,p)为常数,能够衡量预测分布p和均匀分布的不相似程度,起到了正则化的作用。
3. 将第一个7x7卷积层分解为两个3x3卷积层。
4. 辅助分类器(auxiliary classifier)的全连接层也进行了batch-normalization操作。
Inception v3相比于Inception v2有了较大的提升,实验结果如下: