卷积网络的发展历史-AlexNet

简介

2012 年,Krizhevsky 与 Hinton 推出了 AlexNet,引起了许多学者对深度学习的研究,可以算是深度学习的热潮的起始标志。在图像分类领域不得不提的就是ImageNet大规模视觉挑战赛(ILSVRC),它被称为深度学习在图像分类任务研究方面进展的标杆。AlexNet网络参加了ILSVRC2012年大赛,以高出第二名10%的性能优势取得了冠军。AlexNet网络也是VGGNet、GoogLeNet、ResNet、DenseNet等经典网络的基础和开端。

特点

AlexNet 的特点如下所示:

(1)采用双GPU网络结构,从而可以设计出更"大"、更"深"的网络(相较于当时的算力来说);

(2)采用ReLu代替tanh,稍微解决梯度消失问题(Gradient Vanishing Problem),加快网络收敛速度;

(3)提出局部相应归一化(LRN, Local Response Normalization);

(4)令pooling操作中的stride小于池化核的大小,从而使相邻的池化区域存在重叠部分,这一操作称为Overlapping Pooling;

(5)对训练数据进行随机裁剪(Random Crop),将训练图像由256×256裁剪为224×224,并做随机的镜像翻转(Horizontal Reflection)。并在测试时,从图像的四个角以及中心进行裁剪,并进行镜像翻转,这样可以得到10个Patch,将这些 Patch 的结果进行平均,从而得到最终预测结果;

(6)对训练图像做PCA(主成分分析),利用服从 (0,0.1) 的高斯分布的随机变量对主成分进行扰动。这一操作能减少指标Top-1的1%错误率;

(7)利用dropout 避免网络过拟合。

代码

python 复制代码
 self.features = nn.Sequential(
            nn.Conv2d(in_channels=3, out_channels=96, kernel_size=11, stride=4, padding=2),
            nn.ReLU(inplace=True),
            nn.MaxPool2d(3, 2),
            nn.Conv2d(96, 256, 5, 1, 2),
            nn.ReLU(inplace=True),
            nn.MaxPool2d(3, 2),
            nn.Conv2d(256, 384, 3, 1, 1),
            nn.ReLU(inplace=True),
            nn.Conv2d(384, 384, 3, 1, 1),
            nn.ReLU(inplace=True),
            nn.Conv2d(384, 256, 3, 1, 1),
            nn.ReLU(inplace=True),
            nn.MaxPool2d(3, 2)
        )
相关推荐
聆风吟º3 分钟前
CANN hccl 深度解析:异构计算集群通信库的跨节点通信与资源管控实现逻辑
人工智能·wpf·transformer·cann
狸奴算君10 分钟前
告别机械回复:三步微调AI模型,打造会“读心”的智能客服
人工智能
七夜zippoe11 分钟前
脉向AI|当豆包手机遭遇“全网封杀“:GUI Agent是通向AGI的必经之路吗?
人工智能·ai·智能手机·agent·gui
木非哲13 分钟前
机器学习--随机森林--从一棵树的直觉到一片林的哲学
人工智能·随机森林·机器学习
神的泪水16 分钟前
CANN 系列底层篇:基于 shmem 实现 NPU 设备内存的高效共享
人工智能
皮卡丘不断更17 分钟前
手搓本地 RAG:我用 Python 和 Spring Boot 给 AI 装上了“实时代码监控”
人工智能·spring boot·python·ai编程
浪子小院28 分钟前
ModelEngine 智能体全流程开发实战:从 0 到 1 搭建多协作办公助手
大数据·人工智能
程序员打怪兽31 分钟前
详解YOLOv8网络结构
人工智能·深度学习
Yuer202531 分钟前
全国首例“AI 幻觉”侵权案判了:这不是 AI 准不准的问题,而是谁该为 AI 负责
人工智能·edca os·可控ai
一切尽在,你来1 小时前
1.1 AI大模型应用开发和Langchain的关系
人工智能·langchain