LeNet:Gradient-Based Learning Applied to Document Recognition
1.论文:Gradient-Based Learning Applied to Document Recognition
2.网络结构:
LeNet包括7个layers(不包括Input),Fig 1中的C、S和F分别指卷积层、下采样层(池化层)和全连接层,其后所跟随的数字1-6指所在层的索引位置。例如,S2意为在网络结构中索引为2的位置的下采样层。
3.代码实现,pytorch
import torch import torch.nn as nn class LeNet(nn.Module): def __init__(self, num_class=10): super(LeModel, self).__init__() self.conv1 = nn.Conv2d(1, 6, 5) # 1x28x28 -> 6x24x24 self.pool1 = nn.AvgPool2d(2) # 6x24x24 -> 6x12x12 self.conv2 = nn.Conv2d(6, 16, 5) # 6x12x12 -> 16x8x8 self.pool2 = nn.AvgPool2d(2) # 16x8x8 -> 16x4x4 self.conv3 = nn.Conv2d(16, 120, 4) # LeNet的input是32x32,MNIST为28x28,对此修改卷积核尺寸为4x4 self.FC1 = nn.Linear(120*1*1, 84) self.Classifier = nn.Linear(84, num_class) def forward(self, x): x = torch.tanh(self.conv1(x)) x = self.pool1(x) x = torch.tanh(self.conv2(x)) x = self.pool2(x) x = torch.tanh(self.conv3(x)) x = x.view(-1, 120*1*1) x = self.FC1(x) x = torch.tanh(x) x = self.Classifier(x) return x
4.https://blog.csdn.net/weixin_48249563/article/details/109411554
这个链接中有用lenet实现手写数字识别的代码
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET10 - 预览版1新功能体验(一)