赞
踩
好的,以下是一个简单的卷积神经网络(Convolutional Neural Network,CNN)的例子,用于图像分类任务。
python复制代码
import numpy as np | |
import tensorflow as tf | |
from tensorflow.keras import layers, models | |
# 加载数据集 | |
(train_images, train_labels), (test_images, test_labels) = tf.keras.datasets.mnist.load_data() | |
# 对数据进行归一化处理 | |
train_images = train_images / 255.0 | |
test_images = test_images / 255.0 | |
# 构建卷积神经网络模型 | |
model = models.Sequential() | |
model.add(layers.Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1))) | |
model.add(layers.MaxPooling2D((2, 2))) | |
model.add(layers.Conv2D(64, (3, 3), activation='relu')) | |
model.add(layers.MaxPooling2D((2, 2))) | |
model.add(layers.Conv2D(64, (3, 3), activation='relu')) | |
model.add(layers.Flatten()) | |
model.add(layers.Dense(64, activation='relu')) | |
model.add(layers.Dense(10)) | |
# 编译模型,设置损失函数、优化器和评估指标 | |
model.compile(optimizer='adam', | |
loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True), | |
metrics=['accuracy']) | |
# 训练模型 | |
model.fit(train_images, train_labels, epochs=5) | |
# 评估模型在测试集上的表现 | |
test_loss, test_acc = model.evaluate(test_images, test_labels, verbose=2) | |
print('\nTest accuracy:', test_acc) |
这个例子使用了MNIST数据集,一个手写数字识别数据集。首先,我们加载数据集并对图像数据进行归一化处理。然后,我们构建了一个包含三个卷积层、两个池化层和两个全连接层的卷积神经网络模型。最后,我们编译模型、训练模型并在测试集上评估模型的性能。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。