根据精度、召回率、f1 分数计算准确度 - scikit-learn

2023-12-27

我犯了一个巨大的错误。我将 scikit-learn svm 准确度的输出打印为:

str(metrics.classification_report(trainExpected, trainPredict, digits=6))

现在我需要根据以下输出计算准确性:

              precision    recall  f1-score   support

1             0.000000  0.000000  0.000000      1259
2             0.500397  1.000000  0.667019      1261
avg / total   0.250397  0.500397  0.333774      2520

是否可以根据这些值计算准确性?

PS:我不想再花一天时间来获取模型的输出。我刚刚意识到这个错误,希望我不需要从头开始。


您可以根据精度、召回率和真/假阳性数量或案例支持来计算准确性(即使由于分子或分母为 0,精度或召回率为 0)。

TruePositive+FalseNegative=Support_True
TrueNegative+FalsePositive=Support_False
Precision=TruePositive/(TruePositive+FalsePositive) if TruePositive+FalsePositive!=0 else 0
Recall=TruePositive/(TruePositive+FalseNegative) if TruePositive+FalseNegative!=0 else 0
Accuracy=(TruePositive+TrueNegative)/(TruePositive+TrueNegative+FalsePositive+FalseNegative)

-或者- 例如,给定 TruePositive/TrueNegative 计数:

TPP=TruePositive/Precision=TruePositive+FalsePositive if Precision!=0 and TruePositive!=0 else TPP=0
TPR=TruePositive/Recall=TruePositive+FalseNegative if Recall!=0 and TruePositive!=0 else TPR=0

在上面,当 TruePositive==0 时,如果没有有关 FalseNegative/FalsePositive 的更多信息,则无法进行计算。因此支持效果更好。

Accuracy=(TruePositive+TrueNegative)/(TPP+TPR-TruePositive+TrueNegative)

但在你的情况下,给出的是支持,所以我们使用召回:

Recall=TruePositive/Support_True if Support_True!=0 else 0
TruePositive=Recall*Support_True, likewise TrueNegative=Recall_False*Support_False in all cases
Accuracy=(Recall*Support_True+Recall_False*Support_False)/(Support_True + Support_False)

在你的情况下(0*1259+1*1261)/(1259+1261)=0.500397当只预测一类时,这正是您所期望的。在这种情况下,相应的精度分数即为准确度。

正如另一位海报所说,最好使用图书馆。但由于这听起来也可能是一个数学问题,因此可以使用它。

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

根据精度、召回率、f1 分数计算准确度 - scikit-learn 的相关文章

