keras计算precision、recall、F1值

article/2025/11/7 5:13:24

近期写课程作业,需要用Keras搭建网络层,跑实验时需要计算precision,recall和F1值,在前几年,Keras没有更新时,我用的代码是直接取训练期间的预测标签,然后和真实标签之间计算求解,代码是

from keras.callbacks import Callback
from sklearn.metrics import confusion_matrix, f1_score, precision_score, recall_scoreclass Metrics(Callback):def on_train_begin(self, logs={}):self.val_f1s = []self.val_recalls = []self.val_precisions = []def on_epoch_end(self, epoch, logs={}):val_predict = (np.asarray(self.model.predict(self.validation_data[0]))).round()##.modelval_targ = self.validation_data[1]###.model_val_f1 = f1_score(val_targ, val_predict,average='micro')_val_recall = recall_score(val_targ, val_predict,average=None)###_val_precision = precision_score(val_targ, val_predict,average=None)###self.val_f1s.append(_val_f1)self.val_recalls.append(_val_recall)self.val_precisions.append(_val_precision)#print("— val_f1: %f — val_precision: %f — val_recall: %f" %(_val_f1, _val_precision, _val_recall))print("— val_f1: %f "%_val_f1)returnf1=Metrics()
hist=cnn_net.fit(x_train,y_train,batch_size=batch_size,epochs=35,verbose=1,validation_data=(x_train,y_train),callbacks=[f1])

需要使用时,将Metrics文件导入,调用函数,放置到model.fit( callbacks=[ f1 ] )中就可以计算了。


现在TensorFlow更新到2.2.0以上,Keras版本为2.4.3以上,上面那个函数就不太管用了,后来查资料找到了一个包,keras-metrics.

安装后,导入包 keras_metrics,将设置好的参数放置model.compile( metrics=[ km.f1score() ] )

import keras
import keras_metrics as kmmodel = models.Sequential()
model.add(keras.layers.Dense(1, activation="sigmoid", input_dim=2))
model.add(keras.layers.Dense(1, activation="softmax"))model.compile(optimizer="sgd",loss="binary_crossentropy",metrics=[km.f1_score(), km.binary_precision(), km.binary_recall()])

 

添加上之后,就可以计算评价值了。


http://chatgpt.dhexx.cn/article/WCFX7mQZ.shtml

相关文章

F1值(F-Measure)、准确率(Precision)、召回率(Recall) 菜鸡版理解

前置知识: T(True): 正确的 F (False) : 错误的 P (Positive) : 正向的/积极的 N (Negetive): 负向的/消极的 则: TP:正确的 预测了 正向的 FN:错误的 预测了 负向的 FP&#xff1a…

准确率、精确率、召回率、F1值学习笔记

一、TN、TP、TN、FP、FN概念 TP与TN都是分对了情况,TP是正类,TN是负类。则推断出,FP是错误的正类,FN是错误的负类。 举例:我们需要从一个班级中的人中寻找所有女生,如果把这个任务当成一个分类器的话,那么女生就是我们…

为何选用F1值(调和平均数)衡量P与R?

