TensorFlow如何计算混淆矩阵

2018-09-14 16:08 更新

tf.confusion_matrix

confusion_matrix(
    labels,
    predictions,
    num_classes=None,
    dtype=tf.int32,
    name=None,
    weights=None
)

定义在:tensorflow/python/ops/confusion_matrix.py.

从预测和标签计算混淆矩阵.

计算一对预测和标签的 1维 int 数组的混淆矩阵.

矩阵的列表示预测标签,行表示实际标签.混淆矩阵总是形状 [n, n] 的一个二维数组,其中 n 是给定分类任务的有效标签的数量.预测和标签都必须是相同形状的 1维数组,以使此函数正常工作.

如果 num_classes 为 None,则 num_classes 将被设置为一个加上预测值或标签中的最大值.类标签预计从0开始.例如, 如果 num_classes 是三个,那么可能的标签将是 [0, 1, 2].
如果权重不是 None,则每个预测都会对混淆矩阵单元的总值做出相应的权重.

例如:

tf.contrib.metrics.confusion_matrix([1, 2, 4], [2, 2, 4]) ==>
    [[0 0 0 0 0]
     [0 0 1 0 0]
     [0 0 1 0 0]
     [0 0 0 0 0]
     [0 0 0 0 1]]
请注意,可能的标签被假设为[0, 1, 2, 3, 4] ,从而导致 5x5 混淆矩阵.

ARGS:

  • labels:用于分类任务的实际标签的 1维张量 .
  • predictions:给定分类的 1维预测的张量.
  • num_classes:分类任务可能具有的标签数量.如果未提供此值,则将使用预测和标签数组计算它.
  • dtype:混淆矩阵的数据类型.
  • name:作用域名称.
  • weights:一个形状匹配预测的可选张量.

返回:

表示混淆矩阵的 k X k 矩阵, 其中 k 是分类任务中可能的标签数.

注意:

  • ValueError:如果预测和标签都不是1维向量, 且形状不匹配, 或者权重不是 None, 并且其形状与预测不匹配.


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy