Tensorflow 中每个类别的 F1 分数指标

2024-02-29

我已经实现了以下指标来查看我认为相关的类的精确度和召回率。

metrics=[tf.keras.metrics.Recall(class_id=1, name='Bkwd_R'),tf.keras.metrics.Recall(class_id=2, name='Fwd_R'),tf.keras.metrics.Precision(class_id=1, name='Bkwd_P'),tf.keras.metrics.Precision(class_id=2, name='Fwd_P')]

如何在 Tensorflow 2.5 中实现相同的 F1 分数(即专门针对 1 类和 2 类,而不是 0 类,没有自定义函数。


Update

使用此指标设置:

tfa.metrics.F1Score(num_classes = 3, average = None, name = f1_name)

我在训练期间得到以下信息:

13367/13367 [==============================] 465s 34ms/step - loss: 0.1683 - f1_score: 0.5842 - val_loss: 0.0943 - val_f1_score: 0.3314

当我做 model.evaluate 时:

224/224 [==============================] - 11s 34ms/step - loss: 0.0665 - f1_score: 0.3325

和得分 =

Score: [0.06653735041618347, array([0.99740255, 0.        , 0.        ], dtype=float32)]

问题是这是基于平均值的训练,但我想根据合理平均值/数组中最后两个值/类的 F1 分数进行训练(在本例中为 0)


Edit

将接受一个非张量流特定函数,该函数给出所需的结果(具有完整的函数并在拟合代码期间调用),但真正希望使用现有的张量流代码(如果存在)


你可以看看https://www.tensorflow.org/addons/api_docs/python/tfa/metrics/F1Score https://www.tensorflow.org/addons/api_docs/python/tfa/metrics/F1Score在tensorflow-addons包中。 具体来说,如果您需要每个班级的分数,则需要设置average参数到None, or macro.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Tensorflow 中每个类别的 F1 分数指标 的相关文章

  • 如何让Python的socket服务器永远运行

    我有这段代码创建了一个简单的Python套接字服务器 但是每次客户端断开连接时它都会关闭 如何让它永远运行 import socket HOST PORT 8000 s socket socket socket AF INET socket
  • 顶级棉花糖模式验证

    From 棉花糖 validation http marshmallow readthedocs org en latest quickstart html validation 我知道我可以在架构中的特定字段上注册验证器 如果验证器失败
  • Python pandas:删除字符串中分隔符之后的所有内容

    我有数据框 其中包含例如 vendor a ProductA vendor b ProductA vendor a Productb 我需要删除所有内容 包括 两个 以便我最终得到 vendor a vendor b vendor a 我尝
  • 修复类以在 Flask 会话中启用对象存储[重复]

    这个问题在这里已经有答案了 我有一个自定义类 Passport 其中包含活动用户身份和权限 我曾经将它存储在会话中 如下所示 p Passport p do something fancy session passport p 它就奏效了
  • [python]没有属性“TessBaseAPI”

    当我编译代码时出现错误 import tessercat api tesseract TessBaseAPI 错误是 AttributeError 模块 对象没有属性 TessBaseAPI 我已经安装了tesseract via pip
  • S3 选择检索 CSV 中的标头

    我尝试使用以下代码从存储在 S 存储桶中的 CSV 中获取记录子集 s3 boto3 client s3 bucket bucket file name file sql stmt SELECT S FROM s3object S LIMI
  • 为什么我不能“string”.print()?

    我的理解print 在 Python 和 Ruby 以及其他语言 中 它是字符串 或其他类型 上的方法 因为它的语法非常常用 打印 嗨 works 那么为什么不呢 hi print 在 Python 中或 hi print在红宝石工作 当你
  • 使用 OpenCV 进行相机校准 - 如何调整棋盘方块大小?

    我正在使用 OpenCV Python 示例开发相机校准程序 来自 OpenCV 教程 http opencv python tutroals readthedocs io en latest py tutorials py calib3d
  • 比较两个文本文件并计算差异

    我一直在尝试在Python中比较两个文本文件 本质上我想打开它们并一次比较一个字符 如果字符不同 则向计数器添加1 然后显示该值 这是我到目前为止所拥有的 usr bin env python diff 0 import random im
  • 如何在返回的 AJAX 调用上使用 django 模板标签?

    我有一个简单的 AJAX 脚本 它在名为的搜索字段中获取输入的字符串AJAXBox并调用一个视图函数 该函数使用过滤器查询数据库并返回与输入参数匹配的所有 User 对象的查询集 当我使用 django 模板标签迭代查询集时 它不起作用 我
  • Python代码执行时自动打开浏览器

    我正在 Python Flask 中实现 GUI Flask 的设计方式是 必须 手动 打开本地主机以及端口号 有没有一种方法可以使其自动化 以便在运行代码时自动打开浏览器 本地主机 我尝试使用 webbrowser 包 但它在会话终止后打
  • 如何将 pip 指向 Mercurial 分支?

    我正在尝试通过 pip 将我的应用程序安装到 virtualenv 进行测试 安装时效果很好default or tip像这样 pip install e hg https email protected cdn cgi l email p
  • 如何将字符串方法应用于数据帧的多列

    我有一个包含多个字符串列的数据框 我想使用对数据帧的多列上的系列有效的字符串方法 我希望这样的事情 df pd DataFrame A 123f 456f B 789f 901f df Out 15 A B 0 123f 789f 1 45
  • PyPI 上的轮子平台约束有什么限制吗?

    是否有任何地方 PEP 或其他地方 声明关于 Linux 轮子上传范围的限制 PyPI http pypi io 应该有 具体来说 上传是否被认为是可接受的做法linux x86 64轮子到 PyPI 而不是manylinux1 x86 6
  • 使用 .map() 在 pandas DataFrame 中高效创建附加列

    我正在分析形状与以下示例类似的数据集 我有两种不同类型的数据 abc数据和xyz data abc1 abc2 abc3 xyz1 xyz2 xyz3 0 1 2 2 2 1 2 1 2 1 1 2 1 1 2 2 2 1 2 2 2 3
  • 如何让 Python 找到 ffprobe?

    I have ffmpeg and ffprobe安装在我的 mac macOS Sierra 上 并且我已将它们的路径添加到 PATH 中 我可以从终端运行它们 我正在尝试使用ffprobe使用以下代码获取视频文件的宽度和高度 impor
  • 与 GNU Make 等 Python 相关的并行任务并发

    我正在寻找一种方法或者可能是一种哲学方法来如何在 python 中执行类似 GNU Make 的操作 目前 我们使用 makefile 来执行处理 因为 makefile 非常擅长通过更改单个选项 j x 进行并行运行 此外 gnu mak
  • 在Python中将罗马数字转换为整数

    根据 user2486 所说 这是我当前的代码 def romanMap map M 1000 CM 900 D 500 CD 400 C 100 XC 90 L 50 XL 40 X 10 IX 9 V 5 V 4 I 1 return
  • 需要一个从 yaml 文件中提取内容并输出为 csv 文件的脚本

    我对 python 很陌生 但我很感激您帮助指导我创建一个简单的脚本 该脚本读取一堆 yaml 文件 同一目录中的大约 300 个文件 并从 yaml 文件并将其转换为 csv yaml 文件中内容的示例 code 9313 degrees
  • 将自定义属性添加到 Tk 小部件

    我的主要目标是向小部件添加隐藏标签或字符串之类的内容 以在其上保存简短信息 我想到创建一个新的自定义 Button 类 在本例中我需要按钮 它继承所有旧选项 这是代码 form tkinter import class NButton Bu

随机推荐

  • 在本地工作的 R 脚本不适用于shinyapp.io

    我正在尝试组装一个 R Shiny 应用程序 至少在最初 它可以绘制日期数据的直方图 我让它在 RStudio 的本地系统上工作得很好 但在闪亮的应用程序 io 中它不起作用 目前 该应用程序非常简单 用户界面实际上没有做任何事情 数据只是
  • Jupyter 上 Sparkcollect() 的 IllegalArgumentException

    我设置了 Jupyter 4 3 0 Python 3 6 3 Anaconda 和 PySpark 2 2 1 以下示例在通过 Jupyter 运行时将失败 sc SparkContext getOrCreate rdd sc paral
  • 如何获取两个列表之间的所有唯一分配

    我有两个列表 每个列表都可以包含重复的值 但任何值只能出现在这两个列表之一 或没有 中 A 0 1 B 2 3 我想获得这两个列表之间的所有唯一映射 assignment A B 0 2 1 3 0 3 1 2 我知道这可以例如使用 ite
  • 如何解决 MSCV 中 Boost 文件系统库的 LNK1104 错误?

    我无法将我的项目链接到 Microsoft Visual C 2008 Express Edition 中的 Boost 版本 1 37 0 文件系统 lib 文件 文件系统库是not仅标头库 我一直在关注Windows 入门 http w
  • 如何处理pygame中不同组件的时间

    我正在制作一个 pygame 游戏 人们可以从商店购买炸弹 玩家还可以投下购买的炸弹数量 我需要一种方法让每个炸弹在投下 3 秒后消失 在下面的代码中 我只能投下炸弹 但是我尝试了各种方法但失败了 import pygame import
  • 使用 .NET Core 的 Linux/Unix 上的文件权限

    我正在尝试学习如何使用 NET Core 在 Linux Unix 上设置文件权限 我已经在这里发现了一个问题 它指出了 System IO FileSystem 的方向 但我似乎找不到任何有关如何使用它的文档 简而言之 我想从仅在 Lin
  • 在 React Native 应用程序中发送应用程序邀请

    在 facebook iOS SDK 中 有一个名为 App Invites 的模块 允许将您的应用程序的邀请发送给您的朋友 https developers facebook com docs ios https developers f
  • sstream 重新声明并出现公共访问编译器错误

    我在使用 gcc5 4 0 在大型项目上运行 make 时遇到了此错误 usr include c 5 sstream 300 14 error xfer bufptrs redeclared with public access stru
  • gensim 的 get_document_topics 方法返回的概率加起来不等于 1

    有时它返回所有主题的概率并且一切都很好 但有时它只返回几个主题的概率并且它们加起来不等于一 似乎这取决于文档 一般来说 当它返回很少的主题时 概率加起来大约为 80 那么它只返回最相关的主题吗 有没有办法强制它返回所有概率 也许我遗漏了一些
  • \t 只被视为 1 个字符吗?

    我试图用 do while 和子字符串来做一些基本逻辑 如下所示 bool foundFirstTaskname false int startCounter 0 do var checkEveryTwo name Substring st
  • 这是内置的绘图吗?

    In 这个链接的图像 http snpent com images button gif 我在很多应用程序中经常看到右侧的按钮 在我的 Moto Droid 上 它在设置应用程序中广泛使用 它还用作默认的 AlertDialog 图标 我可
  • 如何告诉 Clang 不要冒充其他编译器?

    我过去遇到过这个问题 LLVM 定义 GNUC https www google com search q 22 GNUC 22 LLVM bug 但它不能使用 GCC 可以使用的程序 我在 Windows 上再次遇到它 LLVM 定义 M
  • 如何禁用 Eclipse 中的格式化符号?

    由于所有格式符号 我实际上什么也看不到 我不知道那是什么热键 但我找不到任何解决方案如何禁用这些符号 你知道是否有热键吗 我不记得那个热键是什么了 You can also disable them by using this button
  • 如何将 pt 转换为 em?

    如何将 pt 转换为 em 因为我使用 Photoshop 来设计模板 软件的文本大小采用 pt 格式 然后我必须将设计细节传输给开发人员 他们总是需要 em 格式的所有文本大小 我参考了这个网站http pxtoem com http p
  • 在 XNA 中缩放整个屏幕

    我正在尝试使用 XNA 制作一个冒险游戏引擎 让您制作看起来像是 90 年代初期的游戏 例如触手之日 and 山姆和麦克斯上路 因此 我希望游戏实际以 320x240 运行 我知道 它可能应该是 320x200 但是嘘 但它应该根据用户设置
  • Cakephp 错误重定向

    所以这些我们都知道Error missing controller或任何其他错误CakePHP可以扔 现在我的问题可能相当简单 但我找不到有关该主题的任何文档 我如何重定向到404 not found or a 500 execption如
  • 无法使用 Git 将文件重置为特定提交

    我有一个修改过的文件 我想恢复到最新提交中的任何内容 但它 卡在 那里 总是被标记为已修改 git status On branch master Changed but not updated use git add
  • 如何使用双指针声明 NSString 变量

    我想使用双指针 我试图这样声明 NSString a 但是 Xcode 向我显示错误 指向非常量类型 NSString 没有显式所有权的指针 并且无法编译它 最后我想做这样的事 NSString a NSString b b NSStrin
  • 从映射中添加/删除键值对

    如何在 Elixir 映射中添加 和删除 键值对 这不起作用 map a 1 b 2 c 3 map d 4 添加到地图 Use Map put map key value https hexdocs pm elixir Map html
  • Tensorflow 中每个类别的 F1 分数指标

    我已经实现了以下指标来查看我认为相关的类的精确度和召回率 metrics tf keras metrics Recall class id 1 name Bkwd R tf keras metrics Recall class id 2 n