在tensorflow的segmentation模型中打印精确度

这篇博客介绍了如何在Keras中训练模型,并利用history函数存储和展示训练过程中的精度、召回率等多指标变化。通过matplotlib库,可以在同一图表上绘制不同指标随epoch的变化,帮助理解模型的训练效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用history函数,这里results是我之前定义的输出的模型的变量,根据自己的模型改

print(results.history.keys())

'loss', 'auc', 'recall', 'tp', 'tn', 'fp', 'fn', 'accuracy', 'precision', 'iou', 'bin_accuracy',

验证数据集的各种数据summary:

'val_loss', 'val_auc', 'val_recall', 'val_tp', 'val_tn', 'val_fp', 'val_fn', 'val_accuracy', 'val_precision', 'val_iou', 'val_bin_accuracy'

    results = model.fit(x_train, y_train, validation_data=(x_val, y_val), epochs=epochs, batch_size=batch_size,
                        callbacks=[early_stopper, checkpoint])
#模型的结果

    precisions = results.history['precision']
    print(results.history.keys())
    #之前打印的history里的储存的数据
    print('precisions.size',len(precisions))
    print('array size',np.arange(1, epochs + 1).size)
#precisions.size 3,array size 3, 我为了测试只跑了3个epoch,就都是3

最终打印结果的代码

    plt.plot(range(epochs), precisions)
    plt.show()

x轴是epoch,y轴是precision

改进:在一张图里打印多个数据,打不出来4个不知道为什么,只能2个2个打,另外两个也同样格式

    plt.figure(num = 3)
    #l1 = plt.plot(range(epochs), loss)
    #l2 = plt.plot(range(epochs), recall)

    plt.legend(labels = ['loss','recall'])
    plt.xlabel('Epochs')
    plt.show()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值