【问题标题】:Converting array to percentage in Numpy在 Numpy 中将数组转换为百分比
【发布时间】:2019-04-11 05:39:07
【问题描述】:

我微调了一个模型并将预测返回到变量结果中,但我得到了一个浮点数组。如何将其转换为百分比并使用标签打印。以及如何返回前 5 个预测。

result = model.predict(test_image) 



print (result)

[[6.4043561e-05 4.0387777e-06 5.7413094e-05 4.3322724e-01 4.8211630e-05


 3.2328039e-03 5.4211664e-04 5.6212872e-01 6.7689107e-04 1.8414050e-05]]

我的标签存储在类索引中

test_labels = test_batches.classes
test_labels

test_batches.class_indices
{'Name1': 0,
'Name2': 1,
'Name3': 2,
'Name4': 3,
'Name5': 4,
'Name6': 5,
'Name7': 6,
'Name8': 7,
'Name9': 8,
'Name10': 9}

【问题讨论】:

    标签: python pandas numpy keras deep-learning


    【解决方案1】:

    我猜你想要的是将模型的准确性作为正确分类示例的百分比。数组中的值可能是 logits(模型的置信度,即此特定输入示例对应于每个可能的标签。数组中的最大值对应于输入模型中最可能的类(预测)。如果你想计算前 5 个准确度,检查(对于每个输入)数组中的 5 个最大值之一是否对应于正确的标签。如果是这种情况,则将此示例视为正确分类,然后计算正确分类的总数示例,除以示例总数,然后乘以 100 得到您的百分比。

    【讨论】:

    • 是的,但是有什么方法可以让我至少将其四舍五入。
    • 不确定你的意思。你想要舍入什么,为什么?
    • 我无法将科学记数法打印为置信度值,所以有没有办法将这些浮点数转换为百分比。
    • 您的意思是要计算概率吗?然后你需要使用 softmax 函数。
    猜你喜欢
    • 2017-05-26
    • 1970-01-01
    • 1970-01-01
    • 2021-05-27
    • 2017-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-02
    相关资源
    最近更新 更多