cnn机器学习时python版本不兼容报错

在使用python执行CNN算法时,发生如下报错:

A module that was compiled using NumPy 1.x cannot be run in NumPy 2.1.1 as it may crash. 
To support both 1.x and 2.x versions of NumPy, modules must be compiled with NumPy 2.0. Some module may need to rebuild instead e.g. with 'pybind11>=2.12'. 

If you are a user of the module, the easiest solution will be to downgrade to 'numpy<2' or try to upgrade the affected module. 
We expect that some modules will need time to support NumPy 2.

这时候需要安装指定版本。

pip install numpy==1.26.4

安装完成后重新运行代码。

import tensorflow as tf
from keras import datasets, layers, models
import matplotlib.pyplot as plt

# 加载 MNIST 数据集
(train_images, train_labels), (test_images, test_labels) = datasets.mnist.load_data()
train_images, test_images = train_images / 255.0, test_images / 255.0
train_images = train_images.reshape((train_images.shape[0], 28, 28, 1))
test_images = test_images.reshape((test_images.shape[0], 28, 28, 1))

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

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

# 训练模型
history = model.fit(train_images, train_labels, epochs=10, 
                    validation_data=(test_images, test_labels))

# 评估模型
test_loss, test_acc = model.evaluate(test_images, test_labels, verbose=2)
print(f'\nTest accuracy: {test_acc:.4f}')

# 绘制训练过程中的准确率
plt.figure(figsize=(12, 4))

plt.subplot(1, 2, 1)
plt.plot(history.history['accuracy'], label='Training Accuracy')
plt.plot(history.history['val_accuracy'], label='Validation Accuracy')
plt.xlabel('Epoch')
plt.ylabel('Accuracy')
plt.legend()
plt.title('Accuracy Over Time')
plt.show()

成功运行得出结果。

相关推荐
z are31 分钟前
Python 的数据类型与操作
python
T0uken32 分钟前
【LLM】Ollama:本地大模型 WebAPI 调用
开发语言·python
英雄史诗1 小时前
支持向量机
算法·机器学习·支持向量机
WenGyyyL1 小时前
机器学习和深度学习的区别
人工智能·深度学习·机器学习
tekin1 小时前
macos tcl-tk python图形库软件包安装 port 和brew 包管理工具安装方法和使用总结
python·macos·tcl·tk·tcl-tk·python-tk
goodmao1 小时前
【macOS】【zsh报错】zsh: command not found: python
开发语言·python·macos
立黄昏粥可温1 小时前
Python 从入门到实战24(类的继承)
开发语言·python
丕羽1 小时前
【Python数据分析】pandas apply自定义函数+分组操作+分析案例
python·数据分析·pandas