AUC计算的函数:
tf.metrics.auc(
labels,
predictions,
weights=None,
num_thresholds=200,
metrics_collections=None,
updates_collections=None,
curve='ROC',
name=None,
summation_method='trapezoidal'
)
函数返回值:
-
auc: A scalar Tensor representing the current area-under-curve.
-
update_op: An operation that increments the true_positives, true_negatives, false_positives and false_negatives variables appropriately and whose value matches auc.
最简单的使用方法是直接传两个参数labels和predictions,也就是样本的标签和预测的概率,会得到返回的auc的值,num_thresholds的值默认为200,而越大auc的值会越精确,一直到你的样本数量为止,之后再增大不会改变,所以样本数大于200需要对num_thresholds进行传参。
需要注意的事项是:
1、调用该函数之前必须进行局部参数初始化。
sess.run(tf.local_variables_initializer()) 或 sess.run(tf.initialize_local_variables())
这里只sess.run(tf.global_variables