随机推荐

  • mergeChangesFromContextDidSaveNotification 后的 KVO 通知

    我正在使用 KVO 来观察 NSManagedObject 上的变化 我正在观察的 NSManagedObject 是主队列上的 NSManagedObject 上下文的一部分 当我更新这个对象时背景 私有队列并发类型 上下文 然后将保存的
  • 是否可以通过 UWP 之外的 C# 访问 Windows ML 学习模型?

    我有一个 ONNX 模型 希望评估来自 C Windows 服务 非 UWP 的图像 除了构建 UWP 应用程序之外 我看不到任何从 C 访问 Windows ML 框架的方法 对吗 I found this https github co
  • 使用 Monte Carlo 与 scipy.integrate.nquad 的不同积分结果

    下面的 MWE 显示了集成相同 2D 核密度估计的两种方法 该估计是为这个数据 http pastebin com NtQH0yXb使用stats gaussian kde 功能 集成针对所有 x y 低于阈值点 x1 y1 它定义了积分上
  • 异构地图

    我需要一个可以包含任意值的映射 只要它们的类型属于相同的类型类 我的第一个天真的方法是这样的 type HMap forall a MyClass a gt M Map Int a 但它似乎不起作用 以下代码给出了编译错误 testFunc
  • 在 Eclipse 中设置 JVM 参数的正确方法是什么

    我正在使用 eclipse 4 2 执行 junit 测试 测试使用了大量内存 所以我想做的是扩大分配给jvm的内存 我想知道在 eclipse ini 文件中设置堆内存参数和运行配置之间是否有区别 注意eclipse启动的Java进程的内
  • 使用 HTTP 基本身份验证时注销用户

    我希望用户能够通过 HTTP Basic 身份验证模式登录 问题是我还希望他们能够再次注销 奇怪的是浏览器似乎不支持这一点 这被认为是一种社交黑客风险 用户将其计算机解锁并打开浏览器 其他人可以轻松地以他们的身份访问该网站 请注意 仅关闭浏
  • 使用 PHP 会话与我的 Android 应用程序登录

    我正在尝试为我的 android 应用程序制作一个登录脚本 该脚本会将我的电子邮件和密码发送到 PHP 服务器 验证登录 然后创建一个 PHP 会话 以便用户保持登录状态 这是我的代码 HttpPost httppost new HttpP
  • 加载数据本地INFILE php mysql

    我收到错误 7890 Can t find file C UsersAdminDesktopBL postcodes csv zip 这是脚本 LOAD DATA LOCAL INFILE C Users Admin Desktop BL
  • Django prefetch_通过关系与m2m相关

    我有以下型号 class Film models Model crew models ManyToManyField Person through Role blank True class Role models Model person
  • 如何从 Spring RestTemplate 中的对象获取列表

    如何从对象中获取列表 您可以在下面找到我的代码 ResponseEntity responseEntity restTemplate getForEntity localhost 8083 connectors Object class O
  • 进程已完成,退出代码 -1073740791 (0xC0000409) pycharm 错误

    我正在尝试使用fastText与 PyCharm 每当我运行下面的代码时 import fastText model fastText train unsupervised data parsed txt model save model
  • 不存在带 CFbundleidentifier 的软件

    我正在尝试发送我的应用程序 自定义键盘 进行提交并捕获此错误 我为项目 com michilly SakhaKeyboard 和扩展 com michilly SakhaKeyboard Keyboard 创建了配置文件 确保以下两个值匹配
  • 如何在闪亮的 eventReactive 处理程序中侦听包含isolate() 的多个事件

    就像之前的问题一样 如何在 Shiny eventReactive 处理程序中侦听多个事件表达式 https stackoverflow com questions 34731975 how to listen for more than
  • 导入 CSV 以仅更新表中的一列

    我有一个看起来像这样的表 products id product sku department quantity 该表中大约有 800 000 个条目 我收到了一个新的 CSV 文件 其中更新了每种产品的所有数量 例如 productA 1
  • ASP.NET MVC 5 模型绑定编辑视图

    我无法想出一个最好的口头描述和少量代码的问题解决方案 我正在使用 VS 2013 MVC 5 和 EF6 代码优先 我还使用 MvcControllerWithContext 脚手架 它生成支持 CRUD 操作的控制器和视图 简而言之 我有
  • Android 为来自网络视图的视频启动媒体播放器?

    我有一个 webview 如果用户单击链接 它会在同一个 webview 中打开 我用 shouldOverrideUrlLoading 控制它 但如果它是视频链接 mp4 3gp 它不会启动媒体播放器来重现视频 就像在普通浏览器应用程序中
  • jQuery 手动调整大小的 DIV

    我正在尝试创建一个可调整大小的 div 而不使用 jQuery 的界面库 var myY 0 var mouseDown false var originalHeight 0 function resize e if mouseDown t
  • 为什么这段 F# 代码这么慢?

    C 和 F 中的 Levenshtein 实现 对于两个大约 1500 个字符的字符串 C 版本的速度提高了 10 倍 C 69 毫秒 F 867 毫秒 为什么 据我所知 他们做的是完全相同的事情 无论是发布版本还是调试版本都没有关系 编辑
  • Chrome 中不会显示超过 999 行

    由于某种原因 在 Chrome 中 一旦打印了 999 行 元素就开始相互重叠 它在 Firefox 中运行良好 我使用的 Chrome 版本是70 0 3538 102 Official Build 64 bit 今天早些时候刚刚发布 页
  • 根据精度、召回率、f1 分数计算准确度 - scikit-learn

    我犯了一个巨大的错误 我将 scikit learn svm 准确度的输出打印为 str metrics classification report trainExpected trainPredict digits 6 现在我需要根据以下