AlexNet 网络复现

本文介绍了对AlexNet网络的复现过程,使用CIFAR10数据集而非原版的ImageNet。对比了AlexNet与LeNet的区别,包括更深的网络、MaxPool的使用和Dropout防止过拟合。通过实验展示了BatchNorm和Dropout对模型性能的影响,Dropout显著提升了模型准确率。
摘要由CSDN通过智能技术生成

AlexNet 网络复现

参数总量(复现版) 6616714

原版AlexNet用于ImageNet2012数据集的分类预测。但是ImageNet是一个巨大的数据集(132GB),同时在最新的Pytorch当中也不提供下载了,所以便于练习,这里复现使用了CIFAR10这个小型数据集,同时因为图片尺寸不同,对网络也进行了相应的调整。

论文链接

http://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks.pdf

AlexNet与LeNet有何不同?

主要差异在以下四点:

  1. 卷积网络更深(3 层 -> 5层)
  2. 使用了Local Response Normalization (LRN) 防止过拟合
    • 后来VGG的论文中提到这个LRN实际上没什么卵用。
  3. 用MaxPool取代AvgPool。
    • 效果拔群,我自己也在LeNet-5的复现中尝试过, 对预测准度有显著提升
  4. 使用了DropOut这个防止过拟合的trick

除此以外AlexNet的参数总量是LeNet-5的数十倍。原文

AlexNet原版网络结构
size/operation kernel size Depth stride Stride Padding # Parameters
3 * 227 * 227
Conv1 + ReLU 11 96 4 (11 * 11 * 3 + 1) * 96 = 34944
96 * 55 * 55
Max Pooling 3 2
96 * 27 * 27
Norm
Conv2 + ReLU 5 256 1 2 (5 * 5 * 96 + 1) * 256 = 614656
256 * 27 * 27
Max Pooling 3 2
256 * 13 * 13
Norm
Conv3+ ReLU 3 384 1 1 (3 * 3 * 256 + 1) * 384 = 885120
384 * 13 * 13
Conv4+ ReLU 3 384 1 1 (3 * 3 * 384 + 1) * 384 = 1327488
384 * 13 * 13
Conv3+ ReLU 3 256 1 1 (3 * 3 * 384 + 1) * 256 = 884992
256 * 13 * 13
Max Pooling 3 2
256 * 6 * 6
FC6+ReLU (256 * 6 * 6 ) * 4096 = 37748736
4096
Dropout (rate 0.5)
FC7 + ReLU 4096 * 4096 = 16777216
4096 <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值