首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >图像数据分析器的.classes方法排序了吗?

图像数据分析器的.classes方法排序了吗?
EN

Stack Overflow用户
提问于 2022-11-08 22:31:07
回答 1查看 22关注 0票数 1

任何人都知道,如果我做得对,基本上我正在尝试创建一个CM,我已经得到了我的y_pred,显然我需要我的基本真理,或者这是我试图使用的testdata.classes (这就是他们在网上所做的,testdata是imagedatagenerator的一个实例),但是.classes似乎只是返回了我所有类的排序列表,而不是一个会腐蚀我预测的类的列表。因此,我认为我得到了一个非常不准确的CM。你知道我怎样才能得到我预测的真相吗?

这里是一个例子,我指的是ab,.classes,这个列表是按0到15的顺序排列的。我的模型是95%的准确率,所以我希望这些能更好地排列。

我希望y_pred和dataset.classes在95%的时间里是一样的

EN

回答 1

Stack Overflow用户

发布于 2022-11-12 09:04:55

这是一个常见的问题。

generator.classes不应该被用作基本的真理标签,因为它们的排序方式与你得到预测的方式不同。所以你计算的任何度量都是错误的。

一种通用而正确的方法是在生成器上迭代,假设它是Sequence的子类。

代码语言:javascript
运行
复制
all_y_pred = []
all_y_true = []

for i in range(len(generator)):
    x, y = generator[i]
    y_pred = model.predict(x)
    
    all_y_pred.append(y_pred)
    all_y_true.append(y)

all_y_pred = np.concatenate(all_y_pred, axis=0)
all_y_true = np.concatenate(all_y_true, axis=0)

metric = compute_your_metric(all_y_true, all_y_pred)

正如您所看到的,您需要在生成器上迭代,按批计算预测,在每个批处理上,您也可以访问真正的标签,因此您可以在某些列表中累积这两个标记,然后将它们组合起来以计算您想要的度量。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74367878

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档