新沂网站建设,建筑企业公司,页面设计要会什么,最新商业资讯深度学习-Pytorch实现经典AlexNet网络之山高我为峰
深度学习中#xff0c;经典网络引领一波又一波的技术革命#xff0c;从LetNet到当前最火的GPT所用的Transformer#xff0c;它们把AI技术不断推向高潮。2012年AlexNet大放异彩#xff0c;它把深度学习技术引领第一个高峰…深度学习-Pytorch实现经典AlexNet网络之山高我为峰
深度学习中经典网络引领一波又一波的技术革命从LetNet到当前最火的GPT所用的Transformer它们把AI技术不断推向高潮。2012年AlexNet大放异彩它把深度学习技术引领第一个高峰打开人们的视野。
用pytorch构建CNN经典网络模型AlexNet还可以用数据进行训练模型得到一个优化的模型。
数据分析
数据分析-Pandas如何转换产生新列
数据分析-Pandas如何统计数据概况
数据分析-Pandas如何轻松处理时间序列数据
数据分析-Pandas如何选择数据子集
数据分析-Pandas如何重塑数据表-CSDN博客
经典算法
经典算法-遗传算法的python实现
经典算法-模拟退火算法的python实现
经典算法-粒子群算法的python实现-CSDN博客
AlexNet概述
第一个典型的CNN是LeNet5网络而第一个引领技术潮流的CNN却是AlexNet。2012年在全球知名的图像识别竞赛 ILSVRC 中AlexNet 横空出世直接将错误率降低了近 10 个百分点。这是断崖式的领先。当时AlexNet的影响和现在chatGPT带来的效应相当。
网络结构
输入图像分辨率227x227x3 通道
结构
9层1个输入层5个卷积层2个全连接层1个输出层因GPU内存不够分为上下两组
1C111x11 —输出2组48个55×55大小的特征图– ReLU -- LRN -- MaxPooling
2C25x5 —输出2组128个27×27大小的特征图– ReLU -- LRN -- MaxPooling
3C33x3 —输出384个13×13大小的特征图– ReLU
4C43x3 —输出2组192个13×13大小的特征图– ReLU
5C53x3 —输出2组128个13×13大小的特征图– ReLU -- MaxPooling
6FC6 ---- 6x6输入2组6x6x128特征图输出4096个1x1全连接层– ReLU -- Dropout
7FC7 ---- 输入4096个神经元输出4096个神经元– ReLU -- Dropout
8输出层— 输入4096个神经元–softmax --输出 1000分类
整个AlexNet网络包含的神经元个数为
290400 186624 64896 64896 43264 4096 4096 1000 659272
大约65万个神经元。
整个AlexNet网络包含的参数数量为
34944 307456 885120 663936 442624 37752832 16781312 4096000 60964224
大约6千万个参数。 优势与不足
优势采用激活函数ReLU局部响应归一化使用Dropout机制Max Pooling重叠池化双GPU训练图像尺寸扩大227x227x3。
Pytorch实现
以下便是使用Pytorch实现的经典网络结构AlexNet
# AlexNet 227x227x3
class AlexNet(nn.Module):def __init__(self, channels, num_classes):super(AlexNet, self).__init__()self.features nn.Sequential(# 输入通道数为3彩色图片# 输出96、卷积核为11x11步长为4是AlexNet模型结构决定nn.Conv2d(channels, 96, kernel_size11,stride4, padding2),nn.ReLU(),nn.MaxPool2d(kernel_size3,stride2),nn.Conv2d(96, 256,kernel_size5, padding2),nn.ReLU(),nn.MaxPool2d(kernel_size3,stride2),nn.Conv2d(256, 384, kernel_size3, padding1),nn.ReLU(),nn.Conv2d(384, 384, kernel_size3,padding1),nn.ReLU(),nn.Conv2d(384, 256, kernel_size3,padding1),nn.ReLU(),nn.MaxPool2d(kernel_size3, stride2))# 全连接层self.classifier nn.Sequential(# 全连接的第一层输入卷积输出的拉平值即6*6*256# 输出为4096nn.Linear(in_features6*6*256,out_features4096),nn.ReLU(),# AlexNet采取了DropOut进行正则防止过拟合nn.Dropout(p0.5),nn.Linear(4096,4096),nn.ReLU(),nn.Dropout(p0.5),# 最后一层输出1000个类别也是我们所说的softmax层nn.Linear(4096,num_classes))# 前向算法def forward(self,x):x self.features(x)x torch.flatten(x,1)result self.classifier(x)return result
大家可以和LetNet5对照差异也可以一窥DeepLearning技术的突破点。
在AlexNet开创一片天地后CNN网络引领的深度学习蓬勃发展造就人工智能技术革命的起点。
觉得有用 收藏 收藏 收藏
点个赞 点个赞 点个赞
End
GPT专栏文章
GPT实战系列-ChatGLM3本地部署CUDA111080Ti显卡24G实战方案
GPT实战系列-LangChain ChatGLM3构建天气查询助手
大模型查询工具助手之股票免费查询接口
GPT实战系列-简单聊聊LangChain
GPT实战系列-大模型为我所用之借用ChatGLM3构建查询助手
GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型到底做了什么(二)
GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型到底做了什么(一)
GPT实战系列-ChatGLM2模型的微调训练参数解读
GPT实战系列-如何用自己数据微调ChatGLM2模型训练
GPT实战系列-ChatGLM2部署UbuntuCuda11显存24G实战方案
GPT实战系列-Baichuan2本地化部署实战方案
GPT实战系列-Baichuan2等大模型的计算精度与量化
GPT实战系列-GPT训练的PretrainingSFTReward ModelingRLHF
GPT实战系列-探究GPT等大模型的文本生成-CSDN博客