keras - CNN多类网络
问题描述
当我希望我的 CNN 多类网络输出[0.1, 0,1]
图像不属于任何类时,我应该采取什么方法。对多类使用 softmax 和 categorical_crossentropy 会给我的输出总和为 1,所以仍然不是我想要的。我是神经网络的新手,很抱歉提出愚蠢的问题,并提前感谢您的帮助。
解决方案
我想你会考虑贝叶斯学习。首先,谈论不确定性。
例如,给定几张狗品种的图片作为训练数据——当用户上传他的狗的照片时——假设的网站应该以相当高的置信度返回预测。但是,如果用户上传了一张猫的照片并要求网站决定狗的品种,会发生什么?
以上是分布测试数据的示例。该模型已经在不同品种的狗的照片上进行了训练,并且(希望)学会了区分它们。但是该模型以前从未见过猫,而猫的照片将位于模型训练的数据分布之外。这个说明性示例可以扩展到更严重的设置,例如诊断系统以前从未观察到的结构的 MRI 扫描,或者从未训练过自动驾驶汽车转向系统的场景。
在这种情况下,模型可能期望的行为是返回一个预测(尝试从我们观察到的数据外推),但返回一个带有附加信息的答案,即该点位于数据分布之外。我们希望我们的模型拥有一些量,通过这些输入传达高度的不确定性(或者,传达低置信度)。
然后,当它们也适用于分类任务并为类(狗,猫......)产生不确定性时,我认为您可以简要阅读本文。从这篇论文中,你可以将你的发现扩展到使用这篇论文的应用程序,我想你会找到你想要的。
推荐阅读
- php - 设置非默认的自动增量:Laravel 不知道更改
- windows - WSL 可以继承 Windows 身份验证凭据吗
- php - 错误:在 kotlin android 中使用 volley 从 php 页面获取数据时出现问题
- image-processing - 如何使用 sklearn 将数据集拆分为训练和测试数据
- python - 使用 exec 函数后如何返回主 python 脚本?
- php - 如何在laravel中上传带有文件的音频?
- laravel - Laravel 和列表的问题
- pandas - 将函数应用于列表的数据框列
- sql-server - 从变量中检索数据库名称
- php - 如何打印类别和子类别限制 3 只设置子类别