首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Python中计算TAR (%) @ FAR = 0.1%?

如何在Python中计算TAR (%) @ FAR = 0.1%?
EN

Stack Overflow用户
提问于 2022-03-10 07:25:22
回答 1查看 342关注 0票数 0

我当时正在读一篇论文,论文的结果如下:

我想为我的模特准备一张类似的桌子。使用下面的代码,我得到了远距离和TAR值。

代码语言:javascript
运行
复制
from sklearn import metrics

test = [0, 0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0 ,0 ,0 ,0 ,0 ,1 ,0 ,0 ,0 ,1, 0]        
pred = [0.04172871, 0.01611879, 0.01073375, 0.03344169 ,0.04172871, 0.04172871, 0.00430162 ,0.04172871 ,0.04172871 ,0.04172871 ,0.07977659, 0.905772,0.9396076,  0.03344169, 0.04172871, 0.09125287, 0.02964183, 0.0641269,0.04172871 ,0.04172871, 0.04172871, 0.0641269 , 0.04172871, 0.04172871,0.9919831 , 0.04172871, 0.01611879 ,0.04172871, 0.37865442 ,0.00240888]
far, tar, thresholds = metrics.roc_curve(Y_test,p)

如何修正FAR = 0.1%,如何使用Python计算TAR% @FAR = 0.1%?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-03-14 13:16:51

如果您熟悉ROC曲线,您就知道该曲线本身不会为您的模型提供任何特定的TRP (True Positive Rate)FPR (False positive Rate)值。它只跟踪TPR相对于FPR的发展,因为您在模型产生的分布上移动了一些阈值。

因此,如果您想计算TPRFPR=0.1%,您有两个选择:

您的值FPR = 0.1%far中,您只需检索它的索引,就可以在相同的位置获得相应的TRPtar

或者,在far中没有确切的值far,在这种情况下,您可以在值0.1%下面和上面得到相应的元组(far, tar),并执行线性插值来计算确切的值。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71420229

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档