TensorFlow 2.0 与 Python 3.11 兼容性
TensorFlow 2.0 官方版本对 Python 3.11 的支持有限,可能出现兼容性问题。建议使用 TensorFlow 2.10 或更高版本,这些版本已适配 Python 3.11。若需强制运行,可通过以下方式解决依赖冲突:
pip install --upgrade tensorflow
或指定版本:
pip install tensorflow==2.10.0
基础示例:线性回归模型
以下代码展示了一个简单的线性回归模型:
import tensorflow as tf
import numpy as np
# 生成模拟数据
X = np.linspace(0, 1, 100)
y = 2 * X + 1 + np.random.normal(scale=0.1, size=100)
# 构建模型
model = tf.keras.Sequential([
tf.keras.layers.Dense(units=1, input_shape=[1])
])
# 编译与训练
model.compile(optimizer='sgd', loss='mean_squared_error')
model.fit(X, y, epochs=100, verbose=0)
# 预测
print(model.predict([0.5])) # 预期输出接近 2.0
图像分类示例(MNIST数据集)
from tensorflow.keras import layers, datasets
# 加载数据
(train_images, train_labels), _ = datasets.mnist.load_data()
train_images = train_images / 255.0
# 构建CNN模型
model = tf.keras.Sequential([
layers.Reshape((28, 28, 1)),
layers.Conv2D(32, (3, 3), activation='relu'),
layers.MaxPooling2D((2, 2)),
layers.Flatten(),
layers.Dense(10, activation='softmax')
])
# 训练
model.compile(optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
model.fit(train_images, train_labels, epochs=5)
常见问题解决
错误1:DLL加载失败
在Windows系统中,安装Microsoft Visual C++ Redistributable最新版本。
错误2:NumPy兼容性
尝试降级NumPy版本:
pip install numpy==1.23.5
错误3:CUDA驱动问题
确认已安装匹配的CUDA Toolkit和cuDNN版本,参考TensorFlow官方文档的GPU支持列表。