请写出Python深度学习基于tensorflow的lenet代码
时间: 2023-06-01 19:04:22 浏览: 106
以下是Python深度学习基于tensorflow的lenet代码:
```python
import tensorflow as tf
# 定义输入和输出数据的维度
input_shape = (32, 32, 1)
num_classes = 10
# 定义LeNet网络结构
model = tf.keras.Sequential([
tf.keras.layers.Conv2D(filters=6, kernel_size=(5, 5), activation='relu', input_shape=input_shape),
tf.keras.layers.MaxPooling2D(pool_size=(2, 2)),
tf.keras.layers.Conv2D(filters=16, kernel_size=(5, 5), activation='relu'),
tf.keras.layers.MaxPooling2D(pool_size=(2, 2)),
tf.keras.layers.Flatten(),
tf.keras.layers.Dense(units=120, activation='relu'),
tf.keras.layers.Dense(units=84, activation='relu'),
tf.keras.layers.Dense(units=num_classes, activation='softmax')
])
# 编译模型
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])
# 打印模型结构
model.summary()
```
以上代码定义了一个简单的LeNet网络结构,包含两个卷积层、两个池化层和三个全连接层。其中,第一个卷积层包含6个卷积核,大小为5x5,第二个卷积层包含16个卷积核,大小为5x5。每个卷积层后面都跟着一个最大池化层,大小为2x2。最后三个全连接层分别包含120个、84个和输出类别数(这里是10)个神经元。模型的损失函数采用交叉熵,优化器采用Adam算法。
阅读全文