二分类问题的性能度量为何选用 F 1 F_1 F1​ 值? 已知混淆矩阵 prediction positiveprediction negativeactuality positiveTrue Positive(TP)False Negative(FN)actuality negativeFalse Positive(FP)True Negative(TN) 其中:Precise(精…

精确度/召回率/F1值/Micro-F1和Macro-F1的理解

如下图所示,假设有若干张图片,其中12张是狗的图片其余是猫的图片.现在利用程序去识别狗的图片,结果在识别出的8张图片中有5张是狗的图片,3张是猫的图片(属于误报). 图中,…

混淆矩阵、精确率、召回率、F1值、ROC曲线、AUC曲线

假设一个分类器A,分类器A的作用是告诉你一张图片是不是汉堡,我们如果想知道这个分类器的效果到底好不好,如何做? 最简单的方法就是将手机里所有的图片都扔给分类器A看,让分类器告诉我们哪些是汉堡 我们无法直观的看到…

python实现计算精度、召回率和F1值

python实现计算精度、召回率和F1值 摘要:在深度学习的分类任务中,对模型的评估或测试时需要计算其在验证集或测试集上的预测精度(prediction/accuracy)、召回率(recall)和F1值。本文首先简要介绍如何计算精…

模型评价指标—F1值

最近空余时间在参加数字中国创新大赛,比赛规则是根据模型的F1值对参赛者进行排名。为了更深刻地理解这个指标,我最近对它做了一些梳理,现在把它分享给更多有需要的人图片。最近在参赛时也发现了一个问题,就是算法在训练集上完全拟…

精确率、召回率、F1 值、ROC、AUC等分类模型评价指标含义与作用详解

文章目录 摘要一、精确率、召回率、F函数、准确率和错误率1、定义2、区别与应用 二、ROC曲线、P-R曲线、AUC1、P-R曲线2、ROC曲线3、AUC 摘要 在涉及机器学习领域的分类问题时(尤其是衡量推荐系统性能时),经常会遇到诸如准确率、召回率、ROC…

机器学习F1值的概念

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、什么是F1-score二、计算过程1.首先定义以下几个概念:2.通过第一步的统计值计算每个类别下的precision和recall3. 通过第二步计算结果计算每个类别下…

【数学建模】分类问题的几种常见指标(一)——准确率、召回率、F1值

分类问题的几种常见指标(一)——错误率、精度、准确率、召回率、F1值 前言1 错误率与精度2 准确率与召回率2.1 混淆矩阵2.2 准确率(Precision)2.3 召回率(Recall) 3 F1值(F1-score)4…

准确率、精确率、召回率、F1值、ROC/AUC整理笔记

文章目录 前言 一、TP、TN、FP、FN概念二、准确率、精确率(精准率)、召回率、F1值1.准确率(Accuracy)2.精确率(Precision)查准率3.召回率(Recall)查全率4.F1值(H-mean值&…

准确率、精准率、召回率和F1值详解

专业术语的中英文对照表 英文名准确率Accuracy精准率Precise召回率RecallF1值F1 measure Precise和Recall是广泛应用在信息检索和统计学分类领域的两个度量值,用来评价结果的质量;F1 measure是综合Precise和Recall两个指标的评估指标,用于综…

matlab color选取(颜色对照表)

只看前面部分,后面的颜色不用看 参考链接:https://wenku.baidu.com/view/111e6c47773231126edb6f1aff00bed5b8f3734e.html

Matlab RGB 颜色对照表(0-1之间取值)

需要说明的是我并非此表的制作者,原链接如上,我也已将原作者信息一并截入图中,此举只是为了扩大此表传播度,所以连标题都没改。此前想找个如此全的对照表找了好久,是同门师妹发给我该链接才知道这张表,感谢…

matlab画图RGB调色

1.使用matlab画图时,怎样才能调出顺眼的颜色呢?反正我之前使用红、绿、蓝三种颜色画图时,真的辣眼睛。下面这图是我根据一篇论文上的图像调的颜色: 我也知道这并不好看,但是可以给各位提个醒、提个方向。 代码也奉上&…

让颜色对应数值,matlab colormap

#问 如何让自己画出的数值对应不同的颜色呢?换话句话说,如何用不同的颜色表示不同的数值呢? 就是让数值的范围对应颜色的范围。 matlab colormap ##标准色 hsv 色彩饱和值(以红色开始束) hot 从黑到红到黄到白 cool …

【Matlab】到底怎么自定义colorbar/colormap的颜色?

1.Introduction 最近在搜混淆矩阵的时候,发现别人做的图研究就是好看。于是乎开始探寻怎么改变图片colorbar的颜色,搜到后面发现其实是改变colormap的颜色,colorbar只是显示而已。 中间也走过不少坑,一把辛酸泪呀~ 2.Materials …

MATLAB | 有关数值矩阵、颜色图及颜色列表的技巧整理

这是一篇有关数值矩阵、颜色矩阵、颜色列表的技巧整合,会以随笔的形式想到哪写到哪,可能思绪会比较飘逸请大家见谅,本文大体分为以下几个部分: 数值矩阵用颜色显示从颜色矩阵提取颜色从颜色矩阵中提取数据颜色列表相关函数颜色测…

MATLAB颜色的使用(转)

http://blog.csdn.net/t673afa/archive/2009/09/29/4617106.aspx 如何使用、显示、修改和如何创建用户自己的颜色映象。然后,阐述在一个 图形窗口 中仿真多个颜色映象的技术或只使用颜色映象的一部分的技术。最后,讨论照明模型并提供例子。 颜色映象理解…