
Python
Python# 导入所需的库import kerasfrom keras.models import Sequentialfrom keras.layers import Conv2D, MaxPooling2D, Flatten, Dense# 加载MNIST数据集(x_trAIn, y_trAIn), (x_test, y_test) = keras.datasets.mnist.load_data()# 数据预处理x_trAIn = x_trAIn.reshape(-1, 28, 28, 1)x_test = x_test.reshape(-1, 28, 28, 1)y_trAIn = keras.utils.to_categorical(y_trAIn, 10)y_test = keras.utils.to_categorical(y_test, 10)# 构建CNN模型model = Sequential()model.add(Conv2D(32, kernel_size=(3, 3), activation='relu', input_shape=(28, 28, 1)))model.add(MaxPooling2D(pool_size=(2, 2)))model.add(Conv2D(64, kernel_size=(3, 3), activation='relu'))model.add(MaxPooling2D(pool_size=(2, 2)))model.add(Flatten())model.add(Dense(128, activation='relu'))model.add(Dense(10, activation='softmax'))# 编译和训练模型model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])model.fit(x_trAIn, y_trAIn, batch_size=128, epochs=10, validation_data=(x_test, y_test))# 评估模型性能score = model.evaluate(x_test, y_test, verbose=0)print('Test loss:', score[0])print('Test accuracy:', score[1])通过运行上述代码,我们可以训练一个CNN模型来识别手写数字。模型的训练过程会显示出训练和验证的准确性,最后会输出在测试集上的准确性。该模型可以达到较高的准确率,证明了深度学习在图像分类中的应用潜力。深度学习在图像分类中的应用是非常广泛的。通过构建深层神经网络模型,我们可以自动学习图像中的特征,并进行准确的分类。手写数字识别是一个经典的图像分类案例,通过使用CNN模型,我们可以实现高准确率的手写数字识别。这些应用展示了深度学习在图像分类领域的巨大潜力。Copyright © 2025 IZhiDa.com All Rights Reserved.
知答 版权所有 粤ICP备2023042255号