以下是一个简单的卷积神经网络图片识别代码的示例(使用 TensorFlow 库),用于识别 MNIST 手写数字数据集中的图像:

import tensorflow as tf

# 加载数据集
mnist = tf.keras.datasets.mnist
(x_train, y_train), (x_test, y_test) = mnist.load_data()

# 数据预处理
x_train, x_test = x_train / 255.0, x_test / 255.0

# 定义模型
model = tf.keras.models.Sequential([
  tf.keras.layers.Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1)),
  tf.keras.layers.MaxPooling2D((2, 2)),
  tf.keras.layers.Conv2D(64, (3, 3), activation='relu'),
  tf.keras.layers.MaxPooling2D((2, 2)),
  tf.keras.layers.Conv2D(64, (3, 3), activation='relu'),
  tf.keras.layers.Flatten(),
  tf.keras.layers.Dense(64, activation='relu'),
  tf.keras.layers.Dense(10, activation='softmax')
])

# 编译模型
model.compile(optimizer='adam',
              loss='sparse_categorical_crossentropy',
              metrics=['accuracy'])

# 训练模型
model.fit(x_train.reshape(-1,28,28,1), y_train, epochs=5)

# 评估模型
model.evaluate(x_test.reshape(-1,28,28,1), y_test, verbose=2)

在这个示例中,我们使用了 MNIST 数据集,并构建了一个简单的卷积神经网络模型。我们首先加载数据集,然后将像素值归一化到 0-1 之间。接下来,我们定义了一个具有 3 个卷积层和 2 个全连接层的卷积神经网络模型。我们使用'sparse_categorical_crossentropy'作为损失函数,这是适用于多分类问题的常见选择。我们使用'adam'优化器进行优化,并在训练集上训练模型。最后,我们使用测试集评估模型的性能。

Python 卷积神经网络图片识别代码示例 - MNIST 手写数字识别

原文地址: https://www.cveoy.top/t/topic/ovK7 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录