版本:
TensorFlow: 1.6.0
TensorBoard: 1.6.0
我正在做和熟悉的事情:
Estimator tf.estimator.DNNClassifier来训练具有largely skewed dataset(即不平衡数据集)的二进制分类模型。Precision-Recall曲线来选择一个最优模型,而不是AUC曲线。tf.estimator.DNNClassifier(当然,我确实更改了这三个参数:hidden_units、feature_columns、model_dir)。Step 4,每次我选择一个功能,我得到一个新的培训结果和一个关于auc_precision_recall曲线的新照片来自TensorBoard。也就是说,当我选择FEATURE_A时,我选择了figure A,选择了FEATURE_B,选择了figure B,选择了FEATURE_C,选择了figure C。
图片如下:
图A,图B,图Cauc_precision_recall曲线图的描述:x轴:指示训练步骤。y轴:范围从0到1(这就是我想知道的:y是什么意思?)
Precision-Recall的标准站点曲线(我把它粘贴在这里,只是为了便于我们讨论我的问题)。
标准查准率曲线Precision-Recall曲线的描述:x轴:召回,范围从0到1。y轴:精度,范围从0到1。
我的问题:
y轴在TensorBoard auc_precision_recall曲线中的值的含义是什么?auc_precision_recall曲线和标准Precision-Recall曲线之间有什么关系?y轴在TensorBoard auc_precision_recall曲线中的值如此奇怪?figure A中,第一点是(x, y) = (1, 0.5009),为什么y甚至在1st Step中也是0.5009?还有为什么大多数其他值都保持在0.5(从figure A中我们可以很容易地读到这一点)?figure B中,第一点是(x, y) = (7, 0.4625),为什么y(0.4625)值不等于接近0的值,即使在figure C显示的前几个训练步骤中也是如此?
发布于 2018-05-21 01:49:52
我得到了答案:这是tensorflow版本1.6.0中的一个错误,它是由错误的way(trapezoidal)计算AUC_PR值而引起的,并且在此承诺最新版本1.8.0中修复了这个错误。因此,如果您正在训练一个大幅度倾斜的数据集,请记住将tensorflow更新为最新版本1.8.0。
发布于 2018-10-30 19:43:58
回答问题1和2. AUC是指曲线下的面积。因此,您正在查看精确召回(PR)曲线下的区域。Y轴给你这个面积,在0到1之间,因为这些是在PR曲线上可以达到的最小和最大区域。
https://stackoverflow.com/questions/50015761
复制相似问题