写在前面: 我是「虐猫人薛定谔i」,一个不满足于现状,有梦想,有追求的00后
\quad
本博客主要记录和分享自己毕生所学的知识,欢迎关注,第一时间获取更新。
\quad
不忘初心,方得始终。
\quad❤❤❤❤❤❤❤❤❤❤
LeNet简介
LeNet是最早的卷积神经网络之一,其网络结构如下图所示

从图中我们可以看到,该网络包含3个卷积层,2个池化层和2个全连接层,LeNet通过连续使用卷积层和全连接层来提取图像的特征,进而达到识别图像的目的。
代码
LeNet网络的实现代码如下
class LeNet(fluid.dygraph.Layer):
def __init__(self, name_scope, num_classes=1):
super(LeNet, self).__init__(name_scope)
self.conv1 = Conv2D(num_channels=1,
num_filters=6,
filter_size=5,
act='sigmoid')
self.pool1 = Pool2D(pool_size=2, pool_stride=2, pool_type='max')
self.conv2 = Conv2D(num_channels=6,
num_filters=16,
filter_size=5,
act='sigmoid')
self.pool2 = Pool2D(pool_size=2, pool_stride=2, pool_type='max')
self.conv3 = Conv2D(num_channels=16,
num_filters=120,
filter_size=4,
act='sigmoid')
self.fc1 = Linear(input_dim=120, output_dim=64, act='sigmoid')
self.fc2 = Linear(input_dim=64, output_dim=num_classes)
def forward(self, x):
x = self.conv1(x)
x = self.pool1(x)
x = self.conv2(x)
x = self.pool2(x)
x = self.conv3(x)
x = fluid.layers.reshape(x, [x.shape[0], -1]

本文介绍了LeNet,最早的卷积神经网络之一,用于手写数字识别。网络结构包括3个卷积层、2个池化层和2个全连接层,实现了92.8%的识别准确率。提供了实现代码并总结了实验结果。
最低0.47元/天 解锁文章
915

被折叠的 条评论
为什么被折叠?



