发新帖

向诸位朋友请教 auc_precision_recall 相关的问题

[复制链接]
910 5

快来加入 TensorFlowers 大家庭!

您需要 登录 才可以下载或查看,没有帐号?加入社区

x
诸位朋友们大家好,这是一位网友在 Telegram 上的提问,但是我还没有办法为他解答,不知道大家能否指导和解答一下?
does any one have experience on training binary classifier with skewed dataset?
what's the relationship between tensorflow auc_precision_recall plot and a standard precision-recall plot?
photo_2018-04-24_09-26-09.jpg
let's say a tensorflow auc_precision_recall like this.
does the highest value is the optimal one?

感谢大家!
M丶Sulayman已获得悬赏 10 金币+5 金币

最佳答案

这是受试者曲线的一个方面的反映,即recall是将正样本中的样本预测为对时所占比例,越高,只能说明模型对正样本预测精准度提高,而并非模型整体精度提高。这是相对而言的,我在做信贷风险预测的模型,所以我的重点关 ...
本楼点评(0) 收起

精彩评论5

M丶Sulayman  TF豆豆  发表于 2018-4-24 17:36:27 | 显示全部楼层
这是受试者曲线的一个方面的反映,即recall是将正样本中的样本预测为对时所占比例,越高,只能说明模型对正样本预测精准度提高,而并非模型整体精度提高。这是相对而言的,我在做信贷风险预测的模型,所以我的重点关注只在如何提升将违约样本的预测精准度提高。所以这曲线只能反映一方面的精准度,也许提升的过程中牺牲了负样本预测精准度。说的有点啰嗦,希望对你有用。
本楼点评(0) 收起
dong  TF豆豆  发表于 2018-4-24 20:40:42 | 显示全部楼层
M丶Sulayman 发表于 2018-4-24 17:36
这是受试者曲线的一个方面的反映,即recall是将正样本中的样本预测为对时所占比例,越高,只能说明模型对正 ...

非常感谢你的解答!
本楼点评(0) 收起
rz828  TF荚荚  发表于 2018-4-24 21:20:39 来自手机  | 显示全部楼层
M丶Sulayman 发表于 2018-4-24 17:36
这是受试者曲线的一个方面的反映,即recall是将正样本中的样本预测为对时所占比例,越高,只能说明模型对正 ...

我知道这是同样的数据的不同表现形式,即同样的数据我们可以画出一个AUC曲线图,也可以画出一个precision recall的曲线图。
这个问题里面的图片是来自tensorboard的一个曲线图,这个图片的y轴值是0~1的区间,而x轴是训练次数。
那么,我的问题是:比如当训练次数x为300k的时候,所对应的一个y值假如为0.02,那么怎么理解这个y值0.02?这个0.02和一个标准precision recall曲线图(标准precision recall曲线图中:y轴为0~1的precision值,x轴为0~1的recall值)中的值有关系吗?如果有关系,那么是和标准precision recall曲线图的y轴值意义相同(即此0.02为precision值)?还是和标准precision recall曲线图x轴意义相同(即此0.02为recall值)?
本楼点评(0) 收起
M丶Sulayman  TF豆豆  发表于 2018-4-25 09:50:15 | 显示全部楼层
rz828 发表于 2018-4-24 21:20
我知道这是同样的数据的不同表现形式,即同样的数据我们可以画出一个AUC曲线图,也可以画出一个precision ...

赞一个,这个问题不错,我昨天也在考虑,这个Y轴所代表的含义是否直接对应于我们所说的混淆矩阵相关计算公式所得的recall还是什么。因为跑出来的数值实在有点低啊,我都怀疑这Y轴是不是代表的1- recall或者损失什么的,我还没用过TF的AUC的相关计算。
本楼点评(1) 收起
  • rz828按道理说,这个tensorboard的auc_precision_recall曲线图上的任意一点(x,y)=(1, 0.5009)的意义应该是:在训练step=1时所得到的 标准Precision-Recall曲线图的面积值,即大家所说的PR-AUC。但是我有点不能理解的是:为什么在训练step为1的时候,我就能得到一个0.5的值,这个值我觉得太大了。我已经把这个问题发在stackoverflow上去了,你也可以去看看我关于这个问题更详细的说明,下面是链接:https://stackoverflow.com/questions/50015761/how-to-understand-auc-precision-recall-curve-in-tensorboard
    2018-4-26 11:13 回复
yunhai_luo  TF豆豆  发表于 2018-4-25 17:02:50 | 显示全部楼层
rz828 发表于 2018-4-24 21:20
我知道这是同样的数据的不同表现形式,即同样的数据我们可以画出一个AUC曲线图,也可以画出一个precision ...

一条precision recall的曲线对应的是一个模型,曲线上的点对应同一模型应用不同阀值,而这样一条曲线给出一个AUC值,这个值是评价模型好坏的参考之一。在模型训练过程中,每一次训练都给出了一个备选的模型,而这样的一个模型就对应了一条PR曲线和一个AUC_PR值。再以训练次数为x轴,就画出了楼主tensorboard中的曲线。这个图中的一个y值对应的是相应x训练步骤时那个模型的好坏,它与PR曲线中数值的关系在于它是对那个模型的PR曲线的一种”总结“,而整条tensorboard曲线反映了随着训练进程,模型好坏的变化(再强调一下,只是评价模型好坏的参考之一)。说到”理解“、”含义“,据我所知,AUC_PR值似乎没有特别直观的类似AUC_ROC那样的概率解释,我所说的或者是能说的只是一种定性的理解。
本楼点评(1) 收起
  • rz828非常感觉你的说明!我最开始就是这么理解的,但是让我对这个理解产生怀疑的原因是我的训练结果真的很奇怪。关于我的疑问的更详细内容我已经发到stackoverflow上去了,链接:https://stackoverflow.com/questions/50015761/how-to-understand-auc-precision-recall-curve-in-tensorboard  我的疑问是:1. https://i.stack.imgur.com/j6QMN.jpg 这种曲线图怎么理解(就是我在stackoverflow上所说的figure A)?2. https://i.stack.imgur.com/CfTaT.jpg  这个曲线图又应该怎么理解(这个就是figure B)?
    2018-4-26 11:23 回复
您需要登录后才可以回帖 登录 | 加入社区

本版积分规则

主题

帖子

70

积分
快速回复 返回顶部 返回列表