- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我不只是获得一个混淆矩阵,还希望能够获得犯下特定类型错误的实例的索引(或数组掩码)。因此,例如,我想查看在属于 class-0 时被预测为 class-2 的实例,等等。
我可以使用列表理解轻松获得数组掩码:
import numpy as np
y_true, y_pred = np.array([0, 1, 0, 2, 1, 1]), np.array([0, 0, 0, 2, 1, 2])
np.array([[np.logical_and(y_true==r, y_pred==c) for c in xrange(3)] for r in xrange(3)])
这会产生:
[[[ True False True False False False]
[False False False False False False]
[False False False False False False]]
[[False True False False False False]
[False False False False True False]
[False False False False False True]]
[[False False False False False False]
[False False False False False False]
[False False False True False False]]]
(要获取索引,我可以使用 np.where()
)。上面对应的是混淆矩阵:
[[2 0 0]
[1 1 1]
[0 0 1]]
但是,我想问一下是否有 numpy
-thonic 单行代码来帮助我消除嵌套列表理解?
最佳答案
要将这些花哨的令人困惑的索引解决方案之一添加到组合中,您还可以:
>>> y_true = np.array([0, 1, 0, 2, 1, 1])
>>> y_pred = np.array([0, 0, 0, 2, 1, 2])
>>> out = np.zeros((3, 3, len(y_true)), dtype=np.bool)
>>> out[y_true, y_pred, np.arange(len(y_true))] = True
>>> out
array([[[ True, False, True, False, False, False],
[False, False, False, False, False, False],
[False, False, False, False, False, False]],
[[False, True, False, False, False, False],
[False, False, False, False, True, False],
[False, False, False, False, False, True]],
[[False, False, False, False, False, False],
[False, False, False, False, False, False],
[False, False, False, True, False, False]]], dtype=bool)
您可以获得在最后一个轴上对上述矩阵求和的混淆矩阵,但如果这就是您所追求的,最好直接使用 np.bincount
构建它:
>>> np.bincount(y_pred + 3*y_true, minlength=9).reshape(3,3)
array([[2, 0, 0],
[1, 1, 1],
[0, 0, 1]], dtype=int64)
SciPy 的 sparse_coo
矩阵将重复索引相加,因此以下内容也有效:
>>> sps.coo_matrix((np.ones_like(y_true, dtype=np.intp),
--- (y_true, y_pred)), shape=(3, 3)).A
array([[2, 0, 0],
[1, 1, 1],
[0, 0, 1]], dtype=int64)
关于python - 在numpy的混淆矩阵中获取与每种错误类型实例对应的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21153865/
我想检查我的应用程序或系统中是否存在库。在 Java 中,我通常执行 System.loadlibrary,但是有谁知道 C 中类似的相应调用吗? 最佳答案 是dlopen打开一个库,dlsym 从加
我在 typescript 中输入以下内容 export type Excludable = T & { isExcluded?: boolean } 其中过滤值: export type Filte
我最近在我的应用程序中添加了一种方法,可以自动格式化 TextView ,从“50000”到“50,000”,效果绝对完美。现在我遇到的问题是,在我的应用程序中,有多个按钮功能可以从该 TextVie
SELECT * FROM conversations WHERE chatMembers LIKE '%1%'AND chatMembers LIKE '%10%' 对话表 id | chatMem
我正在编写一个需要将 Java Date() 值保存到 MySQL 数据库的 RESTful Web 服务,但是,我不确定 MySQL 中可以保存 Java Date() 的数据类型是什么,或者我是否
同样,在任何 Red Hat 或 JBoss 站点上都没有关于此的信息,所以我在这里问... 我不确定是 13 还是 14。 最佳答案 Mapping the Community versions w
同样,在任何 Red Hat 或 JBoss 站点上都没有关于此的信息,所以我在这里问... 我不确定是 13 还是 14。 最佳答案 Mapping the Community versions w
我曾尝试使用 swift 开发一款利用 iPhone 的 3D 触摸硬件的游戏。然而,当我将我的应用程序提交到 App Store 时,它被拒绝了,因为该游戏无法在 iPad 上玩。 我的问题是,
Qt 的有序关联容器对应项 std::map是QMap , std::set是QSet , 对于无序关联容器 std::unordered_map是QHash . 我应该用什么来代替std::unor
JavaScript 方法 String.fromCharCode() 在以下意义上与 Python 的 unichar() 等效: print unichr(213) # prints Õ on t
正如谷歌在 "Discontinuing support for JSON-RPC and Global HTTP Batch Endpoints" 中提到的那样,Google API 客户端库已重新
我正在使用 MapLayer 和 MapOverlay 在 map 中创建自己的路径/折线,GPS 捕获的所有点都存储在一个结构中,以便我可以访问它们。随时。 现在,我希望路径在用户操作 map (缩
我们使用 Adobe Flash Builder 创建由 Flex 提供支持的交互式 Web 应用程序。现在我们正在寻找替代方案,让我们在 UI 设计和迎合 HTML5 的编码方面拥有同样的开发便
我想知道Android/Java 中类似C#/C++ 中的GetTickCount 方法的相应方法吗? 最佳答案 Android 为 SystemClock.uptimeMillis() .请注意,u
我用 Vue + Phaser 开始了新项目,但是当我尝试加载 Assets 时,this.game.load.image 中的“load”和“add”返回“undefined”。我尝试从 JS 文件
我是一名优秀的程序员,十分优秀!