在keras里面实现计算f1-score的代码


Posted in Python onJune 15, 2020

我就废话不多说了,大家还是直接看代码吧!

### 以下链接里面的code
import numpy as np
from keras.callbacks import Callback
from sklearn.metrics import confusion_matrix, f1_score, precision_score, recall_score
class 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.model.validation_data[0]))).round()
 val_targ = self.model.validation_data[1]
 _val_f1 = f1_score(val_targ, val_predict)
 _val_recall = recall_score(val_targ, val_predict)
 _val_precision = precision_score(val_targ, val_predict)
 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)
 return

metrics = Metrics()
model.fit(
 train_instances.x,
 train_instances.y,
 batch_size,
 epochs,
 verbose=2,
 callbacks=[metrics],
 validation_data=(valid_instances.x, valid_instances.y),
)

补充知识:Keras可使用的评价函数

1:binary_accuracy(对二分类问题,计算在所有预测值上的平均正确率)

binary_accuracy(y_true, y_pred)

2:categorical_accuracy(对多分类问题,计算在所有预测值上的平均正确率)

categorical_accuracy(y_true, y_pred)

3:sparse_categorical_accuracy(与categorical_accuracy相同,在对稀疏的目标值预测时有用 )

sparse_categorical_accuracy(y_true, y_pred)

4:top_k_categorical_accuracy(计算top-k正确率,当预测值的前k个值中存在目标类别即认为预测正确 )

top_k_categorical_accuracy(y_true, y_pred, k=5)

5:sparse_top_k_categorical_accuracy(与top_k_categorical_accracy作用相同,但适用于稀疏情况)

sparse_top_k_categorical_accuracy(y_true, y_pred, k=5)

以上这篇在keras里面实现计算f1-score的代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python  pip安装lxml出错的问题解决办法
Feb 10 Python
详解django中自定义标签和过滤器
Jul 03 Python
利用Python循环(包括while&for)各种打印九九乘法表的实例
Nov 06 Python
PyQt4实现下拉菜单可供选择并打印出来
Apr 20 Python
python中pika模块问题的深入探究
Oct 13 Python
numpy:np.newaxis 实现将行向量转换成列向量
Nov 30 Python
pycharm新建Vue项目的方法步骤(图文)
Mar 04 Python
详解python中的lambda与sorted函数
Sep 04 Python
如何基于pandas读取csv后合并两个股票
Sep 25 Python
Python爬虫后获取重定向url的两种方法
Jan 19 Python
Python函数中apply、map、applymap的区别
Nov 27 Python
python flappy bird小游戏分步实现流程
Feb 15 Python
Python流程控制语句的深入讲解
Jun 15 #Python
keras自定义损失函数并且模型加载的写法介绍
Jun 15 #Python
python语言是免费还是收费的?
Jun 15 #Python
DataFrame.groupby()所见的各种用法详解
Jun 14 #Python
详解pandas.DataFrame.plot() 画图函数
Jun 14 #Python
Pandas把dataframe或series转换成list的方法
Jun 14 #Python
详解pandas获取Dataframe元素值的几种方法
Jun 14 #Python
You might like
PHP中file_get_contents函数抓取https地址出错的解决方法(两种方法)
2015/09/22 PHP
php数组实现根据某个键值将相同键值合并生成新二维数组的方法
2017/04/26 PHP
javascript动画之圆形运动,环绕鼠标运动作小球
2010/07/20 Javascript
jquery 回车事件实现代码
2011/08/23 Javascript
JS 数字转换研究总结
2013/12/26 Javascript
javascript图片预加载实例分析
2015/07/16 Javascript
JS获取数组最大值、最小值及长度的方法
2015/11/24 Javascript
详解原生JavaScript实现jQuery中AJAX处理的方法
2016/05/10 Javascript
JavaScript基于原型链的继承
2016/06/22 Javascript
浅谈Angularjs link和compile的使用区别
2016/10/21 Javascript
一个非常好用的文字滚动的案例,鼠标悬浮可暂停[两种方案任选]
2016/12/01 Javascript
详解Vue.js——60分钟组件快速入门(上篇)
2016/12/05 Javascript
vue2 中如何实现动态表单增删改查实例
2017/06/09 Javascript
微信小程序自定义组件之可清除的input组件
2018/07/17 Javascript
JS中数组与对象的遍历方法实例小结
2018/08/14 Javascript
layui实现数据表格自定义数据项
2019/10/26 Javascript
[52:05]EG vs OG 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
给Python入门者的一些编程建议
2015/06/15 Python
Python实现矩阵转置的方法分析
2017/11/24 Python
Django中的Signal代码详解
2018/02/05 Python
TensorFlow打印输出tensor的值
2020/04/19 Python
Python使用内置函数setattr设置对象的属性值
2020/10/16 Python
基于Python制作一副扑克牌过程详解
2020/10/19 Python
精选鞋类、服装和配饰的全球领先目的地:Bodega
2021/02/27 全球购物
Oracle中delete,truncate和drop的区别
2016/05/05 面试题
机电一体化大学生求职信
2013/11/08 职场文书
军校本科大学生自我评价
2014/01/14 职场文书
科级干部考察材料
2014/02/15 职场文书
教师个人读书活动总结
2014/07/08 职场文书
材料化学专业求职信
2014/07/15 职场文书
纪检干部现实表现材料
2014/08/21 职场文书
医德考评自我评价
2014/09/14 职场文书
新学期红领巾广播稿
2014/10/04 职场文书
员工辞职信范文
2015/03/02 职场文书
员工考勤管理制度
2015/08/06 职场文书
计算机教师工作总结
2015/08/13 职场文书