keras构建卷积神经网络
时间: 2023-09-18 20:05:43 浏览: 87
在Keras中,可以使用Sequential模型来构建卷积神经网络。下面以一个简单的例子来说明:
```python
from keras.models import Sequential
from keras.layers import Conv2D, MaxPooling2D, Flatten, Dense
# 定义模型
model = Sequential()
# 添加卷积层和池化层
model.add(Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1)))
model.add(MaxPooling2D((2, 2)))
# 添加Flatten层和全连接层
model.add(Flatten())
model.add(Dense(10, activation='softmax'))
# 编译模型
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])
# 训练模型
model.fit(x_train, y_train, epochs=10, validation_data=(x_test, y_test))
```
在上面的例子中,首先创建了一个Sequential模型。然后通过add()方法依次添加了一个卷积层和一个池化层。卷积层使用了32个3x3的卷积核,激活函数使用了ReLU。池化层使用了2x2的池化窗口。
接着添加了一个Flatten层,将卷积层输出的二维特征图展开成一维向量。然后添加了一个全连接层,输出10个类别的概率。
最后使用compile()方法编译模型,指定了优化器、损失函数和评价指标。然后使用fit()方法训练模型,指定了训练数据、标签、迭代次数和验证数据。
阅读全文