给出Lenet-5 网络的python代码
时间: 2024-03-12 16:50:03 浏览: 83
以下是LeNet-5网络的Python代码示例:
```python
import tensorflow as tf
def lenet5(x):
# 第一层卷积层
conv1 = tf.layers.conv2d(x, filters=6, kernel_size=[5, 5], strides=[1, 1], padding='valid', activation=tf.nn.relu)
pool1 = tf.layers.max_pooling2d(conv1, pool_size=[2, 2], strides=[2, 2], padding='same')
# 第二层卷积层
conv2 = tf.layers.conv2d(pool1, filters=16, kernel_size=[5, 5], strides=[1, 1], padding='valid', activation=tf.nn.relu)
pool2 = tf.layers.max_pooling2d(conv2, pool_size=[2, 2], strides=[2, 2], padding='same')
# 全连接层
fc1 = tf.layers.flatten(pool2)
fc1 = tf.layers.dense(fc1, units=120, activation=tf.nn.relu)
fc2 = tf.layers.dense(fc1, units=84, activation=tf.nn.relu)
# 输出层
logits = tf.layers.dense(fc2, units=10)
return logits
```
其中,`x`为输入的图像数据,LeNet-5网络包含两个卷积层、两个池化层和三个全连接层。在每个卷积层和全连接层后面都会使用ReLU激活函数。输出层为10个神经元,使用softmax激活函数将输出转化为类别概率。
阅读全文