You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用TensorFlow Lite绘制模型训练的损失和准确率曲线图

解决方案

报错原因

TypeError: 'History' object is not subscriptable报错是因为TensorFlow Lite Model Maker返回的训练历史对象并非Keras的字典结构,所有训练指标以属性形式挂载在History实例上,不可用下标[]访问,需用.调用对应属性读取数据。

指标获取方式

调用image_classifier.create()完成训练后,可通过模型实例的history属性读取各轮次训练指标:

  • 训练损失:model.history.train_loss
  • 验证损失:model.history.validation_loss
  • 训练准确率:model.history.train_accuracy
  • 验证准确率:model.history.validation_accuracy
    上述属性均返回列表,元素顺序对应训练的epoch轮次。

曲线绘制示例

使用matplotlib绘制损失、准确率曲线的参考代码如下:

import matplotlib.pyplot as plt

# 提取各轮次指标数据
train_loss = model.history.train_loss
val_loss = model.history.validation_loss
train_acc = model.history.train_accuracy
val_acc = model.history.validation_accuracy
epochs = range(len(train_loss))

# 绘制准确率曲线
plt.figure(figsize=(12, 4))
plt.subplot(1, 2, 1)
plt.plot(epochs, train_acc, label='训练准确率')
plt.plot(epochs, val_acc, label='验证准确率')
plt.legend(loc='lower right')
plt.title('训练与验证准确率')

# 绘制损失曲线
plt.subplot(1, 2, 2)
plt.plot(epochs, train_loss, label='训练损失')
plt.plot(epochs, val_loss, label='验证损失')
plt.legend(loc='upper right')
plt.title('训练与验证损失')
plt.show()

内容的提问来源于stack exchange,提问作者user17273739

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 03:36:03