使用TensorFlow Hub模型时遇AttributeError:Tensorboard属性不存在
解决AttributeError: module 'keras.api._v2.keras.callbacks' has no attribute 'Tensorboard'问题
核心问题是类名大小写错误,TensorFlow中这个回调类的正确名称是TensorBoard(最后一个字母B大写),不是你尝试的Tensorboard或tensorboard。
正确的使用步骤
- 统一使用
tf.keras的API,避免混用原生Keras:import tensorflow as tf # 初始化TensorBoard回调(注意B大写) tb_callback = tf.keras.callbacks.TensorBoard( log_dir='./training_logs', # 日志保存路径 write_graph=True, update_freq='epoch' ) # 在模型训练时传入回调 model.fit( train_dataset, epochs=15, validation_data=val_dataset, callbacks=[tb_callback] )
额外排查项
- 检查TensorFlow版本:运行
print(tf.__version__)确认是2.x系列稳定版,老旧版本可能存在API命名差异 - 清理导入冲突:不要同时导入
import keras和import tensorflow.keras,保持代码中只使用tf.keras相关模块 - 全局替换拼写:把代码中所有
Tensorboard/tensorboard替换为TensorBoard,确保没有遗漏
内容的提问来源于stack exchange,提问作者Rajan Iyer
相关产品推荐
相关产品推荐

