重新安装tensorflow-gpu后,跑程序的进度条变成了这个样子
原来用的cpu,跑起来正常,用的是唐宇迪keras课程里的CNN代码,如图1.
我觉得CPU太慢了,重安了GPU版本后就变成了这个样子,每个EPOCH只有一个进度条而且后面的数字也不对,但是跑出来的结果好像没有不同……如图2。
这个进度条看起来比较奇怪,可能是由于 TensorFlow 的默认日志格式发生了改变。你可以尝试使用 tf.keras.callbacks.ProgbarLogger()
回调函数打印标准的进度条信息。
例如:
import tensorflow as tf
from tensorflow.keras.callbacks import ProgbarLogger
# 定义并编译模型
model = tf.keras.models.Sequential([
# ...
])
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])
# 使用 ProgbarLogger 回调函数打印进度条
logger = ProgbarLogger()
history = model.fit(x_train, y_train, batch_size=32, epochs=10, validation_split=0.2, callbacks=[logger])
# 打印训练历史记录
print(history.history)
在这个示例代码中,我们创建了一个 ProgbarLogger
对象,并将其作为回调函数传递给 model.fit()
方法。在训练过程中,TensorFlow 将使用标准进度条格式显示训练进度和性能指标。训练完成后,我们可以打印训练历史记录以获取更多信息。
另外,你提到你的程序运行结果好像没有不同,这是因为进度条只是一个可视化工具,与实际模型训练过程无关。即使进度条出现异常或者不能正常工作,模型训练仍然可以继续进行,只是你无法直观地了解训练进